Я пропоную тут інструмент командного рядка, який легко може бути зібраний циклами у вбудованих мовах скриптування в Windows, Linux, OS X тощо.
ImageMagick підтримує PDF-файли та має resizeможливість його інструменту перетворення . Я ніколи не використовував це особисто, але ви можете спробувати пограти з цим.
Ви можете також використовувати compressопцію (є приклад тут ):
Оберніть PDF
$ convert -rotate 270 -density 300x300 -compress lzw in.pdf out.pdf
Це передбачає PDF-файл, підтримуваний TIFF. Параметр щільності важливий, оскільки в іншому випадку ImageMagick знижує вибірки зображення (чомусь). Додавання параметра стиснення допомагає зменшити загальний розмір PDF-файлу меншим, не втрачаючи якості.
Для багатосторінкових PDF-файлів ви можете скористатися pdftk, а потім використати mogrifyз ImageMagick для перетворення кожної сторінки на місце:
$ pdftk in.pdf burst
$ mogrify -rotate 270 -density 300x300 -compress lzw pg_*.pdf
$ pdftk pg*.pdf cat output out.pdf
$ rm pg*.pdf
Для перетворення файлів PDF за допомогою ImageMagick вам потрібно встановити GhostScript .
ImageMagick може конвертувати PDF на багато сторінок. Хоча mogrifyбуде конвертувати на місці, я рекомендую використовувати, convertщоб ви могли зберегти оригінали у випадку аварії.
Я провів тестування вашого наданого зразка PDF. Це спрацювало для мене досить добре:
convert -density 200 -compress jpeg -quality 20 test.pdf test2.pdf
Значення за замовчуванням до 72DPI. Встановивши його вище, ми можемо отримати більш високу роздільну здатність і, отже, прийнятну якість. Це виглядало гаразд 150і було трохи менше, але якщо ви хочете задовольнити цілий ряд PDF-файлів, 200слід працювати.
Стиснення JPEG повинні або автоматично вибрати рівень або значення по замовчуванням для 92на шкалі , 1щоб 100з 100бути кращими. Встановивши це 20, він виглядає майже так само добре, як оригінал (трохи нечітко і невеликий текст внизу трохи важко читати, але спочатку це все одно було).
Ці параметри знижують ваш зразок 1,7 Мб до 0,5 МБ , зберігаючи його для читання. Можна трохи експериментувати.
Якщо ви хочете меншого розміру (і файлу, і зображення / PDF), ви можете використовувати -resize #%, наприклад -resize 75%. У вашому прикладі PDF, однак це робить дрібний шрифт внизу значно нечитабельним.
Якщо вам все ще не вистачає місця, особливо для багатосторінкових PDF-файлів, ви можете додатково стиснути, додавши файли в ZIP (або інший) архів. Це зменшило розмір файлу до 0,43 Мб у цьому тестовому PDF (зниження якості стиснення JPEG має набагато більш різкий ефект). Ви також можете розділити файл PDF на сторінки за допомогою pdftk, як запропонував @glallen у своїй редагуванні, або розділити архів та рекомбінувати на іншому кінці.
2 Мб - це також досить невеликий ліміт вкладень, можливо, ви захочете заглянути в інших постачальників електронної пошти. З пам’яті GMail надає понад 10 Мб на електронну пошту.
Ці параметри та багато іншого повністю задокументовані на їхньому веб-сайті .