情報が古くなっいます。 pdfsizeoptに従ってインストールしてください。sam2pなども含まれています。 ただしあまり圧縮できませんでした。
macOSの場合はQuartzフィルタを利用した方が良いです。
pdfsizeoptでPDFの圧縮を試みる。
jbig2enc, sam2pをMacPortsからインストール。
pngoutとMultivalent.jarはオープンソースではない。pngoutはバイナリを~/local/binに置く。Multvalent.jarのToolsは現在のバージョンには含まれないので、pdfsizeoptのページからダウンロードして、~/Library/Java/Extensionsに置く。デフォルトでCLASSPATHに含まれるが、環境変数に含まれないのでpdfsizeopt.pyからは分らない。
pdfsizeoptをチェックアウト。pythonの在処を書き換えたpdfsizeopt.pyを~/local/libexecに置く。引数とCLASSPATHを渡し、大量の中間ファイルを取り除くために、pdfsizeopt.pyを下記のスクリプトから呼び出す。
サイズは確かに小さくなるが、処理に結構時間がかかる。途中で落ちてしまうこともある。pdftkでつなげた場合はうまくいった。
#!/bin/sh PDFSIZEOPT=${HOME}/local/libexec/pdfsizeopt.py OPTS="--use-pngout=true --use-jbig2=true --use-multivalent=true" MULTIVALENT=${HOME}/Library/Java/Extensions/Multivalent.jar if [ $# -lt 1 ]; then echo "usage :: $0 input.pdf" exit fi INPUT=$1 TMPDIR=`mktemp -d /tmp/pdfsizeopt.XXXXXX` cp ${INPUT} ${TMPDIR} cd ${TMPDIR} CLASSPATH=${MULTIVALENT} ${PDFSIZEOPT} ${OPTS} ${INPUT} mv ${INPUT%pdf}psom.pdf ${OLDPWD} rm -rf ${TMPDIR}