冰蓝科技
|
028-81705109
|
|
微信扫一扫
|

Spire.Cloud 纯前端文档控件

有时,您可能需要在 Excel 中对多个形状执行特定操作,例如添加样式、调整大小或移动它们。对形状进行分组可以帮助您更轻松、更高效地完成此任务。对形状进行分组后,它们将被视为单个实体并且可以同时进行操作。在本文中,您将学习如何使用 Spire.XLS for .NET 在 C# 和 VB.NET 中以编程方式对 Excel 中的形状进行分组或取消分组

安装 Spire.XLS for .NET

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

PM> Install-Package Spire.XLS

对 Excel 中的形状进行分组

要对 Excel 工作表中的某些形状进行分组,您需要使用 Worksheet.GroupShapeCollection 属性返回一个 GroupShapeCollection 对象,然后调用 GroupShapeCollection.Group() 方法。详细步骤如下:

  • C#
  • VB.NET
using Spire.Xls;
using Spire.Xls.Core;
using Spire.Xls.Core.MergeSpreadsheet.Collections;
using System.Drawing;

namespace GroupShapes
{
    class Program
    {
        static void Main(string[] args)
        {
            //初始化Workbook类的实例
            Workbook workbook = new Workbook();
            //获取第一个工作表
            Worksheet worksheet = workbook.Worksheets[0];

            //添加多个形状
            IPrstGeomShape shape1 = worksheet.PrstGeomShapes.AddPrstGeomShape(3, 3, 65, 50, PrstGeomShapeType.RoundRect);
            shape1.Fill.FillType = ShapeFillType.SolidColor;
            shape1.Fill.ForeColor = Color.Yellow;
            shape1.Line.Weight = 0.1;
            IPrstGeomShape shape2 = worksheet.PrstGeomShapes.AddPrstGeomShape(7, 3, 65, 50, PrstGeomShapeType.Ribbon);
            shape2.Fill.FillType = ShapeFillType.SolidColor;
            shape2.Fill.ForeColor = Color.Purple;
            shape2.Line.Weight = 0.1;
            IPrstGeomShape shape3 = worksheet.PrstGeomShapes.AddPrstGeomShape(3, 5, 65, 50, PrstGeomShapeType.Cloud);
            shape3.Fill.FillType = ShapeFillType.SolidColor;
            shape3.Fill.ForeColor = Color.LightGreen;
            shape3.Line.Weight = 0.1;
            IPrstGeomShape shape4 = worksheet.PrstGeomShapes.AddPrstGeomShape(7, 5, 65, 50, PrstGeomShapeType.Ellipse);
            shape4.Fill.FillType = ShapeFillType.SolidColor;
            shape4.Fill.ForeColor = Color.LightSkyBlue;
            shape4.Line.Weight = 0.1;

            //对形状进行分组
            GroupShapeCollection groupShapeCollection = worksheet.GroupShapeCollection;
            groupShapeCollection.Group(new IShape[] { shape1, shape2, shape3, shape4 });


            //保存结果文档
            workbook.SaveToFile("GroupShapes.xlsx", ExcelVersion.Version2013);
        }
    }
}
Imports Spire.Xls
Imports Spire.Xls.Core
Imports Spire.Xls.Core.MergeSpreadsheet.Collections
Imports System.Drawing

Namespace GroupShapes
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            '初始化Workbook类的实例
            Dim workbook As Workbook = New Workbook()
            '获取第一个工作表
            Dim worksheet As Worksheet = workbook.Worksheets(0)

            '添加多个形状
            Dim shape1 As IPrstGeomShape = worksheet.PrstGeomShapes.AddPrstGeomShape(3, 3, 65, 50, PrstGeomShapeType.RoundRect)
            shape1.Fill.FillType = ShapeFillType.SolidColor
            shape1.Fill.ForeColor = Color.Yellow
            shape1.Line.Weight = 0.1
            Dim shape2 As IPrstGeomShape = worksheet.PrstGeomShapes.AddPrstGeomShape(7, 3, 65, 50, PrstGeomShapeType.Ribbon)
            shape2.Fill.FillType = ShapeFillType.SolidColor
            shape2.Fill.ForeColor = Color.Purple
            shape2.Line.Weight = 0.1
            Dim shape3 As IPrstGeomShape = worksheet.PrstGeomShapes.AddPrstGeomShape(3, 5, 65, 50, PrstGeomShapeType.Cloud)
            shape3.Fill.FillType = ShapeFillType.SolidColor
            shape3.Fill.ForeColor = Color.LightGreen
            shape3.Line.Weight = 0.1
            Dim shape4 As IPrstGeomShape = worksheet.PrstGeomShapes.AddPrstGeomShape(7, 5, 65, 50, PrstGeomShapeType.Ellipse)
            shape4.Fill.FillType = ShapeFillType.SolidColor
            shape4.Fill.ForeColor = Color.LightSkyBlue
            shape4.Line.Weight = 0.1

            '对形状进行分组
            Dim groupShapeCollection As GroupShapeCollection = worksheet.GroupShapeCollection
            groupShapeCollection.Group(New IShape() {shape1, shape2, shape3, shape4})

            '保存结果文档
            workbook.SaveToFile("GroupShapes.xlsx", ExcelVersion.Version2013)
        End Sub
    End Class
End Namespace

C#/VB.NET 在 Excel 中对形状进行分组或取消分组

对 Excel 中的形状取消分组

如果要取消 Excel 工作表中已分组的形状,您可以使用 GroupShapeCollection. UnGroupAll() 方法。取消形状分组后,则可以单独操作它们。详细步骤如下:

  • C#
  • VB.NET
using Spire.Xls;
using Spire.Xls.Core.MergeSpreadsheet.Collections;

namespace UngroupShapes
{
    class Program
    {
        static void Main(string[] args)
        {
            //初始化Workbook类的实例
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("GroupShapes.xlsx");

            //获取特定工作表
            Worksheet worksheet = workbook.Worksheets[0];

            //取消分组工作表中的分组形状
            GroupShapeCollection groupShapeCollection = worksheet.GroupShapeCollection;
            groupShapeCollection.UnGroupAll();

            //保存结果文档
            workbook.SaveToFile("UnGroupShapes.xlsx", ExcelVersion.Version2013);
        }
    }
}
Imports Spire.Xls
Imports Spire.Xls.Core.MergeSpreadsheet.Collections

Namespace UngroupShapes
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            '初始化Workbook类的实例
            Dim workbook As Workbook = New Workbook()
            workbook.LoadFromFile("GroupShapes.xlsx")

            '获取特定工作表
            Dim worksheet As Worksheet = workbook.Worksheets(0)

            '取消分组工作表中的分组形状
            Dim groupShapeCollection As GroupShapeCollection = worksheet.GroupShapeCollection
            groupShapeCollection.UnGroupAll()

            '保存结果文档
            workbook.SaveToFile("UnGroupShapes.xlsx", ExcelVersion.Version2013)
        End Sub
    End Class
End Namespace

C#/VB.NET 在 Excel 中对形状进行分组或取消分组

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。

Spire.PDF 8.12.5 已发布。该版本新增支持设置表单域的可见与隐藏属性、添加自定义的元数据以及给 PDF 文档的元数据添加新的命名空间。本次更新还增强了 PDF 到 DOCX 和图片的转换。此外,许多问题也在本次更新中被成功修复,如绘制水印后查找文本失败的问题。详情请阅读以下内容。

新功能:

问题修复:


获取Spire.PDF 8.12.5请点击:

https://www.e-iceblue.cn/Downloads/Spire-PDF-NET.html

Spire.Office for Java 7.12.2 已发布。本次更新带来了一些新功能,如:Spire.PDF for Java支持释放 PdfTrueTypeFont 对象;Spire.Doc for Java增强了 Word 到 PDF 和图片以及 HTML 到 Word 的转换;Spire.XLS for Java 增强了Excel 到 PDF的转换;Spire.Presentation for Java增强了 PPT 到 SVG的转换。此外,该版本还成功修复了许多已知问题。详情请阅读以下内容。

获取 Spire.Office for Java 7.12.2请点击:

https://www.e-iceblue.cn/Downloads/Spire-Office-JAVA.html


Spire.PDF for Java

新功能:

问题修复:


Spire.Doc for Java

问题修复:


Spire.XLS for Java

问题修复:


Spire.Presentation for Java

问题修复:

Spire.Doc for Java 10.12.2 已发布。该版本增强了 Word 到 PDF 和图片以及 HTML 到 Word 的转换。此外,本次更新还修复了许多已知问题,如合并文档后字号和段间距发生改变的问题。详情请阅读以下内容。

问题修复:


获取Spire.Doc for Java 10.12.2请点击:

https://www.e-iceblue.cn/Downloads/Spire-Doc-JAVA.html

Spire.Presentation for Java 7.12.0 已发布。本次更新增强了 PPT 到 SVG的转换。同时,该版本还修复了一些已知问题,如修复了加载PPT文档程序抛异常 “Index must be >= 0 and <= Count” 的问题。详情请阅读以下内容。

问题修复:


获取Spire.Presentation for Java 7.12.0请点击:

https://www.e-iceblue.cn/Downloads/Spire-Presentation-JAVA.html

Spire.Office 7.12.0 已发布。在本次更新中,Spire.Doc 支持为形状设置填充色透明度;Spire.PDF 支持压缩 PDF 文档及转换 PDF 为 PPT;Spire.XLS 支持多种新函数及 "SHA-512" 加密方式。此外,本次更新还成功修复了大量已知问题。详情请阅读以下内容。

该版本涵盖了最新版的 Spire.Doc,Spire.PDF,Spire.XLS,Spire.Email,Spire.DocViewer, Spire.PDFViewer,Spire.Presentation,Spire.Spreadsheet, Spire.OfficeViewer, Spire.DocViewer, Spire.Barcode, Spire.DataExport。

版本信息如下:

获取Spire.Office 7.12.0 请点击:

https://www.e-iceblue.cn/Downloads/Spire-Office-NET.html


Spire.PDF

新功能:

问题修复:


Spire.Doc

新功能:

问题修复:


Spire.XLS

新功能:

问题修复:


Spire.Presentation

问题修复:


Spire.Spreadsheet

问题修复:

Spire.Spreadsheet 6.12.0 已发布。该版本修复了删除列后列名重置的问题。详情请阅读以下内容。

问题修复:


获取 Spire.Spreadsheet 6.12.0 请点击:

https://www.e-iceblue.cn/Downloads/Spire-Spreadsheet-NET.html

手动从 PDF 文件中提取文本往往繁琐、易错且低效,尤其在处理大量文档或复杂布局文件时问题更突出。这是因为 PDF 文件基于坐标存储内容,而非线性文本流 —— 若缺乏专业工具,很难提取出结构化或易读的文本。对于 C# .NET 开发者而言,实现 PDF 文本提取自动化是简化工作流的关键:无论是文档处理、内容索引,还是数据迁移、数字归档,自动化提取都能大幅提升效率。

本文将详细介绍如何通过 C# 与 Spire.PDF for .NET(一款功能强大的 PDF 读取与处理库)从PDF中读取文本,包含从基础到高级的完整方案,附可直接复用的代码示例与常见问题解答。

目录

  1. 为何在 .NET 中使用 Spire.PDF 提取文本?
  2. PDF 文本提取(基础示例)
  3. PDF 文本提取进阶选项
  4. 结论
  5. 常见问题(FAQ)

1. 为何在 .NET 中使用 Spire.PDF 提取文本?

Spire.PDF for .NET 是一款功能丰富且对开发者友好的库,支持在 .NET 应用程序中无缝提取 PDF 文本。其优势如下:

  • 精准保留布局:维持原文的布局、间距和阅读顺序。
  • 详细提取能力:提取文本的同时,可获取位置、大小等元数据。
  • 无需依赖 Adobe:无需 Adobe Acrobat 或其他第三方工具即可独立运行。
  • 快速集成:简洁的 API 和详尽的文档,助力加快开发速度。

安装

开始前,需通过以下方式在项目中安装该库:

  • 通过NuGet安装(推荐):
    Install-Package Spire.PDF
    
  • 下载 DLL 文件,在解决方案中手动引用。

若需要完整地体验 Spire.PDF for .NET 的全部功能并移除水印,您可以点击申请免费的30天试用许可证

2. PDF 文本提取(基础示例)

适用于需获取 PDF 全部文本的场景(如文档全文检索、内容分析)。通过 PdfTextExtractor(PDF 文本提取器)遍历所有页面,提取文本后保存到 TXT 文件,同时保留原格式。

C# 代码示例

using Spire.Pdf;
using Spire.Pdf.Texts;
using System.IO;
using System.Text;

namespace ExtractAllTextFromPDF
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 创建 PDF 文档实例
            PdfDocument pdf = new PdfDocument();
            // 加载 PDF 文件
            pdf.LoadFromFile("示例.pdf");

            // 初始化 StringBuilder 以存储提取的文本
            StringBuilder extractedText = new StringBuilder();
            // 遍历 PDF 中的每一页
            foreach (PdfPageBase page in pdf.Pages)
            {
                // 为当前页面创建 PdfTextExtractor 实例
                PdfTextExtractor extractor = new PdfTextExtractor(page);
                // 设置提取选项
                PdfTextExtractOptions option = new PdfTextExtractOptions
                {
                    IsExtractAllText = true // 提取当前页面的所有文本
                };
                // 从当前页面提取文本
                string text = extractor.ExtractText(option);
                // 将提取的文本追加到StringBuilder中
                extractedText.AppendLine(text);
            }

            // 将提取的文本保存到文本文件
            File.WriteAllText("提取文本.txt", extractedText.ToString());
            // 关闭 PDF 文档
            pdf.Close();        
        }
    }
}

3. PDF 文本提取进阶选项

Spire.PDF 不仅支持基础的全文提取,还能满足高级使用场景,例如从特定页面提取文本、从指定区域提取内容,以及获取文本布局细节(如位置和尺寸)。本节将通过实际示例介绍这些功能。

3.1 从单个 PDF 页面提取文本

适用于只需特定页面文本的场景(如提取合同中的 “条款页”、报告中的 “数据摘要页”)。通过 Pages[index] 指定页面(注:PDF 页面索引从 0 开始,索引 0 = 第一页,索引 1 = 第二页)。

C# 代码示例

using Spire.Pdf;
using Spire.Pdf.Texts;
using System.IO;

namespace ExtractTextFromIndividualPages
{
    internal class Program	
    {
        static void Main(string[] args)
        {
            // 创建 PDF 文档实例
            PdfDocument pdf = new PdfDocument();
            // 加载 PDF 文件
            pdf.LoadFromFile("AI数字人.pdf");

            // 获取要提取文本的页面(例如,索引1对应第二页,注:索引从0开始)
            PdfPageBase page = pdf.Pages[1];

            // 为选中的页面创建PdfTextExtractor实例
            PdfTextExtractor extractor = new PdfTextExtractor(page);
            // 设置提取选项
            PdfTextExtractOptions option = new PdfTextExtractOptions
            {
                IsExtractAllText = true
            };
            // 从指定页面提取文本
            string text = extractor.ExtractText(option);

            // 将提取的文本保存到文本文件
            File.WriteAllText("提取指定页面文本.txt", text);
            // 关闭 PDF 文档
            pdf.Close();
        }
    }
}

使用C#提取指定PDF页面中的文本

3.2 从 PDF 页面的指定区域读取文本

适用于需精准提取局部内容的场景(如提取页眉、页脚、表格区域的文本)。通过 PdfTextExtractOptions.ExtractArea 设置矩形提取区域,以限制提取范围。

C# 代码示例

using Spire.Pdf;
using Spire.Pdf.Texts;
using System.IO;
using System.Drawing;

namespace ExtractTextFromDefinedArea
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 创建 PDF 文档实例
            PdfDocument pdf = new PdfDocument();
            // 加载 PDF 文件
            pdf.LoadFromFile("AI数字人.pdf");

            // 获取第二页(索引1对应第二页)
            PdfPageBase page = pdf.Pages[1];

            // 为选中的页面创建 PdfTextExtractor 实例
            PdfTextExtractor textExtractor = new PdfTextExtractor(page);
            // 设置提取选项(指定矩形区域)
            PdfTextExtractOptions extractOptions = new PdfTextExtractOptions
            {
                // 矩形区域参数:X坐标、Y坐标、宽度、高度
                ExtractArea = new RectangleF(0, 0, 890, 170)
            };

            // 从指定矩形区域提取文本
            string text = textExtractor.ExtractText(extractOptions);

            // 将提取的文本保存到文本文件
            File.WriteAllText("Extracted.txt", text);

            // 关闭 PDF 文档
            pdf.Close();
        }
    }
}

使用C#提取PDF指定区域中的文本

3.3 获取文本位置和尺寸信息

适用于需文本布局分析的场景(如 PDF 批注、内容叠加、格式还原)。通过 PdfTextFinder(PDF 文本查找器)获取每个文本片段的 Bounds(边界矩形),包含位置(X/Y 坐标)和尺寸(宽 / 高)。

C# 代码示例

using Spire.Pdf;
using Spire.Pdf.Texts;
using System;
using System.Collections.Generic;
using System.Drawing;

namespace ExtractTextWithPositionAndSize
{
    class Program
    {
        static void Main(string[] args)
        {
            // 加载 PDF 文档
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("示例.pdf");

            // 遍历文档的每一页
            for (int i = 0; i < pdf.Pages.Count; i++)
            {
                PdfPageBase page = pdf.Pages[i];

                // 为当前页面创建 PdfTextFinder 实例
                PdfTextFinder finder = new PdfTextFinder(page);

                // 查找页面上的所有文本片段
                List<PdfTextFragment> fragments = finder.FindAllText();

                Console.WriteLine($"第 {i + 1} 页:");

                // 遍历每个文本片段
                foreach (PdfTextFragment fragment in fragments)
                {
                    // 提取文本内容
                    string text = fragment.Text;

                    // 获取包含位置和大小信息的边界矩形数组
                    RectangleF[] rects = fragment.Bounds;

                    Console.WriteLine($"文本:\"{text}\"");

                    // 遍历当前文本片段的每个边界矩形
                    foreach (var rect in rects)
                    {
                        Console.WriteLine($"位置:({rect.X}, {rect.Y}),尺寸:({rect.Width} × {rect.Height})");
                    }
                    Console.WriteLine(); // 空行分隔不同文本片段
                }
            }
        }
    }
}

4. 结论

Spire.PDF for .NET 为 C# 开发者提供了全场景的 PDF 文本提取能力:

  • 基础需求:全文提取、单页提取;
  • 进阶需求:指定区域提取;
  • 高级需求:文本位置 / 尺寸 / 字体信息提取。

结合这些能力,可轻松构建文档自动化工具(如 PDF 解析器、智能归档系统),大幅提升 PDF 处理效率。

5. 常见问题(FAQ)

Q1:Spire.PDF 能否从受密码保护的 PDF 中提取文本?

答:可以。加载文件时通过重载的 LoadFromFile 方法传入密码即可,示例:

// 加载带密码的PDF(第一个参数:文件路径,第二个参数:密码)
pdf.LoadFromFile("ProtectedSample.pdf", "your_pdf_password");

Q2:Spire.PDF 支持批量提取吗?

答:完全支持。通过 Directory.GetFiles 遍历文件夹中的所有 PDF,批量应用提取逻辑。

Q3:除了文本,能否提取 PDF 中的图片或表格??

答:本文虽以文本提取为核心,但 Spire.PDF 也支持提取图片;若需提取表格,可结合额外逻辑实现表格检测。

Q5:Spire.PDF 能否从扫描件(图像型 PDF)中提取文本?

答:扫描件 PDF,需先通过 OCR(光学字符识别) 转换为可编辑文本。Spire.PDF 本身无内置 OCR,但可与 Spire.OCR for .NET 配合使用,实现从图片中提取文本

Spire.Doc 10.11.9 已发布。该版本支持为形状设置填充色透明度,并增强了Word 到 PDF的转换功能。此外,还修复了邮件合并时程序报System.InvalidOperationException等已知问题。详情请阅读以下内容。

新功能:

问题修复:


获取Spire.Doc 10.11.9请点击:

https://www.e-iceblue.cn/Downloads/Spire-Doc-NET.html

尽管 PDF 文档现在已经变得非常流行,但难免我们会需要对PDF文档进行修改。这时我们可以将 PDF 文档转换为 Word 文档进行修改或二次创作。Spire.PDF for .NET 可以在保持文档布局和字体样式的前提下,将 PDF 文件精确转换为 Word 文档。本文将介绍如何使用 Spire.PDF for .NET 在C# 和 VB.NET 中将 PDF 转换为 Word

固定布局模式转换速度快,有利于最大程度保持 PDF 文件的原貌。但是,生成的文档的可编辑性将受到限制,因为 PDF 中的每一行文本将在生成的 Word 文档中显示在单独的框架中。

流动形态是一种完整的识别模式。转换后的内容不会以框架形式呈现,并且生成的文档的结构是可流动的。生成的 Word 文档很容易重新编辑,但看起来可能与原始 PDF 文件不同。

安装 Spire.PDF for .NET

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

PM> Install-Package Spire.PDF

将 PDF 转换为固定布局的 Doc/Docx 文档

Doc 即Document,是一种文件格式。Doc 格式可以容纳文字格式、脚本语言等。而 Docx 文件格式相对于 Doc,所占用空间更小,在响应速度上,Docx 也要比 Doc 更加优秀。以下是将 PDF 转为 Doc/Docx 格式的具体步骤。

  • C#
  • VB.NET
using Spire.Pdf;

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

            //加载示例 PDF 文件
            doc.LoadFromFile(@"C:\Users\Administrator\Desktop\示例文档.pdf");

            //将PDF转换为Doc格式文件并保存
            doc.SaveToFile("ToDoc.doc", FileFormat.DOC);

            //将PDF转换为Docx格式文件并保存
            doc.SaveToFile("ToDocx.docx", FileFormat.DOCX);

        }
    }
}
Imports Spire.Pdf

Namespace ConvertPdfToDoc
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            '创建一个 PdfDocument 对象
            Dim doc As PdfDocument = New PdfDocument()

            '加载示例 PDF 文件
            doc.LoadFromFile("https://cdn.e-iceblue.cn/C:\Users\Administrator\Desktop\示例文档.pdf")

            '将PDF转换为Doc格式文件并保存
            doc.SaveToFile("ToDoc.doc", FileFormat.DOC)

            '将PDF转换为Docx格式文件并保存
            doc.SaveToFile("ToDocx.docx", FileFormat.DOCX)

        End Sub
    End Class
End Namespace

将 PDF 转换为流动形态的 Doc/Docx 文档

除了默认的转换引擎,Spire.PDF 还提供了另一个引擎,称为 PS 模式,将 usePsModeuseFlowRecognitionMode 的布尔值设置为 true 来确定使用 PS 模式并将识别模式设置为流。 以下是使用 PS 模式将 PDF 转换为 Doc/Docx 的步骤。

  • C#
  • VB.NET
using Spire.Pdf;

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

            //加载示例 PDF 文件
            doc.LoadFromFile(@"C:\Users\Administrator\Desktop\示例文档.pdf");

            // PDF转Word使用PS模式,识别模式设置为流
            doc.ConvertOptions.SetPdfToDocOptions(true, true);
      
      //将PDF转换为Doc格式文件并保存
            doc.SaveToFile("ToDoc1.doc", FileFormat.DOC);

            //将PDF转换为Docx格式文件并保存
            doc.SaveToFile("ToDocx1.docx", FileFormat.DOCX);
        }
    }
}
Imports Spire.Pdf

Namespace ConvertPdfToDocxUsingPsMode
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            '创建一个 PdfDocument 对象
            Dim doc As PdfDocument = New PdfDocument()

            '加载示例 PDF 文件
            doc.LoadFromFile("https://cdn.e-iceblue.cn/C:\Users\Administrator\Desktop\示例文档.pdf")

            ' PDF转Word使用PS模式,识别模式设置为流
            doc.ConvertOptions.SetPdfToDocOptions(True, True)

            '将PDF转换为Doc格式文件并保存
            doc.SaveToFile("ToDoc1.doc", FileFormat.DOC)

            '将PDF转换为Docx格式文件并保存
            doc.SaveToFile("ToDocx1.docx", FileFormat.DOCX)
        End Sub
    End Class
End Namespace

C#/VB.NET 将 PDF 转为 Word

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。