C#如何給PDF文件添加水印
水印種類及功能介紹
PDF水印分為兩種:文本水印和圖片水印。文本水印一般被用在商業(yè)領(lǐng)域,提醒讀者該文檔是受版權(quán)保護(hù)的,其他人不能抄襲或者免費(fèi)使用。除了這個(gè)特征,水印還可以用來標(biāo)記這個(gè)文檔
的一些基本狀態(tài)信息,例如是草稿狀態(tài)還是最終版本?圖片水印是美化PDF文件的一個(gè)很好的選擇,它可以用多彩的、獨(dú)特的圖片來作為PDF文件的背景。那么,怎樣用編程的方式給PDF文件
添加水印呢?有很多種實(shí)現(xiàn)方法,其中一種最快最容易的辦法也許是用第三方軟件,例如Spire.PDF。本文會(huì)闡述怎樣用免費(fèi)的第三方軟件Spire.PDF來給PDF文件添加文本水印和圖片水印。
免費(fèi)版Spire.PDF軟件介紹
免費(fèi)版Spire.PDF軟件是一款免費(fèi)的獨(dú)立的PDF控件,它提供給編程者一系列豐富的PDF功能,例如讀,寫,新建,編輯,操作和通過C#或VB.NET轉(zhuǎn)化PDF文件等。請(qǐng)注意,免費(fèi)版僅支
持10頁的PDF文件和三頁的轉(zhuǎn)換功能。
如何得到?
首先,請(qǐng)從E-iceblue website網(wǎng)站上下載并安裝Spire.PDF。安裝完成后,你就可以利用“SampleCenter”和界面幫助快速開始了,其中有很多代碼片段和詳細(xì)的應(yīng)用程序功能介紹。
下面就列舉一些怎樣給PDF文件添加圖片水印和文本水印的代碼片段。我把它分為兩部分。一部分是圖片水印,另一部分是文本水印。
第一部分:添加圖片水印
首先,準(zhǔn)備一張你想設(shè)置為PDF文件水印的圖片。其次,我們只需要調(diào)用Image.FromFile(stringfilename)方法來加載圖片,非常簡單、方便。然后,設(shè)置PDF圖片背景。
代碼如下:
步驟1:創(chuàng)建一個(gè)新的PDF實(shí)例。然后導(dǎo)入PDF文件
PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("sample.pdf");
步驟2:獲取PDF文件的第一頁
PdfPageBase page = pdf.Pages[0];
步驟3:導(dǎo)入圖片并把它設(shè)置為PDF文件的背景
Image img = Image.FromFile("img.jpg"); page.BackgroundImage = img;
步驟4:保存文件為PDF格式,命名為"ImageWaterMark.pdf"
pdf.SaveToFile("ImageWaterMark.pdf");
添加了圖片水印的效果圖如下:
圖片 1: 圖片水印
第二部分:添加文本水印
和添加圖片水印不同的是,添加文本水印更為復(fù)雜。為了最好的匹配PDF頁面,我們需要在PDF中制作出水印文本,然后設(shè)置文本的字體,顏色,位置和文本格式。以上兩種功能均可以通
過調(diào)用這種方法來快速實(shí)現(xiàn):DrawString(strings, PdfFontBase font, PdfBrush brush, float x, float y, PdfStringFormat format).下面是代碼片段:
步驟1:創(chuàng)建一個(gè)新的PDF實(shí)例。然后導(dǎo)入PDF文件。
PdfDocument pdf= new PdfDocument(); pdf.LoadFromFile("sample.pdf");
步驟2:獲取PDF文件的第一頁
PdfPageBase page = pdf.Pages[0];
步驟3:添加文本水印到文件的第一頁,設(shè)置文本格式
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: 文本水印
總結(jié)
雖然有很多文章介紹了不用第三方軟件就可以用編程的方式來添加水印的方法,但這里我仍然使用了免費(fèi)版的Spire.PDF軟件,因?yàn)槌怂」δ芤酝?,我還需要使用新建,轉(zhuǎn)換,打印和
保護(hù)PDF等功能,而這個(gè)軟件全部支持這些功能。它工作的很好,并且大大的提高了我的工作效率。如果你也感興趣的話,不妨試試它。
感謝您的瀏覽,希望本文能給您帶來一定的幫助。
相關(guān)文章
Unity UGUI的Slider滑動(dòng)條件組使用詳解
這篇文章主要為大家介紹了Unity UGUI的Slider滑動(dòng)條件組使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07C#影院售票系統(tǒng)畢業(yè)設(shè)計(jì)(4)
這篇文章主要介紹了C#影院售票系統(tǒng)畢業(yè)設(shè)計(jì),學(xué)習(xí)內(nèi)容是總結(jié)銷售信息的保存以及加載銷售信息,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-11-11C# HttpClient Cookie驗(yàn)證解決方法
本文將詳細(xì)介紹C# HttpClient Cookie驗(yàn)證解決方法,需要了解的朋友可以參考下2012-11-11C#實(shí)現(xiàn)系統(tǒng)桌面右下角彈框
這篇文章主要為大家詳細(xì)介紹了C#如何實(shí)現(xiàn)系統(tǒng)桌面右下角彈框,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下2023-01-01