RHEL6 では,
$ lpr a.pdf
や
$ pdftops a.pdf -| lpr
によってPDFを印刷できた.
しかし, RHEL7でこの方法を使うと, 印刷はできるものの, 両面に設定しても, 片面で印刷されてしまう.
どうやら, 出力されるPSの上の方に,
pdfSetupPaper
というマクロがあるのだが, この実装が悪いらしい.
1ページごとにページサイズを設定するのだが, ページサイズが設定されるとプリンタが両面印刷せずに排紙してしまうようだ.
もうすぐパッチが適用されると思うのだが, 待ちきれなかったので, 自分でビルドしてしまった.
対処1: sedでページを設定する pdfSetupPaper
を除去する.
以下のコマンドを pdftops と lpr の間にいれる.
sed -e "s/ pdfSetupPaper/ pop pop/"
Popplerのバグジラで議論されているが, その
パッチを適用する.
他にもいろいろなパッチが出ていたのだが, pdfSetupPaper のパッチだけにした.
$ yumdownloader --source poppler
$ rpm -ivh poppler-0.22.5-6.el7.src.rpm
$ cd ~/rpmbuild/SOURCES/
$ wget -O poppler-pdfSetupPaper.patch https://bugs.freedesktop.org/attachment.cgi?id=91005
$ cd ../SPECS/
$ vim poppler.spec
$ rpmbuild -ba poppler.spec
$ cd ..
$ sudo rpm -Uvh RPM/x86_64/poppler*.rpm
以下にspecファイルの更箇所を示す.
--- poppler-orig.spec 2014-02-15 01:11:43.000000000 +0900
+++ poppler.spec 2015-01-31 00:08:23.569595075 +0900
@@ -1,7 +1,7 @@
Summary: PDF rendering library
Name: poppler
Version: 0.22.5
-Release: 6%{?dist}
+Release: 6%{?dist}a
License: (GPLv2 or GPLv3) and GPLv2+ and LGPLv2+ and MIT
Group: Development/Libraries
URL: http://poppler.freedesktop.org/
@@ -16,6 +16,9 @@
# https://bugzilla.redhat.com/show_bug.cgi?id=1053616
Patch2: poppler-0.22.5-rotated-words-selection.patch
+# https://bugs.freedesktop.org/attachment.cgi?id=91005
+Patch3: poppler-pdfSetupPaper.patch
+
Requires: poppler-data >= 0.4.0
BuildRequires: automake libtool
BuildRequires: gettext-devel
@@ -134,6 +137,7 @@
%patch0 -p1 -b .CVE-2013-4473
%patch1 -p1 -b .CVE-2013-4474
%patch2 -p1 -b .rotated-word-selection
+%patch3 -p1 -b .duplex
iconv -f iso-8859-1 -t utf-8 < "utils/pdftohtml.1" > "utils/pdftohtml.1.utf8"
mv "utils/pdftohtml.1.utf8" "utils/pdftohtml.1"
@@ -256,3 +260,6 @@
%changelog
+* Thu Jan 1 2015 My Name - 0.22.5-6a
+- pdfSetupPaper macro modified
+
0 件のコメント:
コメントを投稿