До речі, одна з причин ImageMagick настільки повільніше полягає в тому, що вона двічі викликає Ghostscript. Він не перетворює PDF => PNG за один раз, але використовує 2 різні кроки:
- він спочатку використовує Ghostscript для
PDF => PostScript
перетворення;
- Потім він використовує Ghostscript для
PostScript => PNG
перетворення.
Ви можете дізнатися про детальні налаштування "делегатів" ImageMagick (зовнішніх програм, які використовує ImageMagick, наприклад, Ghostscript), набравши текст
convert -list delegate
(У моїй системі це список із 32 різних команд.) Тепер, щоб побачити, які команди використовуються для перетворення в PNG, використовуйте це:
convert -list delegate | grep -i png
Гаразд, це було для Linux. Якщо ви працюєте в Windows, спробуйте це:
convert -list delegate | findstr /i png
Ви дізнаєтесь, що чат виробляє PNG лише з вводу PS або EPS. Тож як IM отримує (E) PS з вашого PDF? Легко:
convert -list delegate | findstr /i PDF
convert -list delegate | grep -i PDF
Ах! Він використовує Ghostscript для перетворення PDF => PS, потім знову використовує Ghostscript для перетворення PS => PNG. Працює, але це не найефективніший спосіб, якщо ви знаєте, що Ghostscript може зробити PDF => PNG за один раз. І швидше. І в набагато кращій якості.
Про обробку чату перетворенням PDF у зображення через делегат Ghostscript слід передусім знати дві речі:
- За замовчуванням, якщо не вказати додатковий параметр, Ghostscript виведе зображення з роздільною здатністю 72dpi. Ось чому інколи тут люди пропонують додати
-density 600
як convert
параметр, який вказує Ghostscript використовувати роздільну здатність 600 dpi для виведення зображення.
- Об’їзд чату для виклику Ghostscript двічі для перетворення спочатку,
PDF => PS
а потім PS => PNG
- справжня помилка. Тому що ти ніколи не виграєш і твердо тримаєш якість на першому кроці, але дуже часто програєш. Причини:
- PDF може обробляти прозорі плівки, що PostScript не може.
- PDF може вбудовувати шрифти TrueType, які PostScript не може. etc.pp.
(Перетворення в зворотному напрямку PS => PDF
, для цього не так важливо ....)
Ось чому я б запропонував вам конвертувати PDF-файли за один раз у PNG (або JPEG), використовуючи безпосередньо Ghostscript. І використовуйте найновішу версію 8.71 (незабаром вийде: 9.00) програми Ghostscript ...