[tor-commits] [flashproxy/master] Changes to badge exports.

dcf at torproject.org dcf at torproject.org
Sun Jun 9 19:12:09 UTC 2013


commit 02fd753587926fc84b627719f9b654ac5d811e4d
Author: Arlo Breault <arlolra at gmail.com>
Date:   Sat May 4 22:36:47 2013 -0700

    Changes to badge exports.
---
 proxy/Makefile              |   18 +++++-------------
 proxy/badge-export-lang.scm |   21 +++++++++++++++++++++
 proxy/export_badges.scm     |   27 ---------------------------
 3 files changed, 26 insertions(+), 40 deletions(-)

diff --git a/proxy/Makefile b/proxy/Makefile
index 9fad8e5..8f3c9c7 100644
--- a/proxy/Makefile
+++ b/proxy/Makefile
@@ -1,19 +1,11 @@
-all:
-	:
+LANGS = de en pt ru
+
+all: $(addprefix badge-, $(addsuffix .png, $(LANGS)))
 
 test:
 	./flashproxy-test.js
 
-LANGS = de en ru
-badges: $(addprefix badge-, $(addsuffix .png, $(LANGS))) link
-
-link:
-	ln -s badge-en.png badge.png
-
 badge-%.png: badge.xcf
-	gimp -i -b '$(shell cat export_badges.scm) (eb "$*") (exit)'
-
-clean:
-	rm badge*.png
+	(cat badge-export-lang.scm; echo '(export "$*") (gimp-quit 0)') | gimp -i -b -
 
-.PHONY: all test badges link clean
+.PHONY: all test
diff --git a/proxy/badge-export-lang.scm b/proxy/badge-export-lang.scm
new file mode 100644
index 0000000..51f78f1
--- /dev/null
+++ b/proxy/badge-export-lang.scm
@@ -0,0 +1,21 @@
+; This is a Gimp script-fu script that selects and exports the appropriate
+; language layers from an input XCF containing multiple layers.
+
+(define xcf-filename "badge.xcf")
+
+(define (export lang)
+  (let* ((image (car (gimp-file-load RUN-NONINTERACTIVE xcf-filename xcf-filename)))
+         (shine-layer (car (gimp-image-get-layer-by-name image "shine")))
+         (text-layer (car (gimp-image-get-layer-by-name image (string-append "text-" lang))))
+         (output-filename (string-append "badge-" lang ".png")))
+    ; Turn off all layers.
+    (for-each (lambda (x) (gimp-item-set-visible x FALSE))
+              (vector->list (cadr (gimp-image-get-layers image))))
+    ; Except the shine and the wanted text.
+    (gimp-item-set-visible shine-layer TRUE)
+    (gimp-item-set-visible text-layer TRUE)
+    (gimp-image-merge-visible-layers image CLIP-TO-IMAGE)
+    (file-png-save RUN-NONINTERACTIVE image
+                   (car (gimp-image-get-active-layer image))
+                   output-filename output-filename FALSE 9 FALSE FALSE FALSE FALSE FALSE)
+    ))
diff --git a/proxy/export_badges.scm b/proxy/export_badges.scm
deleted file mode 100644
index 3a2aece..0000000
--- a/proxy/export_badges.scm
+++ /dev/null
@@ -1,27 +0,0 @@
-(define (exit)
-  (gimp-quit 0))
-
-(define file "badge.xcf")
-
-(define (find_layer_by_name image layers name)
-  (define (loop ls)
-    (cond
-      ((null? ls) (error "Could not find layer?"))
-      ((string=? (car (gimp-drawable-get-name (car ls))) name) (car ls))
-      (else (loop (cdr ls)))
-    ))
-  (loop (vector->list layers)))
-
-(define (eb lang)
-  (let* (
-    (image (car (gimp-file-load RUN-NONINTERACTIVE file file)))
-    (layers (cadr (gimp-image-get-layers image)))
-    (layer (find_layer_by_name image layers (string-append "text-" lang)))
-    (filename (string-append "badge-" lang ".png"))
-  )
-  (gimp-drawable-set-visible layer TRUE)
-  (gimp-image-merge-visible-layers image CLIP-TO-IMAGE)
-  (file-png-save RUN-NONINTERACTIVE image
-    (car (gimp-image-get-active-layer image))
-    filename filename FALSE 9 FALSE FALSE FALSE FALSE FALSE)
-  ))
\ No newline at end of file





More information about the tor-commits mailing list