C#/VB.NET实现在PDF文档中插入,替换或删除图片

 更新时间:2023年12月17日 09:09:13   作者:E-iceblue  
这篇文章主要为大家详细介绍了如何使用 Spire.PDF for .NET 通过程序在 PDF 文档中插入、替换或删除图片,感兴趣的小伙伴可以跟随小编一起学习一下

与仅使用文字创建的 PDF 文档相比,包含图片的 PDF 文档对读者无疑会有更大的吸引力。除了美化文档,我们还可以通过插入图片的方式来展示数据或表达用文字难以描述的内容,让复杂的数据、概念等内容更直观、更容易理解。本文将展示如何使用 Spire.PDF for .NET 通过程序在 PDF 文档中插入、替换或删除图片

安装 Spire.PDF for .NET

首先,您需要添加 Spire.PDF for .NET 包中包含的 DLL 文件作为 .NET 项目中的引用。DLL 文件可以从此链接下载或通过 NuGet 安装。

PM> Install-Package Spire.PDF

插入图片到 PDF 文档

使用 Spire.PDF for .NET 插入图片到 PDF 文档时,需要先用 PdfImage.FromFile() 方法载入图片文件,再用 PdfPageBase.Canvas.DrawImage() 方法将图片绘制在页面上的指定位置。详细操作步骤如下:

  • 创建一个 PdfDocument 的对象。
  • 使用 PdfDocument.LoadFromFile() 方法载入 PDF 文档。
  • 使用 PdfDocument.Pages[] 属性获取指定页面。
  • 使用 PdfImage.FromFile() 方法载入图片。
  • 设置绘制图片的区域大小。
  • 设置绘制图片的起始坐标。
  • 使用 PdfPageBase.Canvas.DrawImage() 方法将图片绘制在页面上。
  • 使用 PdfDocument.SaveToFile() 方法保存文档。

C#

using Spire.Pdf;
using Spire.Pdf.Graphics;

namespace InsertImage
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建一个PdfDocument的对象
            PdfDocument pdf = new PdfDocument();

            //载入PDF文档
            pdf.LoadFromFile("示例文档.pdf");

            //获取文档第一页
            PdfPageBase page = pdf.Pages[0];

            //载入图片
            PdfImage image = PdfImage.FromFile("图片.jpg");

            //设置绘制图片的区域大小
            float width = image.Width;
            float height = image.Height;

            //设置绘制图片的初始位置
            float x = page.ActualSize.Width/2 - image.Width/2;
            float y = 180;

            //将图片绘制在页面上
            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)
            '创建一个PdfDocument的对象
            Dim pdf As PdfDocument = New PdfDocument()

            '载入PDF文档
            pdf.LoadFromFile("示例文档.pdf")

            '获取文档第一页
            Dim page As PdfPageBase = pdf.Pages(0)

            '载入图片
            Dim image As PdfImage = PdfImage.FromFile("图片.jpg")

            '设置绘制图片的区域大小
            Dim width As Single = image.Width
            Dim height As Single = image.Height

            '设置绘制图片的初始位置
            Dim x As Single = page.ActualSize.Width / 2 - image.Width / 2
            Dim y As Single = 180

            '将图片绘制在页面上
            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 文档中的图片的详细操作步骤:

  • 创建一个 PdfDocument 的对象。
  • 使用 PdfDocument.LoadFromFile() 方法载入 PDF 文档。
  • 使用 PdfDocument.Pages[] 属性获取文档第一页。
  • 使用 PdfImage.FromFile() 方法载入图片。
  • 创建 PdfImageHelper 的对象。
  • 使用 PdfImageHelper.GetImagesInfo() 方法获取第一页的图片信息。
  • 使用 PdfImageHelper.ReplaceImage() 方法替换页面第一张图片为载入的图片。
  • 使用 PdfDocument.SaveToFile() 方法保存文档。

C#

using Spire.Pdf;
using Spire.Pdf.Graphics;
using Spire.Pdf.Utilities;

namespace ReplaceImage
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建一个PdfDocument的对象
            PdfDocument doc = new PdfDocument();

            //载入PDF文档
            doc.LoadFromFile("插入图片.pdf");

            //获取文档第一页
            PdfPageBase page = doc.Pages[0];

            //载入图片
            PdfImage image = PdfImage.FromFile("图片一.jpg");

            //创建一个PdfImageHelper的对象
            PdfImageHelper imageHelper = new PdfImageHelper();

            //获取第一页的图片信息
            PdfImageInfo[] imageInfo = imageHelper.GetImagesInfo(page);

            //用载入的图片替换第一页的第一张图片
            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)
            '创建一个PdfDocument的对象
            Dim doc As PdfDocument = New PdfDocument()

            '载入PDF文档
            doc.LoadFromFile("插入图片.pdf")

            '获取文档第一页
            Dim page As PdfPageBase = doc.Pages(0)

            '载入图片
            Dim image As PdfImage = PdfImage.FromFile("图片一.jpg")

            '创建一个PdfImageHelper的对象
            Dim imageHelper As PdfImageHelper = New PdfImageHelper()

            '获取第一页的图片信息
            Dim imageInfo() As PdfImageInfo = imageHelper.GetImagesInfo(page)

            '用载入的图片替换第一页的第一张图片
            imageHelper.ReplaceImage(imageInfo(0), image)

            '保存文档
            doc.SaveToFile("替换图片.pdf", FileFormat.PDF)
        End Sub
    End Class
End Namespace

效果图

删除 PDF 文档中的图片

Spire.PDF for .NET 提供了 PdfPageBase.DeleteImage() 方法来删除 PDF页面中的指定图片。删除图片的详细操作步骤如下:

  • 创建一个 PdfDocument 的对象。
  • 使用 PdfDocument.LoadFromFile() 方法载入 PDF 文档。
  • 使用 PdfDocument.Pages[] 属性获取文档第一页。
  • 使用 PdfPageBase.DeleteImage() 方法删除第一页第一张图片。
  • 使用 PdfDocument.SaveToFile() 方法保存文档。

C#

using Spire.Pdf;

namespace DeleteImage
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建一个PdfDocument的对象
            PdfDocument pdf = new PdfDocument();

            //载入PDF文档
            pdf.LoadFromFile("插入图片.pdf");

            //获取第一页
            PdfPageBase page = pdf.Pages[0];

            //删除第一页的第一张图片
            page.DeleteImage(0);

            //保存文档
            pdf.SaveToFile("删除图片.pdf", FileFormat.PDF);
        }
    }
}

VB.NET

Imports Spire.Pdf

Namespace DeleteImage
    Class Program
        Shared Sub Main(ByVal args() As String)
            '创建一个PdfDocument的对象
            Dim pdf As PdfDocument = New PdfDocument()

            '载入PDF文档
            pdf.LoadFromFile("插入图片.pdf")

            '获取第一页
            Dim page As PdfPageBase = pdf.Pages(0)

            '删除第一页的第一张图片
            page.DeleteImage(0)

            '保存文档
            pdf.SaveToFile("删除图片.pdf", FileFormat.PDF)
        End Sub
    End Class
End Namespace

效果图

到此这篇关于C#/VB.NET实现在PDF文档中插入,替换或删除图片的文章就介绍到这了,更多相关C# PDF图片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#中使用闭包与意想不到的坑详解

    C#中使用闭包与意想不到的坑详解

    这篇文章主要给大家介绍了关于C#中使用闭包与意想不到的坑,文中通过示例代码介绍的非常详细,对大家学习或者使用C#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • 使用C#高效嵌入文件和注释附件到PDF文档的操作指南

    使用C#高效嵌入文件和注释附件到PDF文档的操作指南

    在现代办公和数据交换中,PDF文档因其跨平台、内容固定等特性,已经成为不可或缺的一部分,本教程将深入探讨如何在C#编程环境中,利用强大的Spire.PDF for .NET库实现PDF附件的插入,需要的朋友可以参考下
    2026-01-01
  • c#基础系列之ref和out的深入理解

    c#基础系列之ref和out的深入理解

    有过C#基础知识的都应该清楚Ref和Out的使用方法,所以下面这篇文章主要给大家介绍了关于c#基础系列之ref和out的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-09-09
  • C# WCF简单入门图文教程(VS2010版)

    C# WCF简单入门图文教程(VS2010版)

    这篇文章主要介绍了WCF简单入门图文教程,版本是VS2010版,帮助大家轻松学习了解DataContract、ServiceContract等特性,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • c#实现sqlserver事务处理示例

    c#实现sqlserver事务处理示例

    这篇文章主要介绍了c#实现sqlserver事务处理的示例,大家参考使用吧
    2014-01-01
  • c# 接口interface基础入门小例子

    c# 接口interface基础入门小例子

    用于描述类的功能,类似于契约,指示了类将:执行的工作,形参类型,返回结果类型,但本身没有执行的代码
    2013-04-04
  • C#最简单的关闭子窗体更新父窗体的实现方法

    C#最简单的关闭子窗体更新父窗体的实现方法

    原理就是将子窗体最为对话框模式弹出,当窗体关闭或取消时更新主窗体
    2012-11-11
  • C#实现winform自动关闭MessageBox对话框的方法

    C#实现winform自动关闭MessageBox对话框的方法

    这篇文章主要介绍了C#实现winform自动关闭MessageBox对话框的方法,实例分析了C#中MessageBox对话框的相关操作技巧,需要的朋友可以参考下
    2015-04-04
  • C#实现两个日期比较大小

    C#实现两个日期比较大小

    这篇文章主要为大家详细介绍了C#中实现两个日期比较大小的常见方法,文中的示例代码简洁易懂,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起了解一下
    2023-12-12
  • C#中4种深拷贝方法介绍

    C#中4种深拷贝方法介绍

    这篇文章主要介绍了C#中4种深拷贝方法介绍,本文讲解了利用反射实现、利用xml序列化和反序列化实现、利用二进制序列化和反序列化实现、利用silverlight DataContractSerializer实现,用于在silverlight 客户端使用等4种方法,需要的朋友可以参考下
    2015-06-06

最新评论