summaryrefslogtreecommitdiff
path: root/scripts/auxiliar
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/auxiliar')
-rwxr-xr-xscripts/auxiliar/make-regtest-pngs.sh74
1 files changed, 61 insertions, 13 deletions
diff --git a/scripts/auxiliar/make-regtest-pngs.sh b/scripts/auxiliar/make-regtest-pngs.sh
index 5942e279da..e770cc2a67 100755
--- a/scripts/auxiliar/make-regtest-pngs.sh
+++ b/scripts/auxiliar/make-regtest-pngs.sh
@@ -14,22 +14,69 @@
#
# -n means build a new regtest set - the PNGs go in the new-regtest-results
# directory
+#
+# -p uses PDF and the poppler library via pdftocairo for generating bitmaps,
+# simulating the output for Evince and other previewers using poppler.
+# pdftocairo may be contained in the poppler-utils package.
+#
+# -r can be used for specifying a rendering resolution. This
+# defaults to 101 for poppler and 300 for Ghostscript from PDF.
+#
+# -g uses Ghostscript for rendering a bitmap version from the PDF,
+# simulating the output from printing PDF files on a GNU system, so
+# use a resolution appropriate for print. Antialiasing is not enabled.
+#
+# -d changes the Ghostscript device used for creating PNG files
+# (usually png16m, but with -g you might prefer fewer colors for size
+# reasons, like png16).
+
+cpu_count=${CPU_COUNT:-1}
+backend_opt='--png ${resolution:+=-dresolution=$resolution} ${gsdevice:+=-dpixmap-format=$gsdevice}'
+resolution=
+gsdevice=
+
+png_generate()
+{
+ :
+}
-cpu_count=1
+while getopts "j:onpr:g" opts; do
+ case $opts in j)
+ cpu_count=$OPTARG;;
+
+ o)
+ file_loc="old-regtest-results";;
-while getopts "j:on" opts; do
- if [ "$opts" = "j" ]; then
- cpu_count=$OPTARG
- fi
+ p)
+ backend_opt="--pdf"
+ png_generate()
+ {
+ for i
+ do pdftocairo -png -r ${resolution:-101} -q "$i" &&
+ rm "$i"
+ done
+ };;
- if [ "$opts" = "o" ]; then
- file_loc="old-regtest-results"
- fi
+ n)
+ file_loc="new-regtest-results"
+ do_compare="y";;
- if [ "$opts" = "n" ]; then
- file_loc="new-regtest-results"
- do_compare="y"
- fi
+ r)
+ resolution=$OPTARG;;
+ g)
+ backend_opt="--pdf"
+ png_generate()
+ {
+ for i
+ do
+ gs -sDEVICE=${gsdevice:-png16m} -q -dNOPAUSE \
+ -r${resolution:-300} -dNOPLATFONTS \
+ -dTextAlphaBits=1 -dGraphicsAlphaBits=1 \
+ -sOutputFile="${i%.pdf}-%d.png" "$i" -c quit &&
+ rm "$i"
+ done
+ };;
+ esac
done
if [ -z "$file_loc" ]; then
@@ -41,9 +88,10 @@ rm -rf $LILYPOND_BUILD_DIR/out-png-check/$file_loc
mkdir -p $LILYPOND_BUILD_DIR/out-png-check/$file_loc
cd $LILYPOND_BUILD_DIR/out-png-check/$file_loc
ls $LILYPOND_GIT/input/regression/*.ly > dir.txt
-$LILYPOND_BUILD_DIR/out/bin/lilypond --png --relocate \
+$LILYPOND_BUILD_DIR/out/bin/lilypond $(eval echo $backend_opt) --relocate \
-dinclude-settings=$LILYPOND_GIT/scripts/auxiliar/NoTagline.ly \
-djob-count=$cpu_count -dread-file-list "dir.txt"
+png_generate *.pdf
rm -rf dir.txt
rm -rf *.log