新聞中心
C#打開一個(gè)文件的操作在我們實(shí)際的開發(fā)中是常見(jiàn)的需求實(shí)現(xiàn),那么具體的操作實(shí)例是什么呢?C#打開一個(gè)文件所涉及的問(wèn)題和注意事項(xiàng)有哪些呢?現(xiàn)在我們就來(lái)看看具體的實(shí)現(xiàn):

在你寫入任何實(shí)際數(shù)據(jù)之前,你可能希望通過(guò)以下幾種方法寫入一些關(guān)于本文檔的摘要:
- public boolean addTitle(String title)
- public boolean addSubject(String subject)
- public boolean addKeywords(String keywords)
- public boolean addAuthor(String author)
- public boolean addCreator(String creator)
- public boolean addProducer()
- public boolean addCreationDate()
- public boolean addHeader(String name, String content)
你可以選擇自己的標(biāo)題、主題、關(guān)鍵字、作者、創(chuàng)建程序,但以下產(chǎn)品信息將始終被添加:iTextSharp (或者iTextSharp的引用)和創(chuàng)建時(shí)間(實(shí)際上這兩種方法是自動(dòng)調(diào)用的)。
你還可以將自定義的名稱添加為“報(bào)頭信息”,但是這對(duì)于PdfWriter沒(méi)有任何作用,如果看看實(shí)例產(chǎn)生的pdf文件的“文檔屬性”,我們可以看到僅僅有PDF創(chuàng)建程序和產(chǎn)品日期。
C#打開一個(gè)文件前要做的事:
你只能在Open方法調(diào)用之前添加摘要,這是iText開發(fā)工具提供的一個(gè)選擇。
在HTML中,報(bào)頭信息被放在文檔前面報(bào)頭標(biāo)識(shí)中間,調(diào)用Open方法將導(dǎo)致報(bào)頭信息寫入流,因而在Document被打開后無(wú)法更改這些數(shù)據(jù)。
該行顯示生成的文檔是一個(gè)版本為1.2的PDF格式的文件,在PDF中,摘要保存在PdfInfo對(duì)象中,當(dāng)文檔關(guān)閉時(shí)已經(jīng)寫入PdfWriter中了,因此,沒(méi)有關(guān)于為什么不能修改庫(kù)來(lái)滿足任何時(shí)候添加或更改摘要的技術(shù)原因。
C#打開一個(gè)文件之頁(yè)面初始化
Open方法在不同的Witer中同時(shí)會(huì)產(chǎn)生初始化事件,舉例來(lái)說(shuō),如果你需要一個(gè)水印或者頁(yè)眉頁(yè)角對(duì)象出現(xiàn)在文檔***頁(yè)的開始處,你需要在打開文檔前添加這些,同樣的用于設(shè)置該文檔其他頁(yè)水印、頁(yè)眉、頁(yè)角、頁(yè)數(shù)和尺寸。
當(dāng)調(diào)用下列方法:
- public bool setPageSize(Rectangle pageSize)
- public bool Add(Watermark watermark)
- public void removeWatermark()
- setting Header property
- public void resetHeader()
- setting Footer property
- public void resetFooter()
- public void resetPageCount()
- setting PageCount property
產(chǎn)生的結(jié)果只能在下一個(gè)新頁(yè)中看到(當(dāng)在本頁(yè)調(diào)用初始化方法時(shí)),代碼見(jiàn)示例代碼0107,你必須要準(zhǔn)備一張名為watermark.jpg的圖片,如下圖:
C#打開一個(gè)文件之閱讀器參數(shù):
你可以通過(guò)下面的辦法為PDF文件指定一些閱讀器 (如Adobe Reader) 參數(shù):
- public void setViewerPreferences(int preferences)
- writerA.setViewerPreferences(PdfWriter.PageLayoutTwoColumnLeft);
- writerB.setViewerPreferences(PdfWriter.HideMenubar | PdfWriter.HideToolbar);
- writerC.setViewerPreferences(PdfWriter.PageLayoutTwoColumnLeft |
- PdfWriter.PageModeFullScreen | PdfWriter.NonFullScreenPageModeUseThumbs);
正如你所看到的,參數(shù)可以使用以下一些常量:
- PdfWriter.PageLayoutSinglePage – 同時(shí)只顯示一個(gè)頁(yè)面
- PdfWriter.PageLayoutOneColumn –單列顯示
- PdfWriter.PageLayoutTwoColumnLeft –雙列顯示,奇數(shù)頁(yè)在左
- PdfWriter.PageLayoutTwoColumnRight -雙列顯示,奇數(shù)頁(yè)在右
文件打開時(shí),頁(yè)面模式用到下面其中之一:
- PdfWriter.PageModeUseNone
- 既不顯示大鋼也不顯示縮略圖
- PdfWriter.PageModeUseOutlines
- 顯示大綱
- PdfWriter.PageModeUseThumbs
- 顯示縮略圖
- PdfWriter.PageModeFullScreen
- 全屏模式,沒(méi)有菜單、windows控件或者其他任何windows可見(jiàn)控件
- PdfWriter.HideToolbar
- 當(dāng)文檔激活時(shí),是否隱藏閱讀程序(如Adobe Reader)的工具條
- PdfWriter.HideMenubar
- 當(dāng)文檔激活時(shí),是否隱藏閱讀程序的菜單.
- PdfWriter.HideWindowUI
- 當(dāng)文檔激活時(shí),是否隱藏閱讀程序的界面元素,如滾動(dòng)條、導(dǎo)航條等,而僅僅保留文檔顯示
- PdfWriter.FitWindow
- 是否調(diào)整文檔窗口尺寸以適合顯示***頁(yè)。
- PdfWriter.CenterWindow
- 是否將文檔窗口放到屏幕中央
在全屏模式下,指定如何顯示界面元素(選擇一個(gè))
- PdfWriter.NonFullScreenPageModeUseNone -既不顯示大鋼也不顯示縮略圖
- PdfWriter.NonFullScreenPageModeUseOutlines – 顯示大鋼
- PdfWriter.NonFullScreenPageModeUseThumbs – 顯示縮略圖
- 說(shuō)明:你只能在類PdfWriter中調(diào)用這些方法。
C#打開一個(gè)文件之加密
打開文檔之前還要做的一件事情就是加密(如果你希望該文檔加密),要達(dá)到這個(gè)目的,你可以使用下面的方法:
public void setEncryption(boolean strength, String userPassword, String ownerPassword, int permissions);
? strength 是下面兩個(gè)常量之一:
- PdfWriter.STRENGTH40BITS: 40 位
- PdfWriter.STRENGTH128BITS: 128位
- (Acrobat Reader 5.0及以上版本支持)
? UserPassword和ownerPassword 可以為空或零長(zhǎng)度, 這種情況下, ownerPassword 將被隨機(jī)的字符串代替
? Permissions 為下列常量之一:
- PdfWriter.AllowPrinting
- PdfWriter.AllowModifyContents
- PdfWriter.AllowCopy
- PdfWriter.AllowModifyAnnotations
- PdfWriter.AllowFillIn
- PdfWriter.AllowScreenReaders
- PdfWriter.AllowAssembly
- PdfWriter.AllowDegradedPrinting
- writer.setEncryption(PdfWriter.STRENGTH40BITS, null, null, PdfWriter.AllowCopy);
- writer.setEncryption(PdfWriter.STRENGTH128BITS, "userpass",
- "ownerpass", PdfWriter.AllowCopy | PdfWriter.AllowPrinting);
C#打開一個(gè)文件的基本操作就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#打開一個(gè)文件有所幫助。
名稱欄目:C#打開一個(gè)文件的操作詳解
標(biāo)題網(wǎng)址:http://www.5511xx.com/article/dpdsedp.html


咨詢
建站咨詢
