如何手動或程式化產生XPS文件
文:吳俊毅 時間:2009/1/18 何謂XPS文件 XPS為(XML Parse Specification)的簡稱,我們知道XML已經是開放式資料交換的標準,於是以XML為基礎要提供一個更穩固的,開放的可信賴的電子文件交換格式應運而生,就是XPS,它可以經由硬體或是軟體來閱讀並提供更佳的列印品質,並可加入簽章容易用於機密文件的封存,微軟在Office 2007也已經完整加入此功能,Word 2007的docx其實就是XML Parse Specification文件格式。在.NET Framework 3.0中提供完整的API讓您能輕易的發佈或是匯入XPS文件,或是與WPF應用程式的整合等,今天筆者將完整介紹XPS,產生XPS方式,如何使用.NET Framework 3.o的API來產生XPS格式文件,廢話不多說,我們開始吧! XPS文件的結構 所謂的XPS文件其實是一個ZIP檔案,若讀者將其附檔名改成.zip使用Winzip或是一些支援ZIP的檢視器即可看見期內容,當然Windows XP/Vista的檔案總管本身即也支援ZIP解壓縮。 雖然我們通常並不會直接去編輯XPS文件的壓縮內容,但了解其內部包裝的內容對於我們快速的了解XPS是有幫助的,一個XPS文件的內容如下: XPS的物件階層 XPS文件定義在.NET Framework 3.0定義在XpsDocument類別中,該類別則定義在System.Windows.Xps.Package;的命名空間中,XpsDocument為一個完整XPS檔案組成,它定義了XPS整個的邏輯結構,由於一個XpsDocument是允許包含多個文件,這些文件則由FixedDocumentSequence來描述其順序關係,所以通常一個XpsDocument下會包含一個FixedDocumentSequence物件,FixedDocumentSequence下面會有FixedDocument物件來包裝FixedPage物件,整個XpsDocument結構如下圖: 產生XPS文件的幾種方式 1. 使用Microsoft XPS Document Writer印表機 2. 使用.NET Framrwork 3.0的System.Windows.Xps.Package命名空間提供的類別來產生 要產生XPS文件最快的方式當然是使用Micr...