Сжатие PDF файлов

Если вам когда-либо приходилось сканировать PDF на айфоне (при помощи приложения Notes => Attach => Scan Documents), вы знаете, что безобидный скан страниц на 20 может занимать под 100 Мб драгоценного места на диске.

Хранить столько мегабайтов неприятно, но вдвойне неприятно, когда нужно отправить этот файл по емейлу или через форму, принимающую только файлы адекватного размера (ну согласитесь PDF на 100 Мб — это что-то на ламерском).

Можно воспользоваться каким-нибудь бесплатным сервисом компрессии PDF на просторах интернета, но, пардон, что если вам нужно пережать паспорт, контракт или другой документ с конфиденциальными данными?

Я сегодня не без помощи ИИ нашёл элегантное решение для MacOS/Linux — утилита ghostscript.

Устанавливаем её на комп:

brew install ghostscript

Затем запускаем следующую команду.

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf

Вуаля — я сжал 87 Мб в 7.1 Мб за пять секунд, совершенно приватно не выходя за пределы своего компьютера.

Тут важно не перепутать где у вас входной файл, а где результат. Я с первой попытки поменял их местами и мой исходник был безвозвратно перезаписан каким-то 2-х килобайтным говном. Хорошо, что оригинал ещё был на телефоне в заметках и я смог его восстановить.