NPOI列印設定

來源:互聯網
上載者:User

標籤:rsize   ati   reserve   record   代碼   struct   定義   htm   根據   

列印設定主要包括方向設定、縮放、紙張設定、頁面邊界等。NPOI 1.2支援大部分列印屬性,能夠讓你輕鬆滿足客戶的列印需要。

方向設定
首先是方向設定,Excel支援兩種頁面方向,即縱向和橫向。 
在NPOI中如何設定呢?你可以通過HSSFSheet.PrintSetup.Landscape來設定,Landscape是布爾類型的,在英語中是橫向的意思。如果Landscape等於true,則表示頁面方向為橫向;否則為縱向。

縮放設定
這裡的縮放比例對應於HSSFSheet.PrintSetup.Scale,而頁寬和頁高分別對應於 HSSFSheet.PrintSetup.FitWidth和HSSFSheet.PrintSetup.FitHeight。要注意的是,這裡的 PrintSetup.Scale應該被設定為0-100之間的值,而不是小數。

紙張設定
接下來就是紙張設定了,對應於HSSFSheet.PrintSetup.PaperSize,但這裡的PaperSize並不是隨便設定的,而是由一些固定的值決定的,具體的值與對應的紙張如下表所示:

值紙張
1US Letter 8 1/2 x 11 in
2US Letter Small 8 1/2 x 11 in
3US Tabloid 11 x 17 in
4US Ledger 17 x 11 in
5US Legal 8 1/2 x 14 in
6US Statement 5 1/2 x 8 1/2 in
7US Executive 7 1/4 x 10 1/2 in
8A3 297 x 420 mm
9A4 210 x 297 mm
10A4 Small 210 x 297 mm
11A5 148 x 210 mm
12B4 (JIS) 250 x 354
13B5 (JIS) 182 x 257 mm
14Folio 8 1/2 x 13 in
15Quarto 215 x 275 mm
1610 x 14 in
1711 x 17 in
18US Note 8 1/2 x 11 in
19US Envelope #9 3 7/8 x 8 7/8
20US Envelope #10 4 1/8 x 9 1/2
21US Envelope #11 4 1/2 x 10 3/8
22US Envelope #12 4 \276 x 11
23US Envelope #14 5 x 11 1/2
24C size sheet
25D size sheet
26E size sheet
27Envelope DL 110 x 220mm
28Envelope C5 162 x 229 mm
29Envelope C3 324 x 458 mm
30Envelope C4 229 x 324 mm
31Envelope C6 114 x 162 mm
32Envelope C65 114 x 229 mm
33Envelope B4 250 x 353 mm
34Envelope B5 176 x 250 mm
35Envelope B6 176 x 125 mm
36Envelope 110 x 230 mm
37US Envelope Monarch 3.875 x 7.5 in
386 3/4 US Envelope 3 5/8 x 6 1/2 in
39US Std Fanfold 14 7/8 x 11 in
40German Std Fanfold 8 1/2 x 12 in
41German Legal Fanfold 8 1/2 x 13 in
42B4 (ISO) 250 x 353 mm
43Japanese Postcard 100 x 148 mm
449 x 11 in
4510 x 11 in
4615 x 11 in
47Envelope Invite 220 x 220 mm
48RESERVED–DO NOT USE
49RESERVED–DO NOT USE
50US Letter Extra 9 \275 x 12 in
51US Legal Extra 9 \275 x 15 in
52US Tabloid Extra 11.69 x 18 in
53A4 Extra 9.27 x 12.69 in
54Letter Transverse 8 \275 x 11 in
55A4 Transverse 210 x 297 mm
56Letter Extra Transverse 9\275 x 12 in
57SuperA/SuperA/A4 227 x 356 mm
58SuperB/SuperB/A3 305 x 487 mm
59US Letter Plus 8.5 x 12.69 in
60A4 Plus 210 x 330 mm
61A5 Transverse 148 x 210 mm
62B5 (JIS) Transverse 182 x 257 mm
63A3 Extra 322 x 445 mm
64A5 Extra 174 x 235 mm
65B5 (ISO) Extra 201 x 276 mm
66A2 420 x 594 mm
67A3 Transverse 297 x 420 mm
68A3 Extra Transverse 322 x 445 mm
69Japanese Double Postcard 200 x 148 mm
70A6 105 x 148 mm
71Japanese Envelope Kaku #2
72Japanese Envelope Kaku #3
73Japanese Envelope Chou #3
74Japanese Envelope Chou #4
75Letter Rotated 11 x 8 1/2 11 in
76A3 Rotated 420 x 297 mm
77A4 Rotated 297 x 210 mm
78A5 Rotated 210 x 148 mm
79B4 (JIS) Rotated 364 x 257 mm
80B5 (JIS) Rotated 257 x 182 mm
81Japanese Postcard Rotated 148 x 100 mm
82Double Japanese Postcard Rotated 148 x 200 mm
83A6 Rotated 148 x 105 mm
84Japanese Envelope Kaku #2 Rotated
85Japanese Envelope Kaku #3 Rotated
86Japanese Envelope Chou #3 Rotated
87Japanese Envelope Chou #4 Rotated
88B6 (JIS) 128 x 182 mm
89B6 (JIS) Rotated 182 x 128 mm
9012 x 11 in
91Japanese Envelope You #4
92Japanese Envelope You #4 Rotated
93PRC 16K 146 x 215 mm
94PRC 32K 97 x 151 mm
95PRC 32K(Big) 97 x 151 mm
96PRC Envelope #1 102 x 165 mm
97PRC Envelope #2 102 x 176 mm
98PRC Envelope #3 125 x 176 mm
99PRC Envelope #4 110 x 208 mm
100PRC Envelope #5 110 x 220 mm
101PRC Envelope #6 120 x 230 mm
102PRC Envelope #7 160 x 230 mm
103PRC Envelope #8 120 x 309 mm
104PRC Envelope #9 229 x 324 mm
105PRC Envelope #10 324 x 458 mm
106PRC 16K Rotated
107PRC 32K Rotated
108PRC 32K(Big) Rotated
109PRC Envelope #1 Rotated 165 x 102 mm
110PRC Envelope #2 Rotated 176 x 102 mm
111PRC Envelope #3 Rotated 176 x 125 mm
112PRC Envelope #4 Rotated 208 x 110 mm
113PRC Envelope #5 Rotated 220 x 110 mm
114PRC Envelope #6 Rotated 230 x 120 mm
115PRC Envelope #7 Rotated 230 x 160 mm
116PRC Envelope #8 Rotated 309 x 120 mm
117PRC Envelope #9 Rotated 324 x 229 mm
118PRC Envelope #10 Rotated 458 x 324 mm
(此表摘自《Excel Binary File Format (.xls) Structure Specification.pdf》)

HSSFSheet下面定義了一些xxxx_PAPERSIZE的常量,但都是非常常用的紙張大小,如果滿足不了你的需要,可以根據上表自己給PaperSize屬性賦值。所以,如果你要設定紙張大小可以用這樣的代碼: 
HSSFSheet.PrintSetup.PaperSize=HSSFSheet.A4_PAPERSIZE; 
或 
HSSFSheet.PrintSetup.PaperSize=9; (A4 210*297mm)

起始頁碼
再下來就是列印的起始頁碼,它對應於HSSFSheet.PrintSetup.PageStart和 HSSFSheet.PrintSetup.UsePage,如果UsePage=false,那麼就相當於“自動”,這時PageStart不起作用; 如果UsePage=true,PageStart才會起作用。所以在設定PageStart之前,必須先把UsePage設定為true。

網格線
“列印”欄中的“網格線”設定對應於HSSFSheet.IsPrintGridlines,請注意,這裡不是 HSSFSheet.PrintSetup下面,所以別搞混了。這裡之所以不隸屬於PrintSetup是由底層儲存該資訊的record決定的,底層是 把IsGridsPrinted放在GridsetRecord裡面的,而不是PrintSetupRecord裡面的,儘管介面上是放在一起的。另外還 有一個HSSFSheet.IsGridsPrinted屬性,這個屬性對應於底層的gridset Record,但這個record是保留的,從微軟的文檔顯示沒有任何意義,所以這個屬性請不要去設定。

其它
“單色列印”則對應於HSSFSheet.PrintSetup.NoColors,這是布爾類型的,值為true時,表示單色列印。

“草稿品質”對應於HSSFSheet.PrintSetup.IsDraft,也是布爾類型的,值為true時,表示用草稿品質列印。

這裡的列印順序是由HSSFSheet.PrintSetup.LeftToRight決定的,它是布爾類型的,當為true時,則表示“先行後列”;如果是false,則表示“先列後行”。

在NPOI 1.2中,“行號列標”、“批註”和“錯誤儲存格列印為”、“頁面邊界”暫不支援,將在以後的版本中支援。

原文連結:http://www.cnblogs.com/wolfplan/archive/2013/01/13/2858991.html

NPOI列印設定

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.