]> git.donarmstrong.com Git - lilypond.git/commitdiff
Issue 5126: Prevent Ghostscript's unwanted automatic page rotation
authorMasamichi Hosoda <trueroad@trueroad.jp>
Thu, 27 Apr 2017 12:18:41 +0000 (21:18 +0900)
committerMasamichi Hosoda <trueroad@trueroad.jp>
Fri, 5 May 2017 09:19:53 +0000 (18:19 +0900)
Ghostscript is "too clever" to rotate pages automatically
with "majority decision".
This behavior can cause unwanted page rotation.

This commit prevents such behavior
by adding option `-dAutoRotatePages=/None` to Ghostscript.

Documentation/pictures/GNUmakefile
make/lilypond-book-rules.make
scm/backend-library.scm
scm/ps-to-png.scm
scripts/auxiliar/make-regtest-pngs.sh
scripts/build/output-distance.py
stepmake/stepmake/tex-rules.make
stepmake/stepmake/texinfo-rules.make

index ef72775059496ad1b6ba8e6e4fbb9deacc199dce..8ae3e463bbe15e7aed5486ded25c7e5a2b2209bf 100644 (file)
@@ -38,7 +38,7 @@ $(outdir)/%.jpg: %.jpg
        ln -f $< $@
 
 $(outdir)/%.png: %.eps
-       gs -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -q -sOutputFile=$@ -sDEVICE=png16m -dEPSCrop -dNOPAUSE -f $< -c quit
+       gs -dAutoRotatePages=/None -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -q -sOutputFile=$@ -sDEVICE=png16m -dEPSCrop -dNOPAUSE -f $< -c quit
 
 $(outdir)/%.pdf: %.eps
        gs -dAutoRotatePages=/None -q -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -sOutputFile=$@ -dEPSCrop -c .setpdfwrite -f $<
index e0c0756bc403af37cb02b5a4f339c72d6ee5ed4a..243a9f18c789f25167589ca2fc72a9667932d5eb 100644 (file)
@@ -29,7 +29,7 @@ $(outdir)/%.pdf:  $(outdir)/%.tex
        cd $(outdir) && $(buildscript-dir)/run-and-check "$(PDFLATEX) -halt-on-error $(notdir $<)" "$*.pdflatex.log"
 ifeq ($(USE_EXTRACTPDFMARK),yes)
        $(EXTRACTPDFMARK) -o $(outdir)/$*.pdfmark $@
-       $(GS920) -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=$(outdir)/$*.final.pdf -c "30000000 setvmthreshold" -f $(top-build-dir)/out-fonts/*.font.ps $(outdir)/$*.pdfmark $@
+       $(GS920) -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -dAutoRotatePages=/None -sOutputFile=$(outdir)/$*.final.pdf -c "30000000 setvmthreshold" -f $(top-build-dir)/out-fonts/*.font.ps $(outdir)/$*.pdfmark $@
        rm $@
        mv $(outdir)/$*.final.pdf $@
 endif
@@ -61,7 +61,7 @@ $(outdir)/%.pdf:  $(outdir)/%.xml
        cd $(outdir) && $(buildscript-dir)/run-and-check "$(DBLATEX) $(DBLATEX_BACKEND) $(notdir $<)" "$*.dblatex.log"
 ifeq ($(USE_EXTRACTPDFMARK),yes)
        $(EXTRACTPDFMARK) -o $(outdir)/$*.pdfmark $@
-       $(GS920) -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=$(outdir)/$*.final.pdf -c "30000000 setvmthreshold" -f $(top-build-dir)/out-fonts/*.font.ps $(outdir)/$*.pdfmark $@
+       $(GS920) -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -dAutoRotatePages=/None -sOutputFile=$(outdir)/$*.final.pdf -c "30000000 setvmthreshold" -f $(top-build-dir)/out-fonts/*.font.ps $(outdir)/$*.pdfmark $@
        rm $@
        mv $(outdir)/$*.final.pdf $@
 endif
index 240096cad23f45479834688407c875af95993755..8eec32028835b13a9cb9b199850e1e7939540636 100644 (file)
@@ -98,6 +98,7 @@
                    "-r1200"
                    (if (ly:bigpdfs) "-dSubsetFonts=false")
                    "-sDEVICE=pdfwrite"
+                   "-dAutoRotatePages=/None"
                    (string-append "-sOutputFile="
                                   (string-join
                                    (string-split pdf-name #\%)
index f20ca61b41a471c0b7646c9248915fdf1138670f..d0f810fafbdf14370709f69911eb868770b85130 100644 (file)
                     "-dNOPAUSE"
                     "-dBATCH"
                     (ly:format "-sDEVICE=~a" pixmap-format)
+                    "-dAutoRotatePages=/None"
                     (string-append "-sOutputFile=" output-file)
                     (ly:format "-r~a" (* anti-alias-factor resolution))
                     (string-append "-f" tmp-name))))
index 01610e8ac34d5376155b49abeeeb8735969195d9..d5ee847bc624968edc770e0079b8e632a405ec21 100755 (executable)
@@ -70,6 +70,7 @@ while getopts "j:oncr:gpd:" opts; do
            {
                $1 gs -sDEVICE=${gsdevice:-pngmono} -q -dNOPAUSE \
                    -r${resolution:-300} -dNOPLATFONTS \
+                   -dAutoRotatePages=/None \
                    -dTextAlphaBits=1 -dGraphicsAlphaBits=1 \
                    -sOutputFile="${2%.pdf}-%d.png" "$2" -c quit
            };;
index 49a659b73febd69fff0f79f01b0536b016cf7c1c..625ce12a1e3f1ab70db53797457ddc400e2472a5 100755 (executable)
@@ -642,6 +642,7 @@ class SignatureFileLink (FileLink):
                 cmd = ('gs -sDEVICE=png16m -dGraphicsAlphaBits=4 -dTextAlphaBits=4 '
                        ' %(data_option)s '
                        ' -r101 '
+                       ' -dAutoRotatePages=/None '
                        ' -sOutputFile=%(outfile)s -dNOSAFER -dEPSCrop -q -dNOPAUSE '
                        ' %(infile)s  -c quit ') % locals ()
 
index 6751e5da9a03b292ae95b1535bcdbb0053d99928..5b6e6c04d04c4a43c18708be7f69d193bd930836 100644 (file)
@@ -23,6 +23,7 @@ $(outdir)/%.pdf: $(outdir)/%.dvi
                        -dNOPAUSE\
                        -dBATCH\
                        -sDEVICE=pdfwrite\
+                       -dAutoRotatePages=/None\
                        -sOutputFile=$(@F)\
                        -dCompatibilityLevel=1.2\
                        -sPAPERSIZE=a4\
index 007f88fdad9eb87bab1d4f4e62010c6c428e6584..df04e1ebe33e765c85b7f502bb0852b0a03be6e0 100644 (file)
@@ -74,7 +74,7 @@ else
 endif
 ifeq ($(USE_EXTRACTPDFMARK),yes)
        $(EXTRACTPDFMARK) -o $(outdir)/$*.pdfmark $@
-       $(GS920) -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=$(outdir)/$*.final.pdf -c "30000000 setvmthreshold" -f $(top-build-dir)/out-fonts/*.font.ps $(outdir)/$*.pdfmark $@
+       $(GS920) -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -dAutoRotatePages=/None -sOutputFile=$(outdir)/$*.final.pdf -c "30000000 setvmthreshold" -f $(top-build-dir)/out-fonts/*.font.ps $(outdir)/$*.pdfmark $@
        rm $@
        mv $(outdir)/$*.final.pdf $@
 endif