| 
 
GiriþBu makale PostScript için hazýrladýðýmýz
makaleler serisinin ilk kýsmýdýr.Buradaki tem el amaç
bu yazýlým hakkýndaki her ayrýntýyý
öðretmek deðil ,PostScript proðramlama dilini ilginç
ve eðlenceli bulan kimselere gerekli bilgileri içren döküman
hazýrlamaktýr.Her nekadar bu konu üzerinde teknik bilgiler
hazýrlamaskta konu ile ilgili gerekli ve önemli bilgileri sunmaya
çalýþacaðýzçPostScript'in ardýndaki temel düþünce 20 yýl
önce John Gaffney tarafýndan  Evans & Sutherland Computer
Corporation' da atýlmýþtýr.Baþlangýçta
quotDesign System" olarak biliniyordu ama daha sonra  Adobe Systems
Incorporated tarafýndan PostScript adý altýnda sayfa
düzenlenmesi için bir platform ve bagýmsýz bir
araç olarak geliþtirildi. Adobe Systems Incorporated 
Chuck Geschke ve John Warnock tarafýndan 1982' de biçimlendirildi..
C. Geschke ve  J. Warnock , Doug Brotz, Billi Paxton, ve Ed Taft 'ýn
önemli katkýlarda bulundugu bu dile yeni ve tamamlayýcý
bir model getirme yükümlülüðünü üstlenmiþlerdir.Her
nekadar günümüzde birçok kullanýcý
tarafýndan kullanýlmasada önemli hazýrlýk
araçlarý dökümanlarýndandýr.Yetenekleri
yüksek düzeyede olmasýna ragmen bu dil, iþin ayrýntýlarýna
girmek istemeyen birçok kullanýcý tarafýndan
tercih edilmemekle beraber bu kullanýcýlar "Ne görürsen
onu yap" felsefesiyle hareket edip son kullanýcý yönelimini
araçlarýný tercih etmektedirler.Gerceði söylemek
gerekirse bir cok  WYSIWYG araçlarý ,belgeleme ürünlerini 
sürdürmek yada yazdýrmak için PostScript dosya
formatýný kullanmaktadýrlar.Bu anlamda Postscript
dili bize renklendirme , imaj oluþumu ,renk ayrýmý
,animasyon gibi bilgisayarla ilgili birçok meslekte bize eski bir
arkadaþ ve güçlü bir asistan olarak yardým
etmektedir.Diðer yandan , eðer gerçekten bu dili programlama
için ögrenmek istiyorsanýz baþladýðýnýzda
onu çok zor bulacaksýnýz 
 PostScript'in komutlarý gerçek tercümalar aracýlýðýyla
uygulanmaktadýr.Bunlarýn arasýnda en çok bilinen
yazýlým bedava olarak internette dagýtýlmaktadýr.Bunun
ismi Alaaddin Enterprise'dan esinlenerek "ghostscript" olarak adlandýrýlmýþtýr.Yine
ayný organisazyon tarafýndan oluþturulan "ghostview"
adlý arayüz de mevcuttur.Ayný zamnda GNU projesi   
ghostscript için kendi versiyonlarýna sahiptir.Bütün
bunlat Linux oratmýnda mevcuttur ve ana Linux daðýtýcýlarýnda
kurulu olarakbulunmaktadýr.Burda  hernekadar örnek programlar
diger tercümanlar aracýlýgýyla gercekleþtirilmiþ
olsalarda , biz  ghostscript  ve onun temel parçalarý
ve özellikleriyle ilgilenmekteyiz.Farz edelimki  X Window 
ortamýnda bir  xterm penceresi açalým.Eðer 
ghostscript' i kullanmak istiyorsak her komutu yada komut grubunu ; komut
yazdýktan sonra komut satýrýnda (at the command prompt)
 Initializing... done. Ghostscript 2.6.2 (4/19/95) Copyright (C)
1990-1995 Aladdin Enterprises, Menlo Park, CA. All rights reserved. Ghostscript
comes with NO WARRANTY: see the file COPYING for details.
GS>
 
 Bu hazýr komut  görünürken ayný zamnada
özel bir boþ pencere açýlacaktýr.Eðer 
ghostscript ortamýnýn gitmesine izin vermek istersen yapmamýz
gereken  GS> komutunu kullanmaktýr.Ayrýca 
EOF (Ctrl-D)de ayný amaç için kullanýlabiþlir..
 Ghostscript, komutlarý dosyalardan alarakta uygulayabilir.Bu
durumda bir dosya açýp , isimlendiririz.Örengin sample.ps
.Ghoststscrýpt'te bulunan  tum komutlarý bu dosya içinde
kullanabiliriz.Eðer aþagýdaki komutu Linux'un xterm penceresinde
yazarsak programýn tüm iceriði ve özel komutlarý
ardarda  ghostscript tarafýndan uygulanmýþ olur 
 gs sample.ps
 ve görüntü ghostscript penceresinde belirir.(Eger tabiki
program görüntü yaratmak amacýyla hazýrlnamýþ
ise.Cünki PostScript diðer matematiksel hesaplamalar ve diger
alanlarda da kullanýlabilir.)Bu serinin ilerki makalelerinde bunlardan
bahsedecegiz.Eðer program 1 sayfadan daha fazla sayfa üretiyorsa
, ghostscript penceresi ilk sayfaayý gösterir ve bir sonraki
sayfa için enter tuþuna basmak yeterli olur.
 PostScript  Reverse Polish Notation'ý kullanýr. (RPN
-  HP cep hesap makinesi gibi ).Diðer bir deyiþle bir komut
için gerekli olan parametreler komuttan önce verilir.Komutlar
birbirinden boþluklarla ayrýlýr. Yýðma operasyonlarini
(stack operations)bilgi hazýrlamada ve komut uygulamalarýnda
kullanýr.PostScript  kullanýmýnda mevcut dört
tane yýðýn (stack) vardýr : the operand (?), sözlük
, uygulama ve grafik . The operand stack  (?) keyfi olarak  PostScript
elemanlarýný tutar ve PostScript operatörlerinin uygulanmasýna
sebep olurlar.Aritmetik oparatörlerden birkaç örnek verebiliriz.
 20 30 add 10 sub sonuç 40 eder .20 ile 30 'u toplarsak 50 ve bunddanda 10 nu çýkarýrsak
sonuç 40 olur.Bölme ve çarpmada ayný þekilde
yapýlýr.'='  bu iþaret bir prosedürü
çaðrýþtýrmaktadýr.Bu prosedür
the operand stac'den (?) aniden gelen bir eleman ve bu elemanýn
standart dosyaya yazmýþ olduðu sonuç metnidir.Prosedür
yeni bir sýra tarafýndan takip edilir. ==    
benzer bir göreve sahiptir ama bu ,standart dosyaya dizimsel bir þekilde
þunuþ metnini yazar.Bu serinin ilerki makalelerinde yýðýnlar
hakkýnda daha ayrýntýlý bilgi verecegiz. Þekil
çizerken  PostScript'i nasýl kullanýrýz
?
PostScript  ile cizim yaparken ilk önce sayfanýn
geometrik yapýsýnýn nasýl dizayn edilmesi gerektigini
düþünmeliyiz .PostScript dilinde noktalarýn sayfa
üzerindeki yerleri bir inç'in 70 de biri olan birimlerle gösterilir.Dikdörtgen
sayfanýn solalt köþeþinde (0,0) noktalarýnýn
bulundugu kabul edilir.Sayfa 612 ve 792 uzunluklarýna göre
tanýmlanýr.Bu uzunluklar mektup tipi sayfalar içindir.Diðer
mümkün olan sayfa ölçüleri
 not için 540 and 720 
yasal (legal) olarak 612 and 1008
 a4 için 595 and 842 .
 Bunlar düzenli gs komutlarýdýr.'a4' komutu çizim
kagýdýný tekrar düzenler ve uygun ölçüye
getirir.
 Sayfa ölçütünün tanýmý adý
gs_statd.ps olan ilk baþtaki dosyadan bulunabilir.Slacware icin /usr/lib/ghostscript
içinde bulunabilir.Bu dosya üzerinde uygun eklemeler ve deðiþiklikler
yaparak standart olmayan sayfalar tanýmlýyabiliriz.Ýleriki
makale serisinde bundan bahsedeceðiz.Burdaki sunumda  sayfayý 
mektup (letter ?) tipi olarak ele alacaðýz.
 Sayfayý istenen ölcülerde aldýktan sonra ikinci
adýmda imleç'i (cursor) çizimin en baþýna
yerleþtiririz.Bu 
 x y moveto
 Komutuyla gerçekleþtirilir.Burada x ve y noktanýn
yatay ve düþek bileþenlerini gösterir. x ve y dogal
sayýlar olup pixel biçimindedirler.Görgünüz
gibi  PostScript dilinin    fonksiyonelC ,Fortran gibi
gibi programlama dillerinden biraz farklýdýr. moveto
komutu hareketi saðlar, baþka bir deyiþle imleç
(cursor)'ýn verilen x y noktalarýna taþýr.Parametreler
ardarda ilk yýgýna verildiðinden PostScript bir tane
yýgýn kullanýr.Sonra komut verilir.Yýðýna
girsdiði zaman önceki iki parcanýn parametresi olarak 
onu kabul eder.Burda sözdizimi daha önce C ,Fortran gibi programlama
dillerini bilen kullanýcýlar tarafýndan farklý
bulunabilir.Bu nedenden dolayý gu konuyu burda vurguladýk.Sonuç
olarak þunu söyleyebiriz bazý parametrelere ihtiyacý
olan her komut kendi parametresinden sonra verilmelidir.
 Þimdi þekli çizmeye hazýrýz.Basit bir
þekil olan düz çizgiyle baþlayalým .Bunu
çizebilmek için , yapmamýz gereken aþaðýdaki
komutu yazmaktýr.
 xx yy lineto 
 Burada xx ve yy düzçizginin son noktalarýnýn
yerini götermektedir.Böylece , bu komutla x y 'den xx yy'ye bir
düz çizgi çizmiþ oldukBu aþagýda
verilen bilgi yardýmýlada yapýlabilirdi.Aþaðýdaki
program sample1.ps adlý dosya olarak kaydedilmiþtir.
 newpath
100 100 moveto
 300 100 lineto
 300 250 lineto
 100 250 lineto
 100 100 lineto stroke
 Hernekadar her komutu ayrý satýrlarda vermiþ olsakta
bu gerçekten gerekli birþey degildir.Daha öncede belirttiðimiz
gibi ayný satýr üzerinde aralarýnda boþluk
býrakarakda ardarda komutlar verebiliriz.
 PostScript  de diger proðramlama dilleri gibi çeþitli
kolaylýklar göstermektedir.Bütün materyal bir satýr
içeresinde bir yüzde iþaretini takip ediyorsa  (
percentage sign ????) derleyici (interpreter) tarafýndan derlenir.
 newpath
% Cursor initialization
 100 100 moveto
 % Drawing the rectangle
 300 100 lineto
 300 250 lineto
 100 250 lineto
 100 100 lineto stroke
 Eðer þimdi  gs sample1.ps komutu xterm penceresinde
yazýlýrsa herzamnaki  ghostscript  penceresinde
ðörmek istediðimiz diktörtgeni bulabiliriz.gs tercümanýna
( interpreter) görüntü sýrasýnda herzaman
ihtiyaç duymayacaðýz.Aslýnda  (sample1.ps)
run komutu da  GS> ile ayný þeyi yapabilir.
stroke komutu tercümana þekli çizmesini
söyler.Yukarýdaki program için  ghostscript
penceresi yatayda ve düþeyde 200 ve 150 noktalarýna sahip
diktörgeni gösterir.
 Düz çizgiler yatay ve düþey bileþenlere
ihtiyac duymazlar.Her doðrultuda oluþtulabilirler.
 Ýlerde göreceðiz ki ghostscript vasýtasýyla
sonucu gösterdiðimizde bu program bir üçgen oluþturablir.moveto
ve lineto komutlarýyla bölünmüþ ve kesik çizgilerden
oluþan her türlü þekli çizebiliriz.
 Yukarýdaki þkeilleri oluþturabilmek için iki
komut kullanýlmasý gerekmektedir.Bunlar rmoveto ve rlýneto
komutlarýdýr.iki parametreye ihtiyaç duyarlar ve aþaðýdaki
þekilde kullanýlýrlar 
 x y rmoveto
x y rlineto
 Burda x ve y yatayda ve düþeyde baþlangýç
noktalarý arasýndaký uzaklýklarý gösterir.'r'
rmove ve rlineto komutlarýnda  'relative' anlamýnda
kullanýlmýþtýr.Diðer bir deyiþle ilk
komut imleçi ilk konumdan x birim yatada , y birim de düþeyde
hareket ettirir.Ýkinci komut benzer þekildedir ama çizgi
çizer ve sadece hareket eden imleçi deðil de hareket
etmeyenleride bitiþ noktasýna taþýr.Bunlar baþlangýç
noktalarýný referans noktalarý olarak aldýðýmýzda
kullanýlan komutlar ve paremetrelerdir. 
 yukarýdaki bütün örnekler için çizgi
geniþliði standart olarak 1 pixeldir.Bununla birlikte kullanýcý
çizimin herhangi bir yerinde çizgi geniþliðini
tanýmlayabilir.Bunu aþagýdaki komut yardýmýyla
saðlar.
 x setlinewidth
 Burada x pixel cinsinden çizgi geniþliðini göstermektedir.Bu
komutun etkisi program içinde bir sonraki çizgi geniþliði
tanýmlanana kadar devam eder.Çizgi geniþliðinin
tanýmýnda kullanýlan x degeri için bir kýsýtlama
söz konusu deðildir.
 Tabiki PostScript dilinde çizim düz çizgilerle sýnýrlý
deðildir.Dairesel yaylar da çizilebilir.bunun için aþaðýdaki
komut kullanýlýr.
 x y r a b arc
 Burda  x, y, r, a ve b  sýrasýyla
daire yayýnýn merkezinin yatay ve düþey koordinatlarýný
,daire yayýnýn çapýný,yatya eksenle
pozitif yönede yapýlacak olan açýnýn baþlangýç
ve bitiþ degerlerini ifade etmektedir.Açýlas saat yönünün
ters yönünde ölcülür.Eðer yayýn baþlangýç
noktasý imlecin o anki noktasý deðilse , imlecin o anki
noktasý ile yayýn baþlangýç noktasý
arasýnda bir düz çizði eklenir.Bunu daha iyi anlayabilmek
için aþaðýda gösterilen PostScript programýna
bir bakmamýz gerekir.
 3 setlinewidth
200 200 moveto
 100 200 100 0 75 arc
 stroke
 300 300 moveto
 400 500 200 20 50 arc
 stroke
 Bundan dolayý , eðer þeklimizde yukarýdaki gibi
fazladan bir çizgi istemiyorsak imleci(cursor) baþlangýç
noktasýna yerleþtirmede dikkatli olmalýyýz..Bununla
birlikte bu etkiden kurtulabilmenin baþka yoluda mevcuttur.Aslýnda
mevcut noktaya deðer vermeyebiliriz.Bir baþka deyiþle yolun
baþlangýcýnda hiç bir deðer yoktur.Ýmlecin
yeri için hiçbir ayrýn yoktur.Çizim yalnýz
birkez  bitiþ noktasýndan baþlatýlýrsa
genel nokta halini alýr.Eðer newpath komutu kullanýlýrsa
PostScript imleç noktasý için olan ayrýmý
siler ve ve ona sanki çizim o uzaklýktan baþlýyacakmýþ
gibi davranýr.Bundan dolayý yukarýdaki program, beþinci
satýr yerine sadece newpath komutu içeren bir satýr
koyarak deðiþtirilirse oluþan ekstra çizgi dýþýnda
,yukarýdaki program elde edilir. 
 Bir yola newpath operatörü uygulanarak baþlanýr.Bu
þu anki yolun boþ olduðunu gösterir.Daha sonra bu
yol bazý komutlar uygulanmasýyla oluþturulur.Bu sayade
genel yola bölünmüþ parçalar eklenmiþ
olur. 
 arc komutu dolu bir daire içim kullanýlabilir.0
ve 360 dereceye göre baþlangýç ve bitiþ
acýlarý vermek önemlidir.Eðer bu yeni bir yol altýnda
yapýlýrsa bir çember elde edilir.arc komutu elips
oluþturmak içinde kullanýlýr.Bu PostScript'in
ölçülendirme özelliðini kullanarak elde edilir.Kullanýcý
aþaðýdaki komutu kullanarak yatay ve düþey
birimleri ayrý olarak ölcülendirebilir. 
 x y scale
 Burda x ve y yatay ve düþeyde ölçü çarpanlarýdýr.Bunun
anlamý þudur ; eðer bu çþarpanlar 1'e eþitse
çizimde hiçbir etki göstermemektedirler.Bu ölcülendirmenin
etkisi bir sonraki kullanýlana kadar geçerlidir.Sonra kullanýlan
ölçülendirme komutu bir öncekinin etkisini kaldýrmaz
ama kendi etkilerini onun etkileriyle birleþtirir.Eðer bir önceki
ölçülendirme konut parametreleri  x1, y1 ölçülendirme
çarpanlarýna sahip ve bir sonraki  de x2, y2 ölçülendirme
çarpanlarýna sahip ise , bu komutlarýn birleþtirilimþ
etkileri x1*x2, y1*y2 ölçülendirme çarpanlarýna
sahip olur.Bu nokta  istenmeyen sonuçlarýn görünmemesi
içöin gözden uzak tutulmalýdýr.Böylece
bazý yollar sayfa yüzeyinden kayabilir.Aþagýdaki
sample4.ps adýyla kaydedilmiþ PsotScript programý ,ölçülendirmeyi
açýklayan bir örnektir. 
 3 setlinewidth
200 200 100 0 360 arc
 stroke
 newpath
 2 1 scale
 200 300 50 0 360 arc
 stroke
 newpath
 1 4 scale
 100 150 40 0 360 arc
 stroke
 Dikkat edelicegi üzere ,ölçülendirme her boyutu
çizgi geniþliklerini içererk etkilemktedir.Bu sepepten
dolayý yukarýdaki programda oluþturulan elipslerin
ve ve çemberlerin çizgi geniþlikleri birbirinden farklýdýr.
 Yay çizimi için PostScript'in iki komutu daha vardýr.Bunlarýn
biri arcn'dir.Aslýnda arcn ile arc aynýdýr.Tek farký
bunun yönünün saat yönünde olamsýdýr.üçünçü
yay çizme komutu ise bitiþ noktalarýnda iki çizgiyle
teðet olan dairesel yaylarý çizer.Komut aþaðýdaki
biçimde kullanýlýr. 
 x1 y1 x2 y2 r arcto xt1 yt1 xt2 yt2
 Burda  xt1, yt1, xt2, yt2 yayýn yatay ve düþey
koordinatlarýný
gösterir, teget  doðrusunun bitiþ noktalarý 
x0, y0, x1, y1 ve x1, y1, x2, y2 noktalarýný
alýrken vede  r yayýn çapýnýn
uzunluðunu gösterir.Eðer yol yeni deðilse yada o anki
nokta yayýn  baþlangýcý ile rastlaþmýyorsa
o anki noktayla birleþen bir çizgi ve yayýn baþlangýcý
yola  eklenmir.Çizimin sonucunda o anki noktalar  xt2,
yt2 olur.
 PostScript  Bezier algoritmasýna da  sahiptir.Bu verilen
bir datayý þekillendirirken yeni ilaveler ve genelleþtirmeler
yapmada etkili olarak kullanýlan bir komuta yandýrýlmýstýr.Bu
komut curveto'dur ve verilen bilgi kümesini genelleþtirirken
yada bilgi ekleme yaparken kullanlýr.Komut aþaðýdaki
gibi kullanýlýr.
 x1 y1 x2 y2 x3 y3 curveto
 Eðri , koordinatlarý x0, y0  genel noktadan
baþlar.Bu, baþlangýç noktasýnda , x0,
y0 ve x1, y1 noktalarý arasýndaki doðruya
tegettir.Bütün bu dört nokta farklý olarak ele alynýr
ve bunlar asýl þekli oluþtururlar. 
 PostScript'
te yazým
 PostScript desk-top oluþturmakta kullanýlan birçok
deðiþik fontlara sahiptir.Postscript'in font oluþturmakta
kullanýlan bazý kolaylýklarý da vardýr.Bunlar
fontlarýn mevcut olduðu yerlerde sözlük yýðýnlarýnýn
tanýmlanmasýyla nyapýlýr.Aþaðýdaki
PostScript programý buna örnek olarak verilebilir. 
 /Times-Roman findfont
15 scalefont
 setfont
 100 500 moveto
 (I love PostScript!) show
 /Times-Italic findfont
 20 scalefont
 setfont
 100 450 moveto
 (I love PostScript!) show
 /Times-Bold findfont
 25 scalefont
 setfont
 100 400 moveto
 (I love PostScript!) show
 /Helvetica findfont
 30 scalefont
 setfont
 100 350 moveto
 (I love PostScript!) show
 /Courier findfont
 35 scalefont
 setfont
 100 300 moveto
 (I love PostScript!) show
 /Helvetica-Bold findfont
 40 scalefont
 setfont
 100 250 moveto
 (I love PostScript!) show
 showpage
 Programdan da çýkarýlabileceði üzere findfont
komutu ile istenilen font yapýsýnaulaþýlabilir.Font'un
ismi /ile baþlar ve bir önceki parametre gibi komuta verilir./
derleyiciye bu deðer yýðýn üzerine olduðu
bibi itmesini söyler.Yýðýn operasyonlarýna
daha ayrýntýlý olarak girdiðimizde bu nokta daha
da açýklýk kazanaçaktýr.komut seçildikten
sonra  scalefont komutuyla ölçülendirilme tanýmlanýr.Ölçülendirme
çarpaný bir önceki sayý olarak bu komuta verilir.Fontun
ölçülendirilmesinden sonra , setfont komutu ileriki kullaným
için fontu hazýrlar.Ýmleci uygun parametrelerle moveto
komutuyla yerleþtirdikten sonra text show komutu için bir
parametreye verilen parantez tarafýndan sarýlýr.Showpage
komutu yazýlmýþ olan materyalin gösterimini bitirir.Yukarýdaki
program farklý njoktalarla yerleþtirilmiþ ayný
text'in farklý tip ve boyutlarýndaki fontlarýný
kullanýr.PostScript için mevcut olan fontlarýn sayýsý
linux sisteminin aðaç yapýsýnda fontlarýn
yerleþim yerlerini araþtýrarak bulunabilir.Text çizgilerle
, eðrilerle ve diðer araçlarla uygun hale getirilebilir.Bundan
dolayý herçeþit yazýmda bu kural olarak sözkonusudur.Bu
sadece þekil ile ilgilidir. 
 
 PostScript'e Boyama
ve Renk Kullanýmý PostScript dili renkli resim yapmada ve þekilleri boyamda birkaç
uygulamayla ile donatýlmýþtýr.Önçelikle
renklendirme methodunun komutlarý ile baþlayalým.PostScript
eger aksi belirtilmedikçe siyah ve beyaz renkleri standart olarak
kullanýr.Bu zamana kadar yaptýgýmýz tüm
programlarýn çýktýlari siyah ve beyazdý.PostScript
'e üç deðiþik renklendirme komutu vardýr.Bunlardan
birincisi rgb renk formatýna dayanýr.Bu formattaki tüm
renkler üç ana renk olan kýrmýzý , mavi
ve yeþilin birleþiminden oluþurlar.Renk bileþimi
0 ila 256 arasýnda deðiþen yogunluk parametleri ile verilir.Yoðunluk
parametresi üç basamklý yüzdelikli sayý
olan 111.223 gibi de verilebilir.Bu nedenle  komutun PostScript tarafýndan
aþaðýdaki biçimde verilmesi beklenir.x y z setrgbcolor
  x,y,z   ifadeleri kýrmýzý
yeþil ve mavi için yogunluk parametreledir.Bu baðlamda
1 0 0 setrgbcolor komutu kýrmýzý rengi , 0 1 0 setrgbcolor
komutu yeþil rengi yaratýr.Siyah renkse her deðerin 1
olmasý durmunda oluþur.Renk kurulum komutu birdaki komuta
kadar tüm boyama ve çizim iþlerine etki eder.Yeni bir
renklendirme kurulumundan sonra bir önceki rek tamamen hakimiyetini
kaybeder.Renklendirme sisteminde kullanýlan rakamlarda bir sýnýrlama
yoktur.Uygun renlendirme sisteminin kullanarak kendi istediniz renkleri
yaratabilirsiniz.bu tamamen size kalmýþ birþeydir. 
 Ýkinci reklendirme sistemi dört renk formatýna dayanmaktadýr.cmyk
renk sistemi diye adlandýrýlýr.Dört ana renk
karýþýmý olan sistemdeki renkler cyan , magenta 
, sarý  ve sýyahtýr.Her rengin 0 ila 1 arasýnda
deðiþen yogunluk deðerlerinin birleþimi ile esas renk
meydana getirilir.Bu komut aþagýdaki biçimde kullanýlýr. 
 w x y z setcmykcolor
  w,x,y,z parametreleri ile cyan, magenta,sarý ve
siyah renklerinin ayrý ayrý yogunluklarý belirlenir.Kesirli
ondalýklý sayýlarda yogunluk parametleri olarakta
kullanýlabilir.Bu komut ayný zamanda bir sonraki renklendirme
komutu kullanýlana kadar etkinligini sürdürür.Yeni
renk belirlendiginde bu bir öncekini etkisiz kýlar(overdominate).Program
içerisinde kullanýlan bu komuttaki rakamlar için bir
sýnýrlama yoktur.
Üçüncü komut aþaðýdaki þekilde
kullanýlýr.
 x y z sethsbcolor
  x, y, z  ifadeleri rengin üç deðiþik
özelliginin yogunluk parametreleri anlamýna gelmektedir.Bunlardan
birincisi rengin ýþýk tayfýndaki (spectrum)
yerini belirten hue'dur.Ýkincisi yoðunluk (saturation) ve üçüncüsü
de rengin parlaklýðýdýr (brightness).Bu 
format tayf içindeki rengin yerleþimi bir adým yolu
ile veya parlaklýgý ve yoðunlugu kontrol edilebilir özellikte
olduðunda seçilir.hsbcolor komutuna aþina olmayan okuyucularýmýza
unix altýndaki xfig uygulamasýna bakmalarýný
oneririz.
 PostScrip'te boyama ile ilgili en önemli komutlar fill ve closepathdir.Aþagýdaki
sample6.ps adlý dosya 
PostScript'eki boyama ile önemli detaylarý açýklamaktadýr.
 1 1 0 0 setcmykcolor
100 100 moveto
 300 100 lineto
 300 250 lineto
 100 250 lineto
 100 100 lineto
 stroke
 1 0.5 0.8 0 setcmykcolor
 5 setlinewidth
 200 200 moveto
 400 300 lineto
 300 300 lineto
 closepath fill
 stroke
 1 0 0 setrgbcolor
 3 setlinewidth
 200 200 moveto
 100 200 100 0 75 arc
 stroke
 newpath
 400 500 200 20 50 arc
 stroke
 0 0 1 0.2 setcmykcolor
 3 setlinewidth
 200 200 100 0 360 arc
 stroke
 1 0 0 setrgbcolor
 newpath
 2 1 scale
 200 300 50 0 360 arc
 gsave fill grestore stroke
 stroke
 0 1 0 setrgbcolor
 newpath
 1 4 scale
 100 150 40 0 360 arc
 gsave fill grestore stroke
 Closepath komutuyla düz bir çizgi yardýmýyla
kapatýlan iki ucu açýkþekil , fill komutu ilede 
mevcut kullanýmda olan renkle doldurulur.
 PostScript'te  ayrýca gri renk tonalarý da mevcuttur.Bu
aþagýdaki komut yardýmýyla saðlanýr. 
 x setgray
 burda x gri renginin tonunu belirler ve degeri 0 ila 1 arasýnda
deðiþir.0 siyaha 1 ise beyaz renge karþýlýk
gelmektedir.Aþagýdaki sample7.ps adý ile kaydedilmiþ
program konu ile ilgili açýklayýcý bilgiyi
sunmaktadýr.
 0.2 setgray
10 setlinewidth
 100 700 moveto
 200 0 rlineto
 stroke
 newpath
 0.3 setgray
 100 600 moveto
 200 0 rlineto
 stroke
 newpath
 0.4 setgray
 100 500 moveto
 200 0 rlineto
 stroke
 newpath
 0.5 setgray
 100 400 moveto
 200 0 rlineto
 stroke
 newpath
 0.6 setgray
 100 300 moveto
 200 0 rlineto
 stroke
 newpath
 0.7 setgray
 100 200 moveto
 200 0 rlineto
 stroke
 newpath
 0.8 setgray
 100 100 moveto
 200 0 rlineto
 stroke
 Sunumumuzu  bitirmeden önce PostScript'i þevkli bir
araç olarak bulan kullanýcýlara daha kapsamlý
ve daha karmaþýk programlar yazmalarýný tavsiye
ederiz.Bu serinin bir sonraki makalesinde PostScript hakkýnda daha
detaylý bilgi bulabilirsiniz.Tüm soru ve önerilerinizi
bekliyoruz.Ýlerki makalelerde bunlara deyinecegiz. 
 Yazar Oliver Thilmaa'a bu makalenin sunumundaki katkýlarýndan
ve yorumlarýndan dolayý teþekkür ederiz.
 
 
 
 
 
 
 
 
 
 |