C#如何給PDF檔案添加浮水印_C#教程

來源:互聯網
上載者:User

浮水印種類及功能介紹 

    PDF浮水印分為兩種:文本浮水印和圖片浮水印。文本浮水印一般被用在商業領域,提醒讀者該文檔是受著作權保護的,其他人不能抄襲或者免費使用。除了這個特徵,浮水印還可以用來標記這個文檔

的一些基本狀態資訊,例如是草稿狀態還是最終版本?圖片浮水印是美化PDF檔案的一個很好的選擇,它可以用多彩的、獨特的圖片來作為PDF檔案的背景。那麼,怎樣用編程的方式給PDF檔案

添加浮水印呢?有很多種實現方法,其中一種最快最容易的辦法也許是用第三方軟體,例如Spire.PDF。本文會闡述怎樣用免費的第三方軟體Spire.PDF來給PDF檔案添加文本浮水印和圖片浮水印。 

免費版Spire.PDF軟體介紹 

    免費版Spire.PDF軟體是一款免費的獨立的PDF控制項,它提供給編程者一系列豐富的PDF功能,例如讀,寫,建立,編輯,操作和通過C#或VB.NET轉化PDF檔案等。請注意,免費版僅支

持10頁的PDF檔案和三頁的轉換功能。 

如何得到? 

    首先,請從E-iceblue website網站上下載並安裝Spire.PDF。安裝完成後,你就可以利用“SampleCenter”和介面協助快速開始了,其中有很多程式碼片段和詳細的應用程式功能介紹。

下面就列舉一些怎樣給PDF檔案添加圖片浮水印和文本浮水印的程式碼片段。我把它分為兩部分。一部分是圖片浮水印,另一部分是文本浮水印。 

第一部分:添加圖片浮水印 

    首先,準備一張你想設定為PDF檔案浮水印的圖片。其次,我們只需要調用Image.FromFile(stringfilename)方法來載入圖片,非常簡單、方便。然後,設定PDF圖片背景。

代碼如下:

步驟1:建立一個新的PDF執行個體。然後匯入PDF檔案

PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("sample.pdf");

步驟2:擷取PDF檔案的第一頁

PdfPageBase page = pdf.Pages[0];

步驟3:匯入圖片並把它設定為PDF檔案的背景

Image img = Image.FromFile("img.jpg"); page.BackgroundImage = img; 

步驟4:儲存檔案為PDF格式,命名為"ImageWaterMark.pdf"

pdf.SaveToFile("ImageWaterMark.pdf"); 

添加了圖片浮水印的效果圖如下:


圖片 1: 圖片浮水印 

第二部分:添加文本浮水印 

    和添加圖片浮水印不同的是,添加文本浮水印更為複雜。為了最好的匹配PDF頁面,我們需要在PDF中製作出浮水印文本,然後設定文本的字型,顏色,位置和文字格式設定。以上兩種功能均可以通

過調用這種方法來快速實現:DrawString(strings, PdfFontBase font, PdfBrush brush, float x, float y, PdfStringFormat format).下面是程式碼片段: 

步驟1:建立一個新的PDF執行個體。然後匯入PDF檔案。

PdfDocument pdf= new PdfDocument();pdf.LoadFromFile("sample.pdf"); 

步驟2:擷取PDF檔案的第一頁

PdfPageBase page = pdf.Pages[0]; 

步驟3:添加文本浮水印到檔案的第一頁,設定文字格式設定

PdfTilingBrush brush = new PdfTilingBrush(new SizeF(page.Canvas.ClientSize.Width / 2, page.Canvas.ClientSize.Height / 3)); brush.Graphics.SetTransparency(0.3f); brush.Graphics.Save(); brush.Graphics.TranslateTransform(brush.Size.Width / 2, brush.Size.Height / 2); brush.Graphics.RotateTransform(-45); brush.Graphics.DrawString("Draft Version", new PdfFont(PdfFontFamily.Helvetica, 24), PdfBrushes.Blue,0, 0, new PdfStringFormat(PdfTextAlignment.Center)); brush.Graphics.Restore(); brush.Graphics.SetTransparency(1); page.Canvas.DrawRectangle(brush, new RectangleF(new PointF(0, 0), page.Canvas.ClientSize));
 

步驟4:儲存檔案為PDF格式,命名為"TextWaterMark.pdf"

pdf.SaveToFile("TextWaterMark.pdf"); 

 添加了文本浮水印的效果圖如下:

圖片 2: 文本浮水印 

總結

    雖然有很多文章介紹了不用第三方軟體就可以用編程的方式來添加浮水印的方法,但這裡我仍然使用了免費版的Spire.PDF軟體,因為除了浮水印功能以外,我還需要使用建立,轉換,列印和

保護PDF等功能,而這個軟體全部支援這些功能。它工作的很好,並且大大的提高了我的工作效率。如果你也感興趣的話,不妨試試它。

    感謝您的瀏覽,希望本文能給您帶來一定的協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.