Исключение nocurrentpoint PostScript

Я разработал функцию, чтобы сделать простой флажок в postscript, но все же он, кажется, не работает. Нет проблем с созданием прямоугольника, но он, кажется, выдает исключение во время написания строк (делая классический X флажка).

/nocurrentpoint in --nocurrentpoint--

Вот мой код

/doMarkedCheckBox {
0.1 setlinewidth
currentpoint
/yIniChk exch def
/xIniChk exch def
xIniChk 
yIniChk
DimChars
DimChars
rectstroke
xIniChk DimChars add yIniChk DimChars add lineto 
0 DimChars 0 sub moveto 
yIniChk DimChars add xIniChk lineto 
stroke
} bind def

Может кто-нибудь объяснить, как это сделать правильно? Заранее спасибо.

1 ответ

Решение

Это именно проблема - после rectstroke Я звоню, чтобы закрыть путь, и у вас нет начальной точки.

Вы можете просто переместиться туда снова, поместив значения в стек и выдав moveto - кажется, что по крайней мере в коде есть ошибка для генерации другой части проверки - и, так как у вас есть квадратный размер в DimChars уже может быть проще в использовании rlineto в этих вопросах.

В общем, если вы замените свои инструкции после rectstroke по этой последовательности вы должны быть хорошими:

    ...
    xInitChk YInitChk moveto
    DimChars DimChars rlineto
    stroke
    XInitChk YInitChk DimChars add moveto
    DimChars DimChars neg rlineto
    stroke
} bind def
Другие вопросы по тегам