Я использую Ghostscript, чтобы превратить PDF-файлы в миниатюры в формате JPEG. Он отлично работает для большинства файлов, но у меня есть несколько, которые в итоге выглядят плохо - как миниатюра на огромном белом фоне.
Это связано с тем, что в этих проблемных PDF-файлах MediaBox имеет гораздо больший размер, чем CropBox. Я могу исправить это в Ghostscript с помощью -dUseCropbox, чтобы он игнорировал размеры MediaBox ... но это не работает с другими PDF-файлами, для которых не определен CropBox.
Итак, я могу придумать два решения:
Каким-то образом проверьте файл PDF перед импортом, чтобы увидеть, определен ли для него CropBox. Если у него есть CropBox, используйте ключ -dUseCropBox. Если для него не определен CropBox, мы не используем этот переключатель.
Изменение размеров MediaBox в самом файле PDF таким образом, чтобы они соответствовали измерениям CropBox.
Так, какой код я бы использовал, чтобы проверить файл PDF для измерений CropBox / MediaBox и, при необходимости, отредактировать их?