Проблемы с eps

  • Автор темы Автор темы Dorg
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
Ответ: Проблемы с eps

Zest сказал(а):
О какой действительности вы говорите? Что еще определяет размер габаритов епса кроме BBox'а?

Ну, допустим программа выкинула тот ббокс который был в файле и сгенерила новый. На основании чего? Габаритов объектов? Тогда бы размеры не чуть-чуть-чуть изменялись, а драматически и причем в разные стороны: то больше то меньше то одна сторона то другая.

Там есть еще такой опционал как хайрезббок. С плавающей точечкой...
Неважно, что там есть еще. Важно, что приложение, помещая в свой документ EPS-файл, не выполняет код, содержащийся в EPS'е, а читает DSC-комментарий %%BoundingBox: , прописанный туда создателем EPS'а.
Стандартным и обязательным является BoundingBox, а HiRes… — опциональное расширение. Программа (AI?) EPS никоим образом не модифицирует, а, считав нужные заголовки, тупо определает и прорисовывает его placeholder, дожидаясь момента печати или (веяния современности) экспорта в PDF. тогда по BoundingBox'у (HiRes'у) создается clippingpath, внутри которого кодом EPS'а отрисовывается изображение (интересно, что при сохранении в PDF clippath не создается.).
Вот и весь «секрет» размеров. В качестве примера привожу два EPS'а: прилинкуйте их, а потом встройте (Embed) и посмотрите на размеры. Можете также напечатать их (пока они еще прилинкованы) на PostScript-принтер. Советую обратить внимание на размеры пурпурных квадратов. Потом откройте эти EPS'ы Notepad'ом.
 

Вложения

Ответ: Проблемы с eps

=======
P.S. Для наглядности рекомендую перед проведением «эксперимента» поставить единицу измерения в AI — пункт (pt.)
 
Ответ: Проблемы с eps

А что, круто: Arkady повторил все что я сказал в вопросе к нему, - только как будто это я о какой-то загадочной действительности писал - и зашибись получилось. Надо перенимать опыт...
 
Ответ: Проблемы с eps

Короче, если интерпрентатор понимает хайрезбб, то надо его заполнять. Иначе не просто размеры уйдут, а, например векторный епс положенный поверх растровой подложки не совпадет с теми элементами изображения ее, с которыми совпадал в дизайн-тайм.

Что касается ббокса, но например в прелестной Люстре он генерится бай обжект. Просто праздник какой-то...
 
Ответ: Проблемы с eps

А вот и нифига!
Интересно рассмотреть два случая:


Первый случай. Объект имеет обводку ненулевой толщины.
В этом случае создатель EPS'а в габаритах (%%ВoundingBox'а) EPS по-хорошему должен учесть не только габаритный размер самого объекта, но и прибавить к нему толщину обводки. В противном случае при размещении этого EPS'а в другом документе при печати будет создан clippath по габаритам объекта и срезающий (точнее — маскирующий) выступающие части обводки.
Однако в PostScript'е обводка (stroke) не является самостоятельным объектом, а представляет собой «след» от «грифеля карандаша» заданного размера, движущегося вдоль контура.
В PostScript'е габариты этого объекта будут заданы именно по габаритам контура, т.е. без учета толщины обводки. Соответственно, при встраивании EPS'а, содержащего такой объект в AI мы получим уменьшение размеров объекта.
—————
В настройках AI есть галочка, позволяющая учитывать при определении размеров объекта толщину его обводки. Но по ряду причин эта опция, как правило, выключена.


Второй случай. Объект помещен в Clipping mask.
Cоздатель EPS'а в габаритах (%%ВoundingBox'а) как правило учитывает только габариты clippath'а, игнорируя (совершенно справедливо) объект, выступающий за маску — ведь он все равно не прорисовывается (хотя и обсчитывается!). При выполнении такого EPS'а в AI мы получаем в большинстве случае увеличение размеров по сравнению с %%ВoundingBox'ом, т.к. замаскированный объект обычно делается больше закрывающей (ограничивающей видимость объекта) маски.
В маски в EPS'ах обычно помещаются растры. А также (в неявном виде) различные градиенты и заливки (patterns), к которым относятся градиенты в PostScrip Level 3, Tiling pattern, Shading pattern (Mesh fill — в CorelDRAW).


* * *​
Интерпретатор не понимает «хайрезбб», т.к. не обязан его понимать по той простой причине, что «хайрезбб» и иже с ним являются комментариями в PostScript-программе, т.е. начинаются со знака %, после которого интерпретатор просто игнорирует всю строку до конца (до <CR><LF>) включительно. Другими словами, в случае если синтаксический разборщик интерпретатора, находясь на «командном» уровне и выбрав из входного буфера очередной символ, узнает в нем знак %, то просто сбрасывает (опорожняет) буфер либо сразу же запрашивает новую строку программы в буфер.
«Хайрезббы», именуемые по-научному DCS-комментариями введены для структурной разметки PostScript-кода с целью сделать его понятным программам верстки и другим программам — например спуска полос типа Preps'а, без выполнения/анализа содержащегося в файле PostScript-кода.

P.S. Береги печень, Сеня! ©
 
Ответ: Проблемы с eps

Zest сказал(а):
А как вы определяете к какой письменности относится "знакоместо"?

Вид ячейки латинского символа “А”
В первом варианте: Unicode: 00C0
«Это означает только одно, кириллические знаки расположены на латинских знакоместах.
Эти ухищрения требовались для того, что бы заставить работать кириллические символы в программах не поддерживающих Unicode. К сожалению, подобный фокус работает только на системах Win9x (Win98, WinME). В остальных системах, (Win2000, XP, 2003 Server, Vista) работать корректно такой шрифт не будет.
2. вариант. По стандарту, прописной символ «А», имеет следующие параметры: Unicode:0410

- То бишь это и есть рабочий шрифт:)


Это с сайта Prodtp.ru, отрывки со статьи: " Конвертирование шрифтов формата TrueType в формат Type1 программой FontLab 4.6"
 

Вложения

  • 1.Кривой шрифт.jpg
    1.Кривой шрифт.jpg
    36.4 КБ · Просм.: 1 030
  • 2.Рабочий шрифт.jpg
    2.Рабочий шрифт.jpg
    34.6 КБ · Просм.: 547
Ответ: Проблемы с eps

mina сказал(а):

2. вариант. По стандарту, прописной символ «А», имеет следующие параметры: Unicode:0410
И желательно, правильные, отведенные cпециально для кириллицы имена: afii10xxx. Иначе PostScript обещает быть проблемным.
 

Вложения

  • AFII10xxx.png
    AFII10xxx.png
    52.6 КБ · Просм.: 888
  • AFII-in-PS.png
    AFII-in-PS.png
    39.9 КБ · Просм.: 640
Ответ: Проблемы с eps

Arkady сказал(а):
И желательно, правильные, отведенные cпециально для кириллицы имена: afii10xxx. Иначе PostScript обещает быть проблемным.

Так подробно я конечно не понимаю:)
Смотрю, чтобы кириллический шрифт "А" имел параметры: Unicode:0410
"В"-0411 и т.д.

Потом еще проверяю этот "рабочий шрифт" на PS вывод. Кроме знакомест, там же еще много всяких тонкостей...как вы и сказали. Работает если, то складываю в архив на последуюющее использование.:)

Спасибо Денису, что хоть что -то поняла:)
 
Ответ: Проблемы с eps


Не по теме:
На верстальном компе я не ставлю много шрифтов. На дизайнерских своя кухня. Мне по большому счету пофиг ибо в макетах все идет уже в кривых. Начни я их убирать - взвоют.
Но вообще-то интересно. Стоит как-нибудь поковырять. Особенно перед тем как доверить им верстку. Пытаюсь передать газету в чужие руки. Сам я почти инстинктивно избегаю кривых шрифтов, но передать опыт за месяц... нереально. Потом я же и буду виноват:( Мне же и будут названивать: "а че там все криво напечаталось..."
Э-х говорил я - на з/п не экономить... Взяли за 12000 корелистку. Нет чтоб поискать за 16000 путного человека.

 
Ответ: Проблемы с eps

Народ (Arkady vs. Zest) долго бился кейбордами. Фиг поймешь кто-победил. Много умных слов. Но хоть кто-нить сказал бы как этот самый bbox и прочая правильно задать в КОРЕЛЕ. Или хотя бы как его исправить в епс/пдф (ну кроме ручного редактирования в блокноте). Чтобы размер епс/пдф правильно определялся другими прогами.

ИМХО в кореле просто торчат усы от обводки и корел по ним размер шлепает. Ну эффект может за границы вылезти (тень к примеру) его уже не видно а на размер влияет. Как с этим бороться?

В аттаче простой красный квадрат (ака Малевич) с обводкой. Вставляется в индез с полями. Вот эти поля мне кардинально не нравятся!!!
Как я уже говорил http://forum.rudtp.ru/showpost.php?p=317551&postcount=191 http://forum.rudtp.ru/showpost.php?p=312483&postcount=1 есть способы борьбы но они не очень удобны. Полумеры сиречь.
Из вашего поста Arkady так и не понял плохо или хорошо когда митер большой:) И какие могут быть с ним проблемы. Видимо никаких.
 

Вложения

  • Untitled-1.gif
    Untitled-1.gif
    7.1 КБ · Просм.: 963
  • Untitled-2.gif
    Untitled-2.gif
    12.4 КБ · Просм.: 981
  • Graphic1.pdf
    Graphic1.pdf
    105.1 КБ · Просм.: 372
Ответ: Проблемы с eps

mr_pupkin сказал(а):
…хоть кто-нить сказал бы как этот самый bbox и прочая правильно задать в КОРЕЛЕ. Или хотя бы как его исправить в епс/пдф (ну кроме ручного редактирования в блокноте).
Как-как — да никак!—только ручками в редакторе :) Почему — было описано выше. В ВВох приложение само пишет то, что оно считает нужным. Если вы ставите при экспорте задание ВВох'ов по объектам, то будьте готовы к тому, что ваше видение размеров габаритного прямоугольника этих объектов может отличаться от мнения CorelDRAW (видение размеров CDR'ом можно посмотреть на Toolbar'е либо в Transform'е).
Спасает элементарная аккуратность и следование простейшему правилу (которое большинство корелитов почему-то игнорирует) — задавайте размер страницы равным обрезному размеру, а в опциях экспорта — задавайте BBox по размерам страницы. Если включите опцию Floating point…, то размеры в %%BoundingBox'е: будут представлены не целым, а вещественным числом (%%BoundingBox: «превратится» в %%HiResBoundingBox:). В результате приложения, которые понимают размеры, записанные в %%BoundingBox'е: в вещественном представлении — а сейчас такие если не все, то подавляющее большинство, смогут «вычислить» размеры вашего EPS'а более точно.
Еще одна интересная опция — BleedLimit,— расширяет %%BoundingBox'е: на указанную величину в каждую сторону (кстати, проверьте — не включена ли у вас эта опция). BleedLimit используется при экспорте EPS'ов с выпуском за обрез например для размещения на всей полосе и т.п. случаях.

Случаи несоотвествия размеров EPS'а при встраивании его в документ (выполнение содержащегося в нем кода, а не place!) рассмотрены выше и тут уже, IMHO, проще не объяснить.

По поводу «хорошо ли иметь большой miterLimit» — во-первых, это просто величина угла, меньше котрой приложение не пытается отрисовать «рог» излома (у вас на картинке обведен красным) линий, а заменяет его фаской. Область значений miterLimit [1;+∞[, т.е. до MaxReal value; На практике в приложениях величина задаваемого miterLimit'а ограничена — в CDR по-моему что-то ок. 1146. Такое ограничение на величину miterLimit'а позволяет избежать ситуаций, когда «рог» будет простираться до орбиты Сатурна и даже немного дальше: для толстых линий, сходящихся под очень маленьким углом.
 

Вложения

  • EPS-Export.png
    EPS-Export.png
    5.9 КБ · Просм.: 528
Ответ: Проблемы с eps

1. Спасибо за детальное объяснение.
2. Ставить размер страницы по размеру макета действительно поможет. Но увы усложнит работу большинству корелитов. Мне к примеру нетрудно. Я обычно так и делаю. Заставить дизайнеров всегда соблюдать это правило вот проблема:)
3. Блиды отключены
 
Ответ: Проблемы с eps

э-ээ, %%BoundingBox и %%HiResBoundingBox вообще-то разные вещи. То что корыл лепит вещественные числа в %%BoundingBox, даже в старших версиях, и не пользуется вообще %%HiResBoundingBox, нарушая спецификацию EPSF, на то он и корыл (а, блин, я же в ихней ветке. Всё, заткнулся)
В PostScript'е габариты этого объекта будут заданы именно по габаритам контура, т.е. без учета толщины обводки.
?? это какие программы так епсы сохраняют?
 
Ответ: Проблемы с eps


Не по теме:
Ничего, ничего Arkady тоже не фанат корела. Да и Zest его бодал. Ленивый только не пнул бедный корел:)
 
Ответ: Проблемы с eps

1998 сказал(а):
?? это какие программы так епсы сохраняют?
Имеется в виду следующее:
Код:
%!PS-Adobe-3.1
newpath
	70 70 35 0 360 arc	% Создаем невидимую дугу
				% с центром в точке (70;70) и R=35 и охватом 360°
	closepath		% делаем дугу окружностью, замыкая ее
	20 setlinewidth 	% задаем толщину обводки 20 pt
	0 0 0 setrgbcolor	% задаем крайне черный цвет обводки
stroke				% обводим окружность черной толстой линией
«Внешнему наблюдателю» будет видно черное кольцо с наружным диаметром равным сумме диаметра образующего контура (70 pt) и толщине обводки (20 pt) — т.е. 90 pt. В EPS'е (создатель — CorelDRAW) будет выставлен %BoundingBox: с размером «окна видимости» 90 pt x 90 pt, хотя реально объект — окружность, имеет размер 70 pt x 70 pt. И если этот PS преобразовать в PDF или прочитать (выполнить) Illustrator'ом, то размер объекта будет 70 pt x 70 pt, а остальное — видимость.
 
Ответ: Проблемы с eps

мне кажется что я могу написать макрос в пару страниц, который в один клик будет править BoundingBox. Если макрос, то такой что будет заменять File-Export->EPS (фирменный диалог остается) и созданный eps автоматически будет правится. Мне нужно описание тех действий (с примерами чисел "до" и "после"), что обычно предпринимаются вручную.
 
Ответ: Проблемы с eps

Вся закавыка в том, что неизвестны «правильные» числа *(
Упростит решение суммирование BBOx'ов каждого из экспортируемых объектов — но тут опять же надо учитываеть толщины обводок и т.п. Текст при этом необходимо превращать в кривые, т.к. BBox текста больше, чем OutLin'ы составляющих его глиф.
Но как быть с miterLimit'ными «рогами» (например)?
 
Ответ: Проблемы с eps

в Х3 есть команда Shape.GetBoundingBox которая дает корректный размер и с учетом рогов

Значит, BoundingBox прописанный корелом при экспорте можно просто игнорировать? То есть макрос должен посчитать сам BoundingBox и HiResBoundingBox и вписать их.

Еще что-то нужно бывает править?
 
Ответ: Проблемы с eps

Вы обхохочетесь но вот епсы то как раз (столько копий сломано) в индез вставляются правильно. Да фиг с ними с епсами:) А вот в ПДФ очень бы хотелось такой макрос.

Зато епсы в илл вставляются криво. Что наводит на мысль. Правильный размер там где-то есть. И дело не столько в кореле сколько в илле с индезом.

Править еще? Ну меня вот растраивает отсутствие галочки Always Overprint Black при экспорте в ПДФ. В епс она есть, но епсы цветные это... ну по ряду причин я больше с ними не связываюсь. ПДФ гораздо лучше. но оверпринта нету. Приходится в питстоп лазить.
 
Ответ: Проблемы с eps

Тогда давайте примеры с конкретным pdf желательно, "до" и "после" - кореловский по дефолту и правильный после ai/distill/как угодно
 
Статус
Закрыто для дальнейших ответов.