(translator=roro, ChineseSource=roro-20020703-5.5\printopt.html, EnglishSource=c:\matlabr12\help\techdoc\ref\printopt.html)
MATLAB Function Reference    

print, printopt

產生電腦資料列印稿(hardcopy)的輸出

Syntax

Description

printprintopt 產生資料列印稿的輸出。所有 print 指令的參數為非必須的,可依任何順序或組合使用它們。

print 將現行的圖表內容,包括任何表示使用者介面控制的點陣圖,送至使用裝置及 printopt 定義的系統列印指令之印表機。

print -device 定義列印驅動(如顏色附錄)或圖像檔案格式(如 TIFF)。若 -device 設定成 -dmeta-dbitmap(僅在視窗系統出現),圖表將存入 clipboard 中。若省略 -device,列印將使用放置於 printopt 的預設值。在 Devices 這一部份列出了所有支援的裝置型態。

print -options 定義修改 print 指令的動作選項。(舉例來說,-noui 選項抑制使用者介面的列印。)在 Options 這一部份列出了提拱的選項。

print filename 將輸出標明為檔名為 filename 的檔案。若 filename 並沒有副檔名,則 print 將會依據其格式來設定副檔名(如 .ps.tif

print(...) 為列印的函數格式。可讓您傳送任何輸入參數的變數。通常用來傳送檔名或頭銜(handles)。可參考範例中的 Batch Processing。

[pcmd,dev] = printopt 回傳含有現在系統取決之列印指令及輸出裝置的字串。printopt 為一 M 檔案被 print 用來產生資料列印稿的輸出。可編輯 M 檔案 printopt.m 來設定預設的印表機型態。

pcmddev 為平台取決的字串。pcmd 含有 print 用來將檔案送至印表機的指令。dev 含有針對 print 指令的印表機驅動程式及圖像格式。其預設值取決於使用的平台。

平台
系統列印指令    驅動程式或格式
UNIX
lpr -r -s
-dps2
VMS
PRINT/DELETE
-dps2
Windows
COPY /B %s LPT1:
-dwin

Drivers

下表列出完整 MATLAB 所支援的印表機驅動程式。若沒有先定義驅動程式,MATLAB 使用先前表格顯示的預設值。

有些驅動程式是由 GhostScript 所提拱,最後一欄表示當 GhostScript 使用時的值。

有些驅動程式並不對所有平台提拱。此會在表格的第一欄註明。

Printer Driver
MATLAB call
Ghost-
Script

Canon BubbleJet BJ10e
print -dbj10e
3

Canon BubbleJet BJ200 color

print -dbj200
3
Canon Color BubbleJet 600/4000/70 color (not supported on DEC Alpha)
print -dbjc600
3
DEC LN03
print -dln03
3
Epson and compatible 9- or 24-pin dot matrix print drivers
print -depson
3
Epson and compatible 9-pin with interleaved lines (triple resolution)
print -deps9high
3
Epson LQ-2550 and compatible; color (not supported on HP-700)
print -depsonc
3
Fujitsu 3400/2400/1200
print -depsonc
3
HP DesignJet 650C color (not supported on Windows or DEC Alpha)
print -ddnj650c
3
HP DeskJet 500
print -ddjet500
3
HP DeskJet 500C (creates black-and-white output)
print -dcdjmono
3
HP DeskJet 500C (with 24 bit/pixel color and high-quality Floyd-Steinberg color dithering) (not supported on Windows or DEC Alpha)
print -dcdjcolor
3

HP DeskJet 500C/540C color (not supported on Windows or DEC Alpha)

print -dcdj500
3
HP Deskjet 550C color (not supported on Windows or DEC Alpha)
print -dcdj550
3
HP DeskJet and DeskJet Plus
print -ddeskjet
3
HP LaserJet
print -dlaserjet
3
HP LaserJet III
print -dljet3
3
HP LaserJet IIP
print -dljet2p
3
HP LaserJet+
print -dljetplus
3
HP PaintJet color
print -dpaintjet
3
HP PaintJet XL color
print -dpjxl
3
HP PaintJet XL color
print -dpjetxl
3
HP PaintJet XL300 color (not supported on Windows or DEC Alpha)
print -dpjxl300
3
HPGL for HP 7475A and other compatible plotters. (Renderer cannot be set to Z-buffer.)
print -dhpgl
3
IBM 9-pin Proprinter
print -dibmpro
3
PostScript black and white
print -dps

PostScript color
print -dpsc

PostScript Level 2 black and white
print -dps2

PostScript Level 2 color
print -dpsc2

Windows color (Windows only)
print -dwinc

Windows monochrome (Windows only)
print -dwin

Graphics Format Files

定義檔名及檔案格式以便儲存圖表時能存至對應的圖像格式檔案。如要設定內建 MATLAB 格式的輸出檔案解析度,使用 -r。(例如 -r300 設定輸出的解析度為每英吋 300 點。)-r 並不支援 GhostScript 格式。

下表顯示 MATLAB 支援的輸出格式及設定的使用。在一些情況中,MATLAB 及 GhostScript 皆提拱相同的格式。第一欄在括號中表示其支援 "MATLAB" 或 "GhostScript"。第三欄表示那些作業平台支援該格式。

File Format
Option String (Command line only)
Platform Availability (UNIX or PC)
BMP (Ghostscript) 24-bit BMP
-dbmp16m
PC only
BMP (Ghostscript) 8-bit (256-color) BMP *this format uses a fixed colormap
-dbmp256
PC only
BMP (MATLAB) 24-bit
-dbmp
PC only
EMF (MATLAB)
-dmeta
PC only
EPS (MATLAB) black and white
-deps
Both
EPS (MATLAB) color
-depsc
Both
EPS (MATLAB) Level 2 black and white
-deps2
Both
EPS (MATLAB) Level 2 color
-depsc2
Both
HDF (MATLAB) 24-bit
-dhdf
PC only
ILL (Adobe Illustrator) (MATLAB)
-dill
Both
JPEG (MATLAB) 24-bit
-djpeg
Both
PBM (Ghostscript) (plain format) 1-bit
-dpbm
UNIX only
PBM (Ghostscript) (raw format) 1-bit
-dpbmraw
UNIX only
PCX (Ghostscript) 1-bit
-dpcxmono
PC only
PCX (Ghostscript) 24-bit color PCX file format, three 8-bit planes
-dpcx24b
PC only
PCX (Ghostscript) 8-bit Newer color PCX file format (256-color)
-dpcx256
PC only
PCX (Ghostscript) Older color PCX file format (EGA/VGA, 16-color)
-dpcx16
PC only
PCX (MATLAB) 8-bit
-dpcx
PC only
PGM (Ghostscript) Portable Graymap (plain format)
-dpgm
UNIX only
PGM (Ghostscript) Portable Graymap (raw format)
-dpgmraw
UNIX only
PNG (MATLAB) 24-bit
-dpng
Both
PPM (Ghostscript) Portable Pixmap, plain format
-dppm
UNIX only

PPM (GhostScript) Portable Pixmap raw format

-dppmraw
UNIX only
PPM (GhostScript) Portable Pixmap, plain format
-dpcx24b
UNIX only
TIFF (MATLAB) 24-bit

-dtiff or -dtiffn

Both
TIFF preview for EPS Files
-tiff
Both. Only valid for EPS files.

TIFF 影像格式在所有的平台上文字處理器的輸入影像幾乎都支援。JPEG 為一高度壓縮的格式其在所有平台上的影像處理及網際網路的 HTML 文件都支援。若要開啟這些格式,MATLAB 使用 Z-buffer 開啟並將其結果存入定義的檔案中。

Options

下表列出可對 print 做定義的選項。第二欄也顯示了包含更多細節的章節。這些章節列在 Printing and Exporting Figures with MATLAB 中。

選項
敘述
-adobecset
僅用於 PostScript。使用 PostScript 預設的字元設定。可參考 Early PostScript 1 Printers。
-append
僅用於 PostScript。將圖表併入已存在的 PostScript 檔案。可參考 Appending Figures to a PostScript File
-cmyk
僅用於 PostScript。使用 CMYK 而不是 RGB 列印。可參考 Creating CMYK Output
-device
使用印表機驅動程式。可參考 Specifying a Printer Driver
-dsetup
顯示 Print Setup 對話盒。
-fhandle
列印出圖表的頭銜。注意不能同時定義此選項及 -swindowtitle 選項。可參考 Which Figure Is Printed
-loose
僅用於 PostScript 和 GhostScript。對於 PostScript 使用不嚴謹約束的盒。可參考 Producing Uncropped Output
-noui
抑制使用者介面控制的列印。可參考 Excluding User Interface Controls from Output
-OpenGL
使用 OpenGL 演算法執行求得圖像。注意不能同時用 -zbuffer-painters。可參考 Setting the Rendering Method
-painters
使用 Painter's 演算法執行求得圖像。注意不能同時用 -zbuffer-OpenGL。參考 Setting the Rendering Method
-Pprinter
僅用於 UNIX。定義欲使用的印表機名。可參考 Specifying a Printer
-rnumber
僅用於 PostScript  GhostScript。定義每英吋多少點的解析度。可參考 Setting Resolution
-swindowtitle
定義欲列印之 Simulink 系統視窗的名稱。注意不能同時定義此選項及 -fhandle 選項。可參考 Which Figure Is Printed
-v
僅用於 Windows。顯示視窗 Print 對話盒。v 代表 "verbose mode."
-zbuffer
使用 Z-buffer 演算法執行求得圖像。注意不能用 -OpenGL-painters。可參考 Setting the Rendering Method

Paper Sizes

MATLAB 支援不少標準的頁面尺寸。可依下表從 Print 對話盒設定圖表的 PaperType 屬性或選擇支援的頁面列印尺寸。

Property Value
Size (Width-by-Height)
usletter
8.5-by-11 inches
uslegal
11-by-14 inches
tabloid
11-by-17 inches
A0
841-by-1189mm
A1
594-by-841mm
A2
420-by-594mm
A3
297-by-420mm
A4
210-by-297mm
A5
148-by-210mm
B0
1029-by-1456mm
B1
728-by-1028mm
B2
514-by-728mm
B3
364-by-514mm
B4
257-by-364mm
B5
182-by-257mm
arch-A
9-by-12 inches
arch-B
12-by-18 inches
arch-C
18-by-24 inches
arch-D
24-by-36 inches
arch-E
36-by-48 inches
A
8.5-by-11 inches
B
11-by-17 inches
C
17-by-22 inches
D
22-by-34 inches
E
34-by-43 inches

Printing Tips

此一部份包含了關於特殊列印問題的訊息。

Figures with Resize Functions

當列印的圖表含有一針對圖表 ResizeFcn 定義的回收程序時,print 指令將會產生一警告訊息。如要避免警告,可設定圖表 PaperPositionMode 屬性改成 auto 或選擇在 File->Page Setup... 對話盒中的 Match Figure Screen Size

Troubleshooting MS-Windows Printing

當使用 MS-Windows 的印表機驅動程式而遇到像分割妨害、一些保護錯誤、應用錯誤或輸出不存在等問題時,可試著用下列方法解決:

Printing Thick Lines on Windows95

由於 Windows95 的限制,MATLAB 對於列印線的設定為下列兩者之一:

若建立一比一像素還粗的線條並使用非實心的型態,MATLAB 將會依定義的型態列印,但寬度為一像素。

然而,可藉由編輯在 Windows 目錄下的 matlab.ini 使得 MATLAB 列印出既粗且有定義型態的線。在此檔案中,找到以下這個部份,

並在此部份將原本的參數,

改成

接著重新啟動 MATLAB。

Printing MATLAB GUIs

當列印包含設定上列關鍵屬性的 MATLAB uicontrols 之圖表視窗,則可以取得較好的結果:

Notes on Printing Interpolated Shading with PostScript Drivers

MATLAB 可使用插入色彩列印 surface 物件(例如用 surfmesh 產生的圖像)。然而,只有由三角面組成的 patch 物件可使用插入明暗法列印。

列印總是以 RGB 的色彩輸出,而不是色盤的色彩。此意謂著,若使用索引色彩及插入面色彩,則列印出來的結果可能和螢幕上的顯示不同。

PostScript 檔案針對包含圖像物件頂端之色彩資訊的插入明暗法而產生,並需要印表機來執行內插的計算。這可能會耗上大量的時間,故印表機可能實際上在完成列印工作前先 "暫停"。另一針對此問題的解決辦法是插入資料並產生大量的表面,隨後即被平坦地遮蔽著。

為了確定列印輸出和您在螢幕上所看到的相對應,可使用 -zbuffer 選項。為了取得較高的解析度(例如為了讓字型更清楚),使用 -r 選項以增加解析度。然而,在解析度及 PostScript 檔案的大小有個交易關係,在高解析度時檔案通常容量也會很大。預設的 150 dpi 通常已能有相當好的效果。您也可以在列印之前先將圖表的 PaperPositionMode 屬性設定成 auto 或設定 PaperPosition 以減少輸出檔案的尺寸。

注意在一些 UNIX 的環境下,預設的 lpr 指令並不能列印出大於 1 Mbyte 的檔案,除非使用 -s 選項,其在 MATLAB 中是預設值。可參考 lpr 指令的頁面以得到更多的資訊。

Examples

Specifying the Figure to Print

可依定義的圖表頭銜(handles)來列印非當前的圖表。若一圖表其標題為 "Figure No. 2",而它的頭銜為 2,則語法為:

此範例列印出頭銜為 2 的圖表,而不管該圖表是否為現行的圖表。

此範例儲存頭銜為 -f2 的圖表至名為 Figure2 的 PostScript 檔案,其可稍後進行列印。

若圖表使用非整數的頭銜,則使用 figure 指令以取得它的值,而後傳送至函數以當做第一個參數。

也可將圖表的頭銜視為變數傳送至函數 print。舉例來說,

此範例使用 print 函式使檔名以變數的方式傳遞。

(因為檔名已定義,故圖表將會列印至該檔案。)

Specifying the Model to Print

為了要列印非當前的 Simulink 樣式,使用 -s 選項再加上視窗的標題。舉例來說,此命令列印出 Simulink 視窗其標題為 f14

若視窗標題包含任何的空白,則必須呼叫 print.的函數形式而不是指數形式。舉例來說,此命令儲存 Simulink 視窗標題 Thruster Control

要列印現行的系統使用則:

關於列印 Simulink 視窗特殊問題的資訊,可參考 Simulink 文件。

此範例列印出明暗變化的表面平面圖。設定現行圖表的 (gcf) PaperPositionMode 屬性至 auto 使得您可以重新變更圖表視窗的尺寸並列印出在螢幕上所見的視窗大小。參考 Options 及前面關於 -zbuffer 和 -r200 選項的資訊。

Batch Processing

可使用 print 內的函式傳送包含檔名的變數。舉例來說,這個 for 迴圈開啟一連串的圖像並每一個不同檔名的圖像。

Tiff Preview

指令:

用 300 dpi,色彩壓縮 PostScript 檔案格式,檔名為 picture1.eps儲存現行的圖表。-tiff 選項開啟一 72 dpi TIFF 的預看,當讀入 EPS 檔案時,許多文字處理應用程式可顯示於螢幕上。這可讓您在螢幕上先預視檔案接著以 300 dpi的解析度於 PostScript 印表機中列印出文件。

See Also

orient, figure


 primes printdlg