GIMPではPDFをインポートし、Flatten Image
GUIを使用してドロップダウンメニューから選択してPDFをマージできます(複数のレイヤーで作成されている場合)Image
。その後、新しいファイル名を使用してPDFをエクスポートできます。
私はこれを自動化したい。端末を介してこれを行う方法はありますか?
答え1
Google では次の 2 つの方法を見つけました。Re:UNIXコマンドラインでPDFファイルをマージします。。
方法#1 - Imagemagickを使用して変換:$ convert -density 300 orig.pdf flattened.pdf
メモ:この方法は平均品質であると報告されています。
方法#2 - pdf2psを使う - > ps2pdf:$ pdf2ps orig.pdf - | ps2pdf - flattened.pdf
メモ:この方法は画質を維持することが知られています。
答え2
pdf2ps
convert
私にとっては、Ghostscript(gs)がうまくいきます。品質の劣化はほとんどなく、ファイルサイズも小さくなります。
gs -dSAFER -dBATCH -dNOPAUSE -dNOCACHE -sDEVICE=pdfwrite \
-sColorConversionStrategy=/LeaveColorUnchanged \
-dAutoFilterColorImages=true \
-dAutoFilterGrayImages=true \
-dDownsampleMonoImages=true \
-dDownsampleGrayImages=true \
-dDownsampleColorImages=true \
-sOutputFile=document_flat.pdf document_original.pdf
確立されたここ。/
以前に削除する方法の説明を参照してくださいLeaveColorUnchanged
。
答え3
Ghostscriptは、2016年後半に単純注釈のデフォルト設定を変更しました。
必要なPDFを簡単にマージするには-dPreserveAnnots=false
今簡単なコマンドライン
gs -dSAFER -dBATCH -dNOPAUSE -dNOCACHE -sDEVICE=pdfwrite \
-dPreserveAnnots=false \
-sOutputFile=document_flat.pdf document_original.pdf
答え4
PDFをマージしたり、画像のみを含める必要があることがよくあります。ターミナルに入るよりノーチラスで早くやりたくて2つを作りました。Nautilusスクリプト以前の回答に基づいています。他の人に役立つように、このガイドラインを共有しています。
PDFをマージするスクリプトを作成します。
- Nautilusスクリプトフォルダに移動
~/.local/share/nautilus/scripts/
- 新しいシェルスクリプトファイルを作成する(例
FlattenPDF.sh
:) - ファイルを実行可能にします(例:Natiuls
Properties
→→ )Permissions
Allow executing file as program
- ファイルに次のテキストを挿入します。
#!/bin/bash
# Flattend PDFs
IFS='
'
for file in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
do
if [ -f "$file" ]; then
base=${file%.*}
ext=${file##*.}
newname=${base}_flat.pdf
gs -dSAFER -dBATCH -dNOPAUSE -dNOCACHE -sDEVICE=pdfwrite -dPreserveAnnots=false -sOutputFile=$newname $file
fi
done
画像のみ(検索または選択できないテキスト)PDFを生成するスクリプトを作成します。
- Nautilusスクリプトフォルダに移動
~/.local/share/nautilus/scripts/
- 新しいシェルスクリプトファイルを作成する(例
ImageOnlyPDF.sh
:) - ファイルを実行可能にします(例:Natiuls
Properties
→→ )Permissions
Allow executing file as program
- ファイルに次のテキストを挿入します。
#!/bin/bash
# Image-only PDFs
IFS='
'
for file in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
do
if [ -f "$file" ]; then
base=${file%.*}
ext=${file##*.}
newname=${base}_img.pdf
gconvert -density 200 $file $newname
fi
done
Nautilusを再起動します(例:nautilus -q
Exit Nautilusと入力し、DashでNautilusを再度開きます)。ファイルを右クリックすると、Scripts
新しいスクリプトを含むメニューが表示されます。