Bagaimana cara memasukkan halaman kosong ke PDF dengan ghostscript atau pdftk?

13

Saya memiliki file PDF yang perlu halaman kosong dimasukkan ke dalamnya setiap begitu sering. Polanya tidak dapat diprediksi, jadi saya membutuhkan perintah yang memungkinkan saya untuk memasangnya di mana pun diperlukan.

Bagaimana saya bisa melakukan ini?

ixtmixilix
sumber

Jawaban:

14

Dari http://blog.chewearn.com/2008/12/18/rearrange-pdf-pages-with-pdftk/

pdftk A=src.pdf B=blank.pdf cat A1 B1 A2-end output res.pdf

Semoga Anda menyukai skrip ini, simpan saja sebagai pdfInsertBlankPageAt.sh, tambahkan izin eksekusi, dan jalankan.

./pdfInsertBlankPageAt 5 src.pdf res.pdf

#!/bin/bash
if [ $# -ne 3 ]
then
  echo "Usage example: ./pdfInsertBlankPageAt 5 src.pdf res.pdf"
  exit $E_BADARGS
else
  pdftk A=$2 B=blank.pdf cat A1-$(($1-1)) B1 A$1-end output $3
fi 

cat A1 B1 A2-endberarti bahwa file keluaran akan berisi halaman pertama dokumen A ( src.pdf) diikuti oleh halaman pertama dokumen B ( blank.pdf) diikuti oleh sisanya (halaman 2 sampai akhir) dokumen B. Operasi ini disebut concatenation, Linux catsangat sering digunakan untuk menampilkan teks, tetapi menarik ketika digunakan dengan lebih dari satu argumen.

Untuk membuat blank.pdf, lihat Bagaimana cara membuat PDF kosong dari baris perintah?

Eric Fortis
sumber
Saya sarankan menambahkan sedikit penjelasan apa yang dilakukan perintah, apa efeknya (misalnya di mana halaman kosong dimasukkan). Anda juga dapat menambahkan cara mudah untuk membuat file pdf hanya dengan halaman kosong di dalamnya.
maxschlepzig
7
Saya menemukan hari ini perintah berikut untuk membuat halaman kosong menggunakan baris perintah:echo "" | ps2pdf -sPAPERSIZE=a4 - pageblanche.pdf
remjg
Tautan sudah mati :(
Weboide
Ketika mencoba ini untuk menyisipkan halaman kosong, awal dokumen (Halaman 1) saya mendapatkan kesalahan berikut: Kesalahan: Akhir rentang tak terduga; mengharapkan nomor halaman atau kata kunci hukum, di sini: A1 Keluar. Terjadi kesalahan. Tidak ada output yang dibuat. Selesai Kesalahan input, jadi tidak ada output yang dibuat.
bwright