Dalam pikiran saya cara terbaik untuk mencapai pekerjaan itu bukan dengan menggunakan program antarmuka pengguna grafis tetapi menggunakan kumpulan skrip bash (seperti di lingkungan Unix / Linux), jadi jika Anda memiliki pengetahuan dasar pemrograman Anda akan dapat untuk melakukan lebih banyak hal yang dapat disediakan oleh program GUI untuk Anda.
Pertama Anda dapat menginstal baris perintah Unix seperti minimal yang dapat Anda gunakan
preferensi saya adalah untuk Cygwin karena mengandung sejumlah besar paket perangkat lunak.
Jika Anda ingin mengekstraksi gambar dari instalasi PDF juga pdfimages pdfimages adalah utilitas baris perintah sumber terbuka untuk mengekstraksi gambar dari file PDF. Ini tersedia secara bebas sebagai bagian dari poppler-utils dan xpdf-utils, dan disertakan secara default dengan banyak distribusi Linux.
$ pdfimages file.pdf foo
Penggunaan ini menghasilkan serangkaian gambar bernomor dengan "foo" sebagai awalan.
Gunakan sebenarnya $ mkdir temp $ mkdir temp / jpg
untuk membuat folder sementara bernama jpg di dalam direktori temp
$ pdfimages -j file.pdf temp/jpg/foo
Katakanlah Anda memiliki beberapa gambar fooXXXX.jpg sekarang di folder temp.
Dalam kasus Anda, Anda pernah memiliki gambar fooXXXX.jpg.
Anda sekarang dapat menghasilkan satu PDF menggunakan convert (baris perintah dari ImageMagick)
Jadi unduh ImageMagick http://www.imagemagick.org/ atau instal menggunakan pengelola paket Cygwin
Lihat dokumentasi konversi (ketik "konversi ImageMagick" di mesin pencari favorit Anda)
Jadi Anda mengerti bahwa untuk mengonversi gambar Anda ke satu file PDF Anda harus menulis
$ convert -compress jpeg temp/*.jpg my_output_file.pdf
Itu saja ... ;-) tetapi solusi ini dapat diperluas ...
Mari kita bayangkan bahwa gambar yang dipindai berasal dari sebuah buku ... 1 file sebenarnya 2 halaman buku Anda ...
jadi jika Anda memiliki 10 file ... buku Anda memiliki 20 halaman ... dan Anda ingin PDF Anda juga memiliki 20 halaman.
Jadi Anda perlu membagi gambar yang terkandung dalam satu file untuk membuat 2 file untuk setiap halaman.
Katakanlah file Anda adalah temp / foo0001.jpg Anda akan memiliki 2 file temp2 / foo0001a.jpg (halaman kiri) dan temp2 / foo0001b.jpg (halaman kanan)
Buat direktori temp2 (ke mana file yang Anda slitted akan pergi)
$ mkdir temp2
$ mkdir temp2/jpg
Buat file bernama split_jpg_minw.sh menggunakan editor teks (Emacs, VI atau jika Anda lebih suka aplikasi Windows Anda dapat menggunakan Notepad atau Notepad ++)
minimal_width=1500
minimal_width_ignore=10
rm temp2/jpg/*.jpg
for f in temp/jpg/*.jpg
do
f2=$(basename $f)
read -r width height <<< $( convert $f -format "%w %h" info:)
width2=$(( ${width} / 2 ))
height2=${height}
if [ $width -gt $minimal_width ]; then
echo "split $f ${width}x${height} to 2 files ${width2}x${height2}"
convert $f -crop ${width2}x${height2}+0+0 +repage temp2/jpg/${f2%%.*}a.jpg
convert $f -crop ${width2}x${height2}+$width2+0 +repage temp2/jpg/${f2%%.*}b.jpg
else
if [ $width -gt $minimal_width_ignore ]; then # ignore if with < 10px
echo "copy $f ${width}x${height} (don't split because width<$minimal_width)"
cp $f temp2/jpg/$f2
else
echo "ignore $f ${width}x${height} width=$width<minimal_width_ignore=$minimal_width_ignore"
fi
fi
do
width = 1500px adalah batas untuk membagi file (atau tidak)
- file dengan lebar lebih dari 1500px akan dipisah
- file dengan lebar di bawah 1500px tidak akan dibagi
Jadikan skrip ini dapat dieksekusi
$ chmod +x split_jpg_minw.sh
(Anda dapat menggunakan tombol tab untuk melengkapi nama file secara otomatis)
Jalankan skrip
$ ./split_jpg_minw.sh
File yang dipisah akan berada di folder temp2 / jpg
Hasilkan file "terpecah" yang baru.
$ convert -compress jpeg temp2/*.jpg my_output_file_splitted.pdf
Anda dapat menambahkan lebih banyak opsi ke rantai Anda untuk menghasilkan file PDF menggunakan skrip bash.
Tidak ada batasan ... Anda hanya perlu belajar scripting (tetapi beberapa contoh kode kadang-kadang jauh lebih berguna daripada buku)
Misalnya, Anda dapat menerapkan filter ke gambar Anda sebelum membuat file PDF (untuk menghapus misalnya pola Moiré atau untuk mengurangi noise) menggunakan alat baris perintah seperti G'MIC