Poppler は,PDF ドキュメントのレンダリングに利用されるライブラリで,ベースとなった Xpdf 3.0 に比べてレンダリングが向上されています。 ビューアとして Poppler を使用して問題が発生する場合は MuPDF を使用することを検討してください。 以下のプログラムが PDF ビューアとして Poppler を使用しています。
また,Xpdf と同様に PDF ユーティリティとしても有用です。
TeX Live 2017 以降あるいは W32TeX [2017/02/20] 以降をインストールしている場合は poppler utilities が使用できます. 以下のコマンドが利用できます:
pdfdetach, pdffonts, pdfimages, pdfinfo, pdfseparate, pdftocairo, pdftohtml, pdftoppm, pdftops, pdftotext, pdfunite
MSYS2 の pacman でインストールすることもできます。
64-bit Poppler の場合は
pacman -S mingw-w64-x86_64-poppler mingw-w64-x86_64-poppler-data
32-bit Poppler の場合は
pacman -S mingw-w64-i686-poppler mingw-w64-i686-poppler-data
を実行します.
Poppler for Windows から,Poppler のユーティリティのバイナリを入手することもできます。
Homebrew あるいは MacPorts を利用したインストールが可能です。
Homebrew の場合は poppler をインストールします。
$ brew install poppler
MacPorts の場合は poppler と poppler-data という名前の Port をインストールします。
$ sudo port install poppler poppler-data
poppler をインストールすると下記の便利なコマンドが使えます。
$ port contents poppler | grep /bin /opt/local/bin/pdfdetach /opt/local/bin/pdffonts /opt/local/bin/pdfimages /opt/local/bin/pdfinfo /opt/local/bin/pdfseparate /opt/local/bin/pdftocairo /opt/local/bin/pdftohtml /opt/local/bin/pdftoppm /opt/local/bin/pdftops /opt/local/bin/pdftotext /opt/local/bin/pdfunite
なお,Xpdf 関連の Port(具体的には xpdf-tools が該当)がインストールされていると衝突してインストールできなくなります。 Poppler をインストールしたい場合は,xpdf-tools をアンインストールしてください。
sudo pacman -S poppler poppler-data
Linux Mint や Debian GNU/Linux や Ubuntu では poppler ライブラリは libpoppler80 という名前だったり,libpoppler73 という名前だったりします。 poppler-utils をインストールすれば,依存関係で適宜判断されますので,poppler-utils をインストールします。 日本語を使う場合は poppler-data も必要です。
sudo apt install poppler-utils poppler-data
sudo dnf install poppler-utils poppler-data
sudo zypper install poppler poppler-data
MinGW を利用してソースからビルドすることができます。
GLib と pkg-config がインストールされていない場合は
をダウンロードして,展開後 bin フォルダーにある
- gspawn-win32-helper.exe
- gspawn-win32-helper-console.exe
- libgio-2.0-0.dll
- libglib-2.0-0.dll
- libgmodule-2.0-0.dll
- libgobject-2.0-0.dll
- libgthread-2.0-0.dll
- pkg-config.exe
を C:\MinGW\bin にコピーします。
日本語の PDF ファイルを表示できるようにするため,poppler-data を適切な場所に配置します。
poppler-data を C:\MinGW\share にコピーします。
$ mkdir poppler-data $ pushd poppler-data $ powershell -Command "& {Invoke-WebRequest -Uri 'https://cgit.freedesktop.org/poppler/poppler-data/snapshot/master.tar.xz' -OutFile 'master.tar.xz'}" $ tar xvf master.tar.xz $ cp -pR master /mingw/share/poppler $ popd
Poppler は --with-font-configuration=win32 または -DFONT_CONFIGURATION=win32 でビルドすると日本語のフォントが埋め込まれていない PDF ファイルが MS-Mincho で表示されます。 ただし font configuration: win32 の場合 GothicBBB-Medium (ゴシック体) でも Ryumin-Light (明朝体) と同様 MS-Mincho で表示されます。 GothicBBB-Medium (ゴシック体) をきちんと表示したい場合は font configuration: fontconfig でビルドして fontconfig を適切に設定します。 configure の場合は --with-font-configuration=fontconfig で fontconfig を使用できます。 CMake の場合は -DFONT_CONFIGURATION=fontconfig で fontconfig を使用できます。
$ mkdir poppler $ pushd poppler $ powershell -Command "& {Invoke-WebRequest -Uri 'https://cgit.freedesktop.org/poppler/poppler/snapshot/master.tar.xz' -OutFile 'master.tar.xz'}" $ tar xvf master.tar.xz $ pushd master
$ ./autogen.sh $ POPPLER_QT5_CFLAGS="-IC:/Qt/Qt5.11.2/5.11.2/mingw53_32/include" POPPLER_QT5_LIBS="-LC:/Qt/Qt5.11.2/5.11.2/mingw53_32/lib -lQt5Core -lQt5Gui -lQt5Xml -lQt5Widgets -lQt5Test" POPPLER_QT5_TEST_CFLAGS="-IC:/Qt/Qt5.11.2/5.11.2/mingw53_32/include" POPPLER_QT5_TEST_LIBS="-LC:/Qt/Qt5.11.2/5.11.2/mingw53_32/bin" LIBOPENJPEG_CFLAGS="`pkg-config --cflags libopenjp2`" LIBOPENJPEG_LIBS="`pkg-config --libs libopenjp2`" ./configure --prefix=/mingw --with-font-configuration=fontconfig --enable-xpdf-headers --enable-zlib --enable-libcurl --enable-poppler-glib --disable-gtk-test
Building poppler with support for: font configuration: fontconfig splash output: yes cairo output: yes qt4 wrapper: no qt5 wrapper: yes glib wrapper: yes introspection: no cpp wrapper: yes use gtk-doc: no use libjpeg: yes use libpng: yes use libtiff: yes use zlib compress: yes use zlib uncompress: no use nss3: no use curl: yes use libopenjpeg: yes with openjpeg2 use cms: yes with lcms2 command line utils: yes test data dir: Warning: Using zlib is not totally safe
$ make $ make install
$ mkdir build $ pushd build $ cmake .. -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX=/mingw -DFONT_CONFIGURATION=fontconfig -DENABLE_XPDF_HEADERS=ON -DENABLE_ZLIB=ON -DZLIB_LIBRARY=C:/MinGW/bin/zlib1.dll -DENABLE_LIBCURL=ON -DLIBOPENJPEG_INCLUDE_DIR=C:/MinGW/include/openjpeg-2.1 -DLIBOPENJPEG_LIBRARIES=C:/MinGW/bin/libopenjp2.dll
Building Poppler with support for: font configuration: fontconfig splash output: yes cairo output: yes qt4 wrapper: no qt5 wrapper: yes glib wrapper: yes introspection: no cpp wrapper: yes use gtk-doc: not supported with this CMake build system use libjpeg: yes use libpng: yes use libtiff: yes use zlib compress: yes use zlib uncompress: no use nss3: no use curl: yes use libopenjpeg: yes with openjpeg2 use cms: yes with lcms2 command line utils: yes test data dir:
$ make $ make install $ popd
$ popd $ popd $ strings -a /mingw/bin/libpoppler.dll | grep poppler | head ... C:/MinGW/share/poppler ...
Poppler は font configuration で win32 を選択した場合,日本語のフォントを埋め込んでいない PDF ファイルは MS-Mincho で表示されます。 ただし font configuration が win32 の場合 GothicBBB-Medium (ゴシック体) でも Ryumin-Light (明朝体) と同様 MS-Mincho で表示されます。 GothicBBB-Medium (ゴシック体) をきちんと表示したい場合は font configuration を fontconfig でビルドして fontconfig を適切に設定します。