Her gün birçok PDF dosyasını yeniden yazıyorum, bu yüzden en iyi şekilde nasıl yapılacağını düşünerek çok zaman harcıyorum.
Benim için en iyi yol, PDF'yi 1 sayfalık PDF dosyasına, GIMP ile düzenlemenin yanında birleştirmek için bölmektir. İmagemagick'i tüm dosyalarda kullanmıyorum (hiç kullanmıyorum), bu nedenle tüm sayfalarda metin katmanını kaybetmiyorum, ancak yalnızca yeniden düzenlendi. Tüm PDF dosyasını bir kerede yüklemeyin, çünkü belleğin tükenmesine neden olur.
PDF'yi 1 sayfalık dosyalara bölme
Bu bash işleviyle PDF dosyalarını kolayca 1 sayfalık PDF'ye bölün (~ / .bashrc dizinine yerleştirin):
function pdf_split(){
for file in "$@"; do
if [ "${file##*.}" != "pdf" ]; then
echo "Skip $file because it's not PDF file";
continue
fi;
pages=$(pdfinfo "$file" | grep "Pages" | awk '{print $2}')
echo "Detect $pages in $file";
filename="${file%.*}";
unset Outfile;
for i in $(seq 1 "$pages"); do
pdftk "$file" cat "$i" output "$filename-$i.pdf";
Outfile[$i]="$filename-$i.pdf";
done;
done;
};
Artık split_pdf file.pdf
pek çok PDF dosyası almak için girebilirsiniz .
Dosyaları yeniden düzenle
Ancak, şimdi tüm bu dosyaları düzenlemelisiniz. İle yapabilirsiniz gimp original-filename-*.pdf
. Dosyayı değiştirmek için GIMP'de (Ana pencere-> Düzenle-> Kısayol) kısayolu yapılandırmanızı (CTRL + R kullanıyorum), filtreyi bulanıklaştırmayı (örn. CTRL + D), dosyayı kapatmayı (örn. CTRL + W) ve GIMP'den çıkmayı öneririm ( eg.CTRL + Q). GIMP'ye aynı anda birçok dosyaya yükleme yapmayı unutmayın, ancak açtıktan sonra yüklediğiniz gibi GIMP'i gimp original-filename-*.pdf
bin dosya üzerinde güvenle kullanabilirsiniz.
Dosyaları birleştir
Dosyaları kolayca ile birleştirebilirsiniz: pdftk originam-filename-*.pdf cat output "new-file-anon.pdf";
Hepsini birbirine bağlayın
Bu işlemler çok tekrarlayan ve sıkıcı, bu yüzden hepsini 1 komut dosyasında bağlarım:
function pdf_redact(){
for file in "$@"; do
if [ "${file##*.}" != "pdf" ]; then
echo "Skip $file because it's not PDF file";
continue
fi;
pages=$(pdfinfo "$file" | grep "Pages" | awk '{print $2}')
echo "Detect $pages in $file";
filename="${file%.*}";
unset Outfile;
for i in $(seq 1 "$pages"); do
pdftk "$file" cat "$i" output "$filename-$i.pdf";
Outfile[$i]="$filename-$i.pdf";
done;
gimp "${Outfile[@]}";
pdftk "${Outfile[@]}" cat output "$filename-anon.pdf";
rm "${Outfile[@]}";
read -p "Do you want open output file? " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]
then
evince "$filename-anon.pdf";
fi
read -p "Do you want upload output file to Scribd.com? " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]
then
scribd_up "$filename-anon.pdf";
fi
done;
};
Bu betiğin en yeni sürümüne her zaman şu adresten erişilebilir: http://dostep.jawne.info.pl/it/bashrc
Komut devam etmek için tüm redaksiyonlardan sonra GIMP'yi (CTRL + Q) kapatmayı unutmayın.
Bağımlılıkta, düzeltilmiş dosyaları açmam (hepsini kontrol etmeyi okumayı severim) ve diğer betiğimle Scribd'e yüklemeyi seviyorum - scribd_up , bu yüzden şimdi çok sayıda PDF dosyasını çok verimli bir şekilde yeniden düzenleyebilirim .