我剛剛開始學習PostScript以便爲LaTeX生成圖形,並且我不知道如何將路徑與自身組合起來,因此筆劃只會影響繪製形狀的外邊框。我的代碼如下:PostScript路徑組合
/black { 0 0 0 1 setcmykcolor } def
/gold { 0.02 0.17 0.72 0.05 setcmykcolor } def
newpath
% the center is 1/2w and 1/2h
/cx { 1200 2.0 div } def % center-x
/cy { 600 2.0 div } def % center-y
/r { 600 9.0 div
4 mul
2.0 div } def % star's radius
cx r 0 cos mul add
cy r 0 sin mul add moveto
cx r 144 cos mul add
cy r 144 sin mul add lineto
cx r 288 cos mul add
cy r 288 sin mul add lineto
cx r 72 cos mul add
cy r 72 sin mul add lineto
cx r 216 cos mul add
cy r 216 sin mul add lineto
closepath
gsave
gold fill
grestore
1 setlinewidth
black stroke
繪製筆畫時,將繪製交叉形狀的線條。我想知道是否有辦法只讓形狀的外部邊界受到影響,而不是內部線條。我寧願不必計算形成星形的線相交的位置,即,即保持5條線而不是10條較小的線。
另請注意,我正在學習PS並且不想使用外部程序(請閱讀Illustrator等)。這個問題的目的是建立我對PostScript的知識。
如果有一個操作員來做這件事,那肯定會很好。 「maskpath」對它來說是個好名字。 –
+1 @luserdroog,我也希望有一個'maskpath'運算符。小心組成一個? – Minustar
我不知道我有能力做到這一點。我永遠無法讓我的Weiler-Atherton實施工作。我用'clippath'' reversepath''clip'和'eoclip'嘗試了一些實驗,但我無法獲得形狀的「外部」。但是我發現'clip'後跟'clippath'會讓你獲得Wyatt-Warnock的「縮小」形狀。但它是曲面細分的,不是無縫的;所以它在這裏似乎沒有幫助。 :( –