提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2020-12-04 09:55:00.057|阅读 378 次
概述:在各种应用程序中,PDF文档是动态生成的,本文将学习如何使用C#创建PDF文件以及如何插入文本,图像,表格和其他组件。
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
相关链接:
近年来,PDF文档的自动生成和处理已成为一项苛刻的功能。在各种应用程序中,PDF文档是动态生成的,例如发票,收据和不同类型的报告。因此,本文涵盖了.NET应用程序中PDF自动化的基本实现。在本文中,将学习如何使用C#创建PDF文件以及如何插入文本,图像,表格和其他组件。
(安装包仅提供部分功能,并设置限制,如需试用完整功能请。)
在C#中创建PDF文件
让我们从创建一个包含文本片段的简单PDF文档开始。以下是步骤以及API参考。
下面的代码示例演示如何使用C#创建简单的PDF文件。
// Initialize document object Document document = new Document(); // Add page Page page = document.Pages.Add(); // Add text to new page page.Paragraphs.Add(new Aspose.Pdf.Text. // Save PDF document.Save
在C#中编辑现有的PDF
修改PDF文件就像创建一个新文件一样简单。只需使用Document类加载文件,执行所需的操作,然后保存即可。以下是修改PDF的步骤。
以下代码示例显示了如何使用C#修改PDF。
// Load PDF
var pdfDocument = new Aspose.Pdf.Document("document.pdf");
//
pdfDocument.Pages.Add();
// Save the updated PDF
pdfDocument.Save(modifiedFileName);
使用C#在PDF中插入图像
现在让我们检查如何将图像插入PDF文档。以下是执行此操作的步骤。
下面的代码示例演示如何使用C#将图像添加到PDF文档。
// Open document
Document pdfDocument = new Document("document.pdf");
// Set coordinates
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;
// Get the page where image needs to be added
Page page = pdfDocument.Pages[1];
// Load image into stream
FileStream imageStream = new FileStream("aspose-logo.jpg", FileMode.Open);
// Add image to Images collection of Page Resources
page.Resources.Images.Add(imageStream);
// Using GSave operator: this operator saves current graphics state
page.Contents.Add(new Aspose.Pdf.Operators.GSave());
// Create Rectangle and Matrix objects
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });
// Using ConcatenateMatrix (concatenate matrix) operator: defines how image must be placed
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];
// Using Do operator: this operator draws image
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));
// Using GRestore operator: this operator restores graphics state
page.Contents.Add(new Aspose.Pdf.Operators.GRestore());
// Save updated document
pdfDocument.Save("document.pdf");
使用C#在PDF中创建表格
表格是文档的重要组成部分,用于以行和列的形式组织数据。用于.NET的Aspose.PDF为您提供了一种非常简单的方法来在PDF文档中创建和插入表格。以下是执行此操作的步骤。
下面的代码示例演示如何在C#中的PDF文档中创建和添加表格。
// Load source PDF document
Aspose.Pdf.Document doc = new Aspose.Pdf.Document("document.pdf");
// Initializes a new instance of the Table
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
// Set the table border color as LightGray
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// Set the border for table cells
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// Create a loop to add 10 rows
for (int row_count = 1; row_count < 10; row_count++) { // Add row to table Aspose.Pdf.Row row = table.Rows.Add(); // Add table cells row.Cells.Add("Column (" + row_count + ", 1)"); row.Cells.Add("Column (" + row_count + ", 2)"); row.Cells.Add("Column (" + row_count + ", 3)"); } // Add table object to first page of input document doc.Pages[1].Paragraphs.Add(table); // Save updated document containing table object doc.Save("document_with_table_out.pdf");
在C#中以PDF创建表单
PDF中的表格用于从阅读器收集数据。您可以在PDF表单中插入文本框,复选框,单选按钮和其他受支持的控件。PDF格式支持两种形式的表格:Acro表单和XFA表单(请参阅详细信息)。以下是在PDF中创建和添加表单的步骤。
以下代码示例显示了如何使用C#将表单添加到PDF文档。
// Open document
Document pdfDocument = new Document("document.pdf");
// Create a field
TextBoxField textBoxField = new TextBoxField(pdfDocument.Pages[1], new Aspose.Pdf.Rectangle(100, 200, 300, 300));
textBoxField.PartialName = "textbox1";
textBoxField.Value = "Text Box";
// TextBoxField.Border = new Border(
Border border = new Border(textBoxField);
border.Width = 5;
border.Dash = new Dash(1, 1);
textBoxField.Border = border;
textBoxField.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
// Add field to the document
pdfDocument.Form.Add(textBoxField, 1);
// Save modified PDF
pdfDocument.Save("output.pdf");
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn




在嵌入式软件测试领域,对交叉编译代码进行单元测试是一大挑战。Parasoft C/C++test作为专业的C/C++测试工具,能够与劳特巴赫Trace32调试器深度集成。下面会详细介绍如何在C++test中配置Trace32调试器,实现对PowerPC架构程序的单元测试,涵盖环境设置、项目导入到测试执行的全过程。
本文将为大家介绍如何使用DevExpress WinForms数据网格控件实现摘要文本的格式化,欢迎下载最新版组件体验!
Parasoft C/C++test作为一款功能强大的自动化测试工具,为嵌入式开发提供了全面的测试解决方案。特别是在CCS开发环境中,C++test能够无缝集成,为F2812等DSP项目提供专业的单元测试支持。下面将介绍如何在CCS3环境下配置和使用C++test进行F2812项目的单元测试。
在嵌入式开发中,尤其是基于ARM架构的安全关键领域,单元测试是验证代码在目标硬件上运行时行为正确性的关键环节,对于保障最终产品的可靠性至关重要。下面将介绍如何利用Parasoft C/C++test开展单元测试,包括配置、执行及解决可能遇到的许可证问题,完成从静态检查到动态运行的完整测试闭环。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站