Adobe Acrobat ProでできるようにPDFファイルを切り取るオープンソースのコマンドラインツールを探しています。 PdfTk、ImageMagick、PyPDF、GhostScriptを試しましたが、これまでのところ成功していません。
PDFcrop をご覧になることをお勧めします。
5、10、20、および30 pt(ポイント)の左、上、右、および下マージンでPDFをトリミングする場合は、実行します
pdfcrop --margins '5 10 20 30' input.pdf output.pdf
ターミナル内。実際に何かを切り抜くには、切り抜きの引数に負の値を使用します。例えば、
pdfcrop --margins '-50 -50 -50 -50' input.pdf output.pdf
左、上、右、下から(この順序で)50ポイントをトリミングします。
pdfcrop input
コマンドのみを実行すると、input-crop.pdfというタイトルのファイルがマージンなしで出力されます。これは、ドキュメントにpdfイラストを含めるときに非常に便利です。
複数のファイルの切り取り
残念ながら、pdfcropは一度に複数のファイルをトリミングできません。ただし、スクリプトが置かれているフォルダー内のすべてのPDFをトリミングするスクリプトを作成するのは簡単です。
新しい空のファイルを作成し、something.sh
と呼びます。テキストエディタで開き、次を挿入します。
#!/bin/bash
for FILE in ./*.pdf; do
pdfcrop "${FILE}"
done
保存して閉じます。次に、ファイルを右クリックして、Properties> Permissionsに移動し、フィールドをチェックして、ファイルをプログラムとして実行することを許可します。ここでダイアログを閉じます。スクリプトをダブルクリックして実行し、Run in Terminalを選択します。そして、サフィックス-cropが付いたすべてのPDFの新しい、マージンのないトリミングされたバージョンがフォルダーに印刷されるようになりました。余白やその他のものが必要な場合は、もちろんスクリプトを開いて、pdfcrop
の後に引数を追加できます。
Rasmusのおかげで、texlive-extra-utilsパッケージからpdfcropをインストールできます。
Sudo apt-get install texlive-extra-utils
次に、pdf cropコマンドを使用してPDFファイルを切り取ります。
pdfcrop input.pdf output.pdf
--help
を使用して、--margins
のようなさらにすばらしいパラメーターを表示します。
pdfcrop --margins 5 input.pdf output.pdf
ページの両側から5 bpでPDFを切り取る
また、Ghostscriptを使用してPDFファイルをトリミングすることもできます。プロセスを簡素化するための小さなスクリプトを作成しました( この回答 に触発されました):
#!/bin/bash
if [ $# -lt 5 ]
then
echo "Usage: `basename $0` <pdf-file> <x_min> <x_max> <y_min> <y_max>"
echo "Notes:"
echo " - all coordinates are absolute; no calculation of width/height necessary"
echo " - use 'gv' to determine the coordinates"
exit 65
fi
file="$1"
xmin="$2"
xmax="$3"
ymin="$4"
ymax="$5"
base="${file%.*}"
outfile="${base}_cropped.pdf"
echo "writing to: $outfile"
gs \
-o $outfile \
-sDEVICE=pdfwrite \
-c "[/CropBox [$xmin $ymin $xmax $ymax] /PAGES pdfmark" \
-f $file
トリミングの座標を決定するには、gv
を使用します。これは、Ghostscriptと同じ単位を使用してマウスカーソルの座標を出力します。たとえば、ここでx/yの最小座標(左上隅の値)を決定します。
今最大座標:
そして最後に、スクリプトpdf_crop_by_coordinates.sh test.pdf 45 429 38 419
を実行して、次のようなtest_cropped.pdf
を生成します。
ただし、品質と正確さの点でGhostscriptソリューションがpdfcrop
とどのように比較されるのか、私にはわかりません。
Pdftkで何かできないときは、次の場所は PDFjam です。これは pdfpages LaTeXパッケージのコマンドラインラッパーです(したがって、それも必要です) TeXディストリビューションがインストールされています)。使い方のヘルプについては、通常のヘルプ画面をお勧めします:
pdfjam --help
マニュアルページがまばらであり、Webページが例に集中しているためです。
PDFをトリミングするには、次のようなコマンドが必要です。
pdfjam --keepinfo --trim "10mm 15mm 10mm 15mm" --clip true --suffix "cropped" input.pdf
これにより、input-cropped.pdf
というファイルが出力されます。トリムの順序は、 graphicx からの\includegraphics
に従って、左、下、右、上にする必要があります。
PDFcropと比較する方法のアイデアを与えるために、私は最近非常に派手なPDFをトリミングする理由がありました。私のオリジナルは675 kBで、PDFjamでトリミングしたバージョンは1.2 MBでしたが、PDFcropでトリミングしたバージョンは4.5 MBでした。 PDFjamとPDFcropの両方が埋め込まれたハイパーリンクとブックマークを取り除きましたが、--keepinfo
オプションを使用したPDFjamはドキュメントのプロパティ(タイトル、作成者、件名など)を保持していました。
グラフィカルツールでも問題ない場合は、krop
をお勧めします。 http://arminstraub.com/software/krop
これはあなたを助けるかもしれません。
これは、Ubuntuおよびlifeの新しいバージョンに準拠しています。これは Master PDF Editor です。切り抜きを使用したり、何かを追加したりできます。
このページのpypdfスクリプト を使用できます。しかし、 このstackexchangeの質問 への答えには、同様に多くのオプションがあるようです。
pdfCropMargins プログラムは、PDFファイルのマージンを自動的にトリミングするコマンドラインアプリケーションです。
このプログラムは、Ghostscriptプログラムまたはシステムにインストールされている(および配置可能な)pdftoppmプログラムに依存します。しきい値191を使用して、PILでページ画像を分析し、境界ボックスを見つけます。
使用してインストール
pip install pdfCropMargins
を使用して実行
pdf-crop-margins -v -s -u your-file.pdf
助けて
pdf-crop-margins -h |もっと
Briss はコマンドラインではありませんが、一見の価値があります。