Ghostscript: масштабирование очень маленького eps до большого jpg - PullRequest
0 голосов
/ 22 февраля 2019

Я работаю с ghostscript, чтобы растеризовать файлы eps в формат jpg.То, с чем я борюсь и не могу найти очевидного ответа, - как правильно «увеличить» файл eps с очень маленькой ограничительной рамкой.Пример:

%%BoundingBox: 0 0 71 47
%%HiResBoundingBox: 0 0 70.9961 46.0020

Намного больше пикселей, чем у нас там представлено точек (т.е. 4 мегапикселя) с опцией dDEVICEWIDTH / HEIGHT.Пример вызова GS с соответствующими опциями, которые мы используем:

gs -sDEVICE=jpeg -dEPSFitPage -dJPEGQ=100 -dBATCH -r300 -g2458x1628 -sOutputFile=output.jpg input.eps

В результате получается JPG с желаемыми размерами в пикселях, но он сильно пикселизирован, теряя все детали вектора.Я экспериментировал с вариантами из документов ghostscript, которые казались потенциально актуальными:

-r1000...
-dInterpolateControl=<-1 through 1000>
-dGraphicsAlphaBits=<1,2,4>

Ни один из них, кажется, не оказывает никакого влияния на пикселизацию получающегося jpg.Этот эффект, кажется, напрямую коррелирует с точками, представленными ограничительной рамкой, то есть одна точка == один пиксель, любое увеличение масштаба приводит к потере качества / пикселей.

Я смущен, почему это так.На мой взгляд (такой, как она есть) векторная информация в eps должна иметь возможность масштабирования до произвольного числа пикселей.Может это?Я скучаю по чему-то очевидному и глупому?

Ответы [ 2 ]

0 голосов
/ 22 февраля 2019

Получается, что все это связано с настройками «выравнивания прозрачности», выбранными при первоначальном сохранении файла.Я использую иллюстратор, и они варьируются от «низких» до «сложных» пресетов («средний» - по умолчанию).

«Средний» - настройки

«Сложные» настройки

В очень маленьких EPS с эффектами прозрачности, сохраненными с настройками по умолчанию «средний», результирующий растр получается очень низкого качества, и, похоже, ghostscript ничего не может с этим поделатьЭто.Если вы выбираете «сложный», растр имеет полное качество / разрешение.Если вместо этого вы масштабируете иллюстрацию примерно до того же количества точек, что и пиксели, «средние» настройки приводят к растру сравнимого качества с использованием «сложных» настроек для маленького.

Тамне кажется (мне) что-либо, что можно сделать, чтобы решить эту проблему после того, как файл уже создан.

0 голосов
/ 22 февраля 2019

Вы не предоставили файл EPS, поэтому трудно точно определить проблему, вот несколько соображений:

1) Не связывайтесь с качеством JPEG, и фактически не используйте JPEG,Выпишите в формате без потерь, как TIFF.Это предотвратит перепутывание количественного определения JPEG с выводом и устранит возможную проблему.

2) Проверьте EPS, чтобы увидеть, содержит ли оно изображение.Это кажется наиболее вероятной проблемой для меня.Программы PostScript могут содержать как данные изображения, так и вектор, если ваш EPS содержит изображение с низким разрешением, тогда вам ничего не поможет, результат будет ограничен количеством образцов изображения на входе.

...