2013-07-18 58 views
2

我是PostScript語言的新手。現在我使用ps來打印點的縮放圖像。 ps中的默認dpi是72dpi,我想知道如何將其更改爲600dpi。如何更改PostScript中的dpi

我寫的代碼如下,它是一個點的正方形。

%%Dot_unit 
%%position setting 
100 200 translate 
%%size setting  
52 49 scale 
%%parameter setting:width height bit matrix 
52 49 1 [52 0 0 -49 0 49] 
%%dot unit discribe 
{< 
fff7ff7ff7ff7f 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
fffff7ffff7fff 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
fdfffffdffffff 
ffffffffffffff 
ffffffffffffff 
7ff7ff7ff7ff7f 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
ffff7ffffff7ff 
ffffffffffffff 
ffbfffffbfffff 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
7ff7ff7ff7ff7f 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
fffffff7ffffff 
ffffffffffffff 
fffffbffffffff 
ffffffffffffff 
ff7fffffffffff 
ffffffffffdfff 
ffffffffffffff 
ffffffffffffff 
7ff7ff7ff7ff7f 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
ffffffff7fffff 
ffffffffffffff 
ffffffffffffff 
ffffffffffffff 
ff7fffffffffff 
7fffdfffffdfff 
ffffffffffffff 
ffffffffffffff 
fff7ff7ff7ff7f 
>} 
image 
showpage 

回答

2

PostScript中沒有默認dpi。用戶空間的設置使得座標系統爲72個單位,但實際上這不是一回事。如果你想要一個不同的用戶空間,那麼你改變CTM(當前變換矩陣)。所有座標系統的改變都依賴於矩陣的變化,通常是CTM。

在圖像的情況下,圖像操作符將圖像映射到1單位正方形區域,然後使用CTM通過圖像矩陣呈現到畫布。在上面的例子中,圖像在x方向縮放了52倍,在Y方向縮放了49倍。如果你改變比例或圖像矩陣,你會得到不同的結果。

圖像覆蓋的區域與設備無關,打印時用戶空間對象將呈現在設備空間中(使用設備矩陣)。因此,如果您的打印機是600 dpi或2400 dpi,則圖像仍將覆蓋輸出頁面上的相同區域。

所有你需要擔心的是你想要覆蓋的區域,你不需要關心解決方案。

+0

謝謝!我根據你的建議解決了這個問題。 –

+0

有一種ghostscript'-r'選項,它可以改變dpi,至少在使用圖像文件設備時。 –