Восхотел я как то книжку в pdf на старом девайсе почитать, понимаю, читать вредно и не благоугодно, от сего всякие мысли заводятся....
но дерзнув на подвиг сей и воздрузив книгу сию пдэфную получил полнейший облом, ибо промыслительно девайс был старых устоев и не каждые пэдээфки читал.
заглянуть
Исполнившись лютой злобы от такого покушения на моё
право читать аз курить начал
маны и обрёл тучу разных советов, убив изрядно времени жития своего и порушив душевное умиротворение, низпал с высоты ангелского бесстрастия во
глубины демонския страстей лютых ибо советы были
всякия... и некоторые угробили мою книжку, благо я её промыслительно скопировал,
святая копипаста спасла
а такой
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=jpeg -r150 -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -dMaxStripSize=8192 -sOutputFile=%02d.jpg input.pdf
вкупе с этим
convert -limit memory 32mb -limit map 64mb *.jpg input_web.pdf
(или вообще -limit memory 0 -limit map 0 )
оказался полезен, несмотря на то что ImageMagick при сборке подвесил систему и вылетел с ошибкой
libgomp: Thread creation failed: Pecypc вpeмeннo нeдocтyпeн
победа же далась только опосля установки пакета
graphicsmagick-imagemagick-compat удалившего ImageMagick
токмо книжица собралась неправильно, на беду мою там тыща страниц было....и опосля десятой сразу сотая шествовала, а затем и тысячная....
я ринулся было сие дело править командами
Патрикоугодными: rename 's/^/000/' *.jpg # добавить префикс '000' у *.jpg
rename 's/000//' *.jpg # убрать префис '000' у *.jpg
но осознал, что не туда путь держу, ибо в обезьянье царство заводит...
и методом тыка научного прознал таки я о значении циферки в конце
формулы волшебной %02d.jpg не простая она,
02 - это два нолика впереди и годится до сотни страничек, а для тыщи 04 надо писать )
чтож, собрал всё я заново ...
однако книжица стала гораздо увесистей и опечалился я зело, но дух унылый кости сушит, а кручина до добра не доводит, и посему обратился вновь
ко всемирному разуму... Опосля же всех перипетий, встретившихся на моем скорбном пути, укурившись как следует
манами я наткнулся на
дивное: ps2pdf -dUseFlatCompression=true test.pdf
и
просветление настигло меня, ибо сие был истинный
юниксвэй )))
WARNING детям до 18 разворачивать lj-cut низя: был использован
боярский язык find . -name "*.pdf.pdf" -exec cp {} tmp/ \; cd tmp/; rename 's/.pdf.pdf/.pdf/g' *.pdf.pdf; pdftk *.pdf cat output книжка.pdf
ещё годный способ (главное не перепутать входной и выходной файлы):
http://milan.kupcevic.net/ghostscript-ps-pdf/ gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf
параметры
PDF optimization level selection options
-dPDFSETTINGS=/screen (screen-view-only quality, 72 dpi images)
-dPDFSETTINGS=/ebook (low quality, 150 dpi images)
-dPDFSETTINGS=/printer (high quality, 300 dpi images)
-dPDFSETTINGS=/prepress (high quality, color preserving, 300 dpi imgs)
-dPDFSETTINGS=/default (almost identical to /screen)
Paper size selection options
-sPAPERSIZE=letter
-sPAPERSIZE=a4
-dDEVICEWIDTHPOINTS=w -dDEVICEHEIGHTPOINTS=h (point=1/72 of an inch)
-dFIXEDMEDIA (force paper size over the PostScript defined size)
Other options
-dEmbedAllFonts=true
-dSubsetFonts=false
-dFirstPage=pagenumber
-dLastPage=pagenumber
-dAutoRotatePages=/PageByPage
-dAutoRotatePages=/All
-dAutoRotatePages=/None
-r1200 (resolution for pattern fills and fonts converted to bitmaps)
-sPDFPassword=password
пара способов
отсюда convert -density 300x300 -quality 100 mine1.pdf mine2.pdf merged.pdf
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress -sOutputFile=merged.pdf mine1.pdf mine2.pdf
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/default -dNOPAUSE -dQUIET -dBATCH -dDetectDuplicateImages -dCompressFonts=true -r150 -sOutputFile=output.pdf input.pdf
https://www.linuxuprising.com/2018/09/easily-compress-pdf-files-in-linux-with.html ps2pdf -dUseFlateCompression=true -dOptimize=true -dProcessColorModel=/DeviceRGB -dUseCIEColor=true -r72 -dDownsampleGrayImages=true -dAutoFilterColorImages=false -dDownsampleColorImages=true -dDownsampleMonoImages=true -dGrayImageDownsampleType=/Bicubic input.pdf
Очень длинная команда:
gs -q -dNOPAUSE -dBATCH -dSAFER -dPDFA=2 -dPDFACompatibilityPolicy=1 -dSimulateOverprint=true -sDEVICE=pdfwrite -dCompatibilityLevel=1.3 -dPDFSETTINGS=/screen -dEmbedAllFonts=true -dSubsetFonts=true -dAutoRotatePages=/None -dColorImageDownsampleType=/Bicubic -dColorImageResolution=150 -dGrayImageDownsampleType=/Bicubic -dGrayImageResolution=150 -dMonoImageDownsampleType=/Bicubic -dMonoImageResolution=150 -sOutputFile=output.pdf input.pdf
Самый простой способ:
convert -compress Zip -density 150x150 input.pdf output.pdf
Довольно простой и эффективный способ:
convert -density 150x150 -quality 70 -compress jpeg -resize 80% input.pdf output.pdf
Посмотреть сколько картинок в файле pdf
pdfimages -list input.pdf
PS
если картинки недожало, то:
mogrify -resize 1175x825 *.jpg
find . -name "*.jpg" -size +1000k -exec convert -resize 3508 -quality 85% {} {} \;
расчёт листа А4
"""
Размер листа А4 составляет 297(мм) х 210(мм) или 11.75(дюйма) х 8.25(дюйма) . Исходя из разрешения в 72 дпи (точек на дюйм) , лист формата А4 будет эквивалентен 846(пикселей) х 594(пикселя) :
11.75(дюйма) х 72(дпи) = 846 (пикселей)
8.25(дюйма) х 72(дпи) = 594 (пикселя)
"""
расчёт качества
"""
- 4961х7016 пикселов при разрешении 600 дпи
- 2480х3508 пикселов при разрешении 300 дпи (рекомендую для печати)
- 1240х1754 пикселов при разрешении 150 дпи
- 595х842 пикселов при разрешении 72 дпи (для просмотра с экрана)
"""
форматнуть djvu в pdf
sudo apt install djvulibre-bin
ddjvu -format=pdf Книга.{djvu,pdf}
форматнуть кучу html в pdf и собрать книжку
libreoffice --headless --convert-to pdf:writer_pdf_Export --outdir $HOME/tmp/convert *.html
rename 's/^/00/' *.pdf
apt-get install pdftk
pdftk *.pdf cat output newfile.pdf
но почему то pdftk начал с 10й и в конце с 1 по 9ю, сколько бы ноликов впереди не ставил (( только pdfchain нормально собрал
apt-get install pdfchain
PS pdftk и pdfchain нет в новой убунте, поэтому
pdfunite *.pdf out.pdf
qpdf --empty --pages *.pdf -- out.pdf
Массовое переименование файловС помощью bash:
for i in *.c; do
mv $i `echo $i | sed 's/\.c$/.bak/'`
done
С помощью Perl:
$ rename 's/\.c\.orig$/.c/' *.c # переименовать все *.c.orig в *.c
$ rename 'y/A-Z/a-z/' *.JPG # имена фотографий маленькими буквами
$ rename 's/\U/\u/g' *.JPG # тоже самое
$ rename '$_=lc' * # тоже самое, но для всех файлов
$ rename 's/deftones-//' *.mp3 # убрать префис 'deftones-' у *.mp3
$ rename 's/^/jerk-/' *.swf # добавить префикс 'jerk-' у *.swf
$ rename 's/ /_/g' * # пробелы в именах файлах заменить на '_'
Снятие ограничений с PDF документа
qpdf --decrypt restricted-input.pdf unrestricted-output.pdf
Как удалить пароль из PDF в Linux Как просмотреть или отредактировать метаданные pdf или изображениях из командной строки Linuxhttps://exiftool.org/ https://www.ghostscript.com/doc/Use.htmhttp://www.linux.org.ru/forum/desktop/4487423#comment-4489125Уменьшить размер PDF файлаРабота с PDF в LinuxКак объединить и разбить PDF в Linux подручными средствамиПакетное изменение размера изображенийКак записать формат А4 в пикселях(ширина, высота)?Сколько пикселей в бумаге А4? Нужен размер бумаги в пикселях для фотошопа!ImageMagick - консольный графический редакторКак уменьшить размер JPG без потери качества в UbuntuБольшая поваренная книга программиста. / → *nix → ImageMagickОптимизация изображений для сайтаРаботаем с PDF в Linux - «Хакер»Руководство пользователя ImageMagick v. 7.1.0 [Иван Титаренко] (fb2)