C#/VB.NET實(shí)現(xiàn)在PDF文檔中插入,替換或刪除圖片
與僅使用文字創(chuàng)建的 PDF 文檔相比,包含圖片的 PDF 文檔對(duì)讀者無(wú)疑會(huì)有更大的吸引力。除了美化文檔,我們還可以通過(guò)插入圖片的方式來(lái)展示數(shù)據(jù)或表達(dá)用文字難以描述的內(nèi)容,讓復(fù)雜的數(shù)據(jù)、概念等內(nèi)容更直觀、更容易理解。本文將展示如何使用 Spire.PDF for .NET 通過(guò)程序在 PDF 文檔中插入、替換或刪除圖片。
安裝 Spire.PDF for .NET
首先,您需要添加 Spire.PDF for .NET 包中包含的 DLL 文件作為 .NET 項(xiàng)目中的引用。DLL 文件可以從此鏈接下載或通過(guò) NuGet 安裝。
PM> Install-Package Spire.PDF
插入圖片到 PDF 文檔
使用 Spire.PDF for .NET 插入圖片到 PDF 文檔時(shí),需要先用 PdfImage.FromFile() 方法載入圖片文件,再用 PdfPageBase.Canvas.DrawImage() 方法將圖片繪制在頁(yè)面上的指定位置。詳細(xì)操作步驟如下:
- 創(chuàng)建一個(gè) PdfDocument 的對(duì)象。
- 使用 PdfDocument.LoadFromFile() 方法載入 PDF 文檔。
- 使用 PdfDocument.Pages[] 屬性獲取指定頁(yè)面。
- 使用 PdfImage.FromFile() 方法載入圖片。
- 設(shè)置繪制圖片的區(qū)域大小。
- 設(shè)置繪制圖片的起始坐標(biāo)。
- 使用 PdfPageBase.Canvas.DrawImage() 方法將圖片繪制在頁(yè)面上。
- 使用 PdfDocument.SaveToFile() 方法保存文檔。
C#
using Spire.Pdf; using Spire.Pdf.Graphics; namespace InsertImage { class Program { static void Main(string[] args) { //創(chuàng)建一個(gè)PdfDocument的對(duì)象 PdfDocument pdf = new PdfDocument(); //載入PDF文檔 pdf.LoadFromFile("示例文檔.pdf"); //獲取文檔第一頁(yè) PdfPageBase page = pdf.Pages[0]; //載入圖片 PdfImage image = PdfImage.FromFile("圖片.jpg"); //設(shè)置繪制圖片的區(qū)域大小 float width = image.Width; float height = image.Height; //設(shè)置繪制圖片的初始位置 float x = page.ActualSize.Width/2 - image.Width/2; float y = 180; //將圖片繪制在頁(yè)面上 page.Canvas.DrawImage(image, x, y, width, height); //保存文檔 pdf.SaveToFile("插入圖片.pdf", FileFormat.PDF); } } }
VB.NET
Imports Spire.Pdf Imports Spire.Pdf.Graphics Namespace InsertImage Class Program Shared Sub Main(ByVal args() As String) '創(chuàng)建一個(gè)PdfDocument的對(duì)象 Dim pdf As PdfDocument = New PdfDocument() '載入PDF文檔 pdf.LoadFromFile("示例文檔.pdf") '獲取文檔第一頁(yè) Dim page As PdfPageBase = pdf.Pages(0) '載入圖片 Dim image As PdfImage = PdfImage.FromFile("圖片.jpg") '設(shè)置繪制圖片的區(qū)域大小 Dim width As Single = image.Width Dim height As Single = image.Height '設(shè)置繪制圖片的初始位置 Dim x As Single = page.ActualSize.Width / 2 - image.Width / 2 Dim y As Single = 180 '將圖片繪制在頁(yè)面上 page.Canvas.DrawImage(image, x, y, width, height) '保存文檔 pdf.SaveToFile("插入圖片.pdf", FileFormat.PDF) End Sub End Class End Namespace
效果圖
替換 PDF 文檔中的圖片
Spire.PDF for .NET 提供 PdfImageHelper.ReplaceImage() 方法可以替換 PDF 文檔中的圖片。一下是用新圖片替換 PDF 文檔中的圖片的詳細(xì)操作步驟:
- 創(chuàng)建一個(gè) PdfDocument 的對(duì)象。
- 使用 PdfDocument.LoadFromFile() 方法載入 PDF 文檔。
- 使用 PdfDocument.Pages[] 屬性獲取文檔第一頁(yè)。
- 使用 PdfImage.FromFile() 方法載入圖片。
- 創(chuàng)建 PdfImageHelper 的對(duì)象。
- 使用 PdfImageHelper.GetImagesInfo() 方法獲取第一頁(yè)的圖片信息。
- 使用 PdfImageHelper.ReplaceImage() 方法替換頁(yè)面第一張圖片為載入的圖片。
- 使用 PdfDocument.SaveToFile() 方法保存文檔。
C#
using Spire.Pdf; using Spire.Pdf.Graphics; using Spire.Pdf.Utilities; namespace ReplaceImage { class Program { static void Main(string[] args) { //創(chuàng)建一個(gè)PdfDocument的對(duì)象 PdfDocument doc = new PdfDocument(); //載入PDF文檔 doc.LoadFromFile("插入圖片.pdf"); //獲取文檔第一頁(yè) PdfPageBase page = doc.Pages[0]; //載入圖片 PdfImage image = PdfImage.FromFile("圖片一.jpg"); //創(chuàng)建一個(gè)PdfImageHelper的對(duì)象 PdfImageHelper imageHelper = new PdfImageHelper(); //獲取第一頁(yè)的圖片信息 PdfImageInfo[] imageInfo = imageHelper.GetImagesInfo(page); //用載入的圖片替換第一頁(yè)的第一張圖片 imageHelper.ReplaceImage(imageInfo[0], image); //保存文檔 doc.SaveToFile("替換圖片.pdf", FileFormat.PDF); } } }
VB.NET
Imports Spire.Pdf Imports Spire.Pdf.Graphics Imports Spire.Pdf.Utilities Namespace ReplaceImage Class Program Shared Sub Main(ByVal args() As String) '創(chuàng)建一個(gè)PdfDocument的對(duì)象 Dim doc As PdfDocument = New PdfDocument() '載入PDF文檔 doc.LoadFromFile("插入圖片.pdf") '獲取文檔第一頁(yè) Dim page As PdfPageBase = doc.Pages(0) '載入圖片 Dim image As PdfImage = PdfImage.FromFile("圖片一.jpg") '創(chuàng)建一個(gè)PdfImageHelper的對(duì)象 Dim imageHelper As PdfImageHelper = New PdfImageHelper() '獲取第一頁(yè)的圖片信息 Dim imageInfo() As PdfImageInfo = imageHelper.GetImagesInfo(page) '用載入的圖片替換第一頁(yè)的第一張圖片 imageHelper.ReplaceImage(imageInfo(0), image) '保存文檔 doc.SaveToFile("替換圖片.pdf", FileFormat.PDF) End Sub End Class End Namespace
效果圖
刪除 PDF 文檔中的圖片
Spire.PDF for .NET 提供了 PdfPageBase.DeleteImage() 方法來(lái)刪除 PDF頁(yè)面中的指定圖片。刪除圖片的詳細(xì)操作步驟如下:
- 創(chuàng)建一個(gè) PdfDocument 的對(duì)象。
- 使用 PdfDocument.LoadFromFile() 方法載入 PDF 文檔。
- 使用 PdfDocument.Pages[] 屬性獲取文檔第一頁(yè)。
- 使用 PdfPageBase.DeleteImage() 方法刪除第一頁(yè)第一張圖片。
- 使用 PdfDocument.SaveToFile() 方法保存文檔。
C#
using Spire.Pdf; namespace DeleteImage { class Program { static void Main(string[] args) { //創(chuàng)建一個(gè)PdfDocument的對(duì)象 PdfDocument pdf = new PdfDocument(); //載入PDF文檔 pdf.LoadFromFile("插入圖片.pdf"); //獲取第一頁(yè) PdfPageBase page = pdf.Pages[0]; //刪除第一頁(yè)的第一張圖片 page.DeleteImage(0); //保存文檔 pdf.SaveToFile("刪除圖片.pdf", FileFormat.PDF); } } }
VB.NET
Imports Spire.Pdf Namespace DeleteImage Class Program Shared Sub Main(ByVal args() As String) '創(chuàng)建一個(gè)PdfDocument的對(duì)象 Dim pdf As PdfDocument = New PdfDocument() '載入PDF文檔 pdf.LoadFromFile("插入圖片.pdf") '獲取第一頁(yè) Dim page As PdfPageBase = pdf.Pages(0) '刪除第一頁(yè)的第一張圖片 page.DeleteImage(0) '保存文檔 pdf.SaveToFile("刪除圖片.pdf", FileFormat.PDF) End Sub End Class End Namespace
效果圖
到此這篇關(guān)于C#/VB.NET實(shí)現(xiàn)在PDF文檔中插入,替換或刪除圖片的文章就介紹到這了,更多相關(guān)C# PDF圖片內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#用正則表達(dá)式Regex.Matches 方法檢查字符串中重復(fù)出現(xiàn)的詞
使用正則表達(dá)式用Regex類的Matches方法,可以檢查字符串中重復(fù)出現(xiàn)的詞,Regex.Matches方法在輸入字符串中搜索正則表達(dá)式的所有匹配項(xiàng)并返回所有匹配,本文給大家分享C#正則表達(dá)式檢查重復(fù)出現(xiàn)的詞,感興趣的朋友一起看看吧2024-02-02C#實(shí)現(xiàn)常見(jiàn)加密算法的示例代碼
這篇文章主要為大家詳細(xì)介紹一下C#中一些常見(jiàn)加密算法(Base64編碼、凱撒密碼、Vigenere密碼、DES、AES)以及它們的實(shí)現(xiàn)代碼,感興趣的可以了解一下2022-07-07C#多線程同步lock、Mutex的實(shí)現(xiàn)
本文主要介紹了C#多線程同步lock、Mutex的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05C#實(shí)現(xiàn)客戶端彈出消息框封裝類實(shí)例
這篇文章主要介紹了C#實(shí)現(xiàn)客戶端彈出消息框封裝類,實(shí)例分析了C#彈出窗口的實(shí)現(xiàn)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03Unity編輯器資源導(dǎo)入處理函數(shù)OnPreprocessAudio用法示例
這篇文章主要為大家介紹了Unity編輯器資源導(dǎo)入處理函數(shù)OnPreprocessAudio用法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08C#基于DBContext(EF)實(shí)現(xiàn)通用增刪改查的REST方法實(shí)例
這篇文章主要介紹了C#基于DBContext(EF)實(shí)現(xiàn)通用增刪改查的REST方法實(shí)例,是C#程序設(shè)計(jì)中非常實(shí)用的技巧,需要的朋友可以參考下2014-10-10