Я работаю с 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 должна иметь возможность масштабирования до произвольного числа пикселей.Может это?Я скучаю по чему-то очевидному и глупому?