首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用iTextSharp填写其他字段时,如何强制PDF格式化和计算?

在使用iTextSharp填写其他字段时,如果需要强制PDF格式化和计算,可以使用以下方法:

  1. 使用PdfStamper类来填写表单字段,并设置FormFlattening属性为true,这将强制PDF格式化。
代码语言:csharp
复制
using (PdfReader pdfReader = new PdfReader(inputFile))
{
    using (PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(outputFile, FileMode.Create)))
    {
        AcroFields pdfFormFields = pdfStamper.AcroFields;
        pdfFormFields.SetField("fieldName", "fieldValue");
        pdfStamper.FormFlattening = true;
    }
}
  1. 使用PdfReaderPdfStamper类来填写表单字段,并使用PdfFormField类的SetFieldFlags方法设置字段标志位,以强制PDF格式化和计算。
代码语言:csharp
复制
using (PdfReader pdfReader = new PdfReader(inputFile))
{
    using (PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(outputFile, FileMode.Create)))
    {
        AcroFields pdfFormFields = pdfStamper.AcroFields;
        pdfFormFields.SetField("fieldName", "fieldValue");
        PdfFormField field = pdfFormFields.GetFieldItem("fieldName");
        field.SetFieldFlags(PdfFormField.FF_READ_ONLY);
    }
}
  1. 使用PdfReaderPdfStamper类来填写表单字段,并使用PdfFormField类的SetWidget方法设置字段的外观,以强制PDF格式化和计算。
代码语言:csharp
复制
using (PdfReader pdfReader = new PdfReader(inputFile))
{
    using (PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(outputFile, FileMode.Create)))
    {
        AcroFields pdfFormFields = pdfStamper.AcroFields;
        pdfFormFields.SetField("fieldName", "fieldValue");
        PdfFormField field = pdfFormFields.GetFieldItem("fieldName");
        PdfDictionary widget = field.GetWidget(0);
        PdfArray bBox = widget.GetAsArray(PdfName.RECT);
        float x1 = bBox.GetAsNumber(0).FloatValue;
        float y1 = bBox.GetAsNumber(1).FloatValue;
        float x2 = bBox.GetAsNumber(2).FloatValue;
        float y2 = bBox.GetAsNumber(3).FloatValue;
        PdfContentByte canvas = pdfStamper.GetOverContent(widget.GetAsNumber(PdfName.PAGE).IntValue);
        canvas.SetColorStroke(BaseColor.BLACK);
        canvas.Rectangle(x1, y1, x2 - x1, y2 - y1);
        canvas.Stroke();
    }
}

以上方法可以强制PDF格式化和计算,并且不涉及到其他云计算品牌商。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

开源免费且稳定实用的.NET PDF打印组件itextSharp(.NET组件介绍之八)

对于项目开发中使用到打印的地方会非常多,在.NET项目中,选择打印的方式比较多,例如原始的IE网页打印、水晶报表、JS插件实现打印、导出文档打印,以及今天提到的使用itextSharp组件实现PDF打印等等...一.itextSharp组件概述:          1.iText的是PDF库,它允许你创建,调整,检查维护的可移植文档格式文件(PDF):         (1).基于从XML文件或数据库中的数据生成文件报告...(4).从现有PDF文件拆分或连接页面;填写交互式表单。         (5).即成动态生成或操纵PDF文档到Web浏览器。       ...iText所使用的的Java,.NET,AndroidGAE开发人员加强与PDF功能的应用程序。iTextSharp的是.NET端口。    ...(3).PDF表单填写。        (4).XML功能。        (5).数字签名。

7.2K50

iText 制作PDF

在此您可以下载你想使用的版本http://sourceforge.net/projects/itextsharp/files/itextsharp/。于是我就下载了现在最新的版本5.4.0。   ?...= new Document(PageSize.A5, 36, 72, 108, 180); 说明: 当创建一个矩形或设置边距,你可能希望知道该用什么度量单位:厘米、英寸或象素,事实上,默认的度量系统以排版单位磅为基础得出其他单位的近似值...,如1英寸=72磅,如果你想在A4页面的PDF中创建一个矩形,你需要计算以下数据:   21 厘米 / 2.54 = 8.2677 英寸   8.2677英寸* 72 = 595 磅   29.7 厘米...同时还有另外一种情况,你可以用iTextSharp.text.pdf.PdfWriter产生文档PDF文件。   ...(或者iTextSharp的引用)创建时间(实际上这两种方法是自动调用的)。

2.2K20

CSharp每日代码示例:使用iTextSharp创建PDF文件

本文演示如何使用iTextSharp PDF库将文本文件转换为PDF文件。 iTextSharp是一个从JAVA项目iText衍生的.Net版本的开源项目,采用GPL许可证发布。...当创建一个矩形或设置边距,你可能希望知道该用什么度量单位:厘米、英寸或象素,事实上,默认的度量系统以排版单位磅为基础得出其他单位的近似值,如1英寸=72磅,如果你想在A4页面的PDF中创建一个矩形,你需要计算以下数据...同时还有另外一种情况,你可以用iTextSharp.text.pdf.PdfWriter产生文档PDF文件,如果你想创建一个TeX文档,你可以使用iTextSharp.text.TeX.TeXWriter...、段落、锚点等,块是一个有确定字体的字符串,要添加块到文档中其他所有布局变量均要被定义。...使用iTextSharp工具转换为单个PDF的代码 The Code 1.

2.5K10

使用iText5来处理PDF

项目要求,通过pdf模板,把用户提交的数据保存到一个PDF文件中。其中有文字内容,也有图片。...之前选了aspose.pdf,因为抠门,不能花钱买,就从网上找的的开心版,好不容易出来点模板,结果插入图片的时候,同一页只能插入一张图片,而官方的试用版是可以正常两张的,另外字段比较多,速度比较慢,几百个字段需要一分多钟...之后尝试iText,发现要比aspose.pdf好用的多,下面就说下用法。 需要通过nuget安装iTextSharp,选第一个,版本号是5.5.12,也就是iText5版本,该版本是AGPL许可。...完整代码如下: using iTextSharp.text; using iTextSharp.text.pdf; using System.IO; namespace Tools { public...//图片坐标 image.ScaleAbsolute(item.Width, item.Height); //设置图片宽度高度

2.4K10

.NET Core.NET5.NET6 开源项目汇总1:常用必备组件

尽管它在最简单的应用程序中也很有用,但Serilog对结构化日志的支持在检测复杂、分布式异步应用程序系统也很有用。...使用 itextsharp.lgplv2.core 把Html转PDF https://www.cnblogs.com/ping9719/p/12759848.html....Net Core 使用 itextsharp.lgplv2.core 生成PDF https://blog.csdn.net/weixin_30737363/article/details/96669770...可以自动更新文档中的字段。 在Word文档中插入html/rtf文本(带标记)或html/rtf文档。 克隆列表或表。 添加或修改复选框。 设置图片透明度。 基于引用的超链接创建格式化的超链接。...它还提供其他功能,如缓存同步、并发更新、序列化、事件、性能计数器。开发人员只有在需要才可以选择使用这些功能。 ?

4K10

java PDF开源库选择与iText发展历史

再看一下PDFBox在Github上两者的人气: iText: PDFBox: 这还不包括iText的其他项目,光一个项目iText就占上风了。...-1b标准 使用标准Java打印API打印PDF文档 另存为图片文件,如PNG、JPEG 使用内嵌字体图片从头创建PDF 电子签名PDF文件 iText: PDFBox里面的特性iText都有 iText...iText的这个许可协议我就觉得很好,我们能够第一间拿到所有源码,使用其功能,能自己评估其性能,像我们这种学生党用来学习研究没有那么多顾虑,等我们需要商业用途的时候,那时也是在企业了,出点钱获取服务也是理所应当...iText提供除了基本的创建、修改PDF文件外的其他高级的PDF特性,例如基于PKI的签名,40位128位加密,颜色校正,带标签的PDFPDF表单(AcroForms),PDF/X,通过ICC配置文件条形码进行颜色管理...iText库的.NET版本,并且与iText版本号同步,iText 5.0.0iTextSharp5.0.0同时发布 Java方面,使用Java 5/JDK 1.5 iText开始逐渐专业化,iText

5.2K30

还在为选择办公软件而烦恼吗?不妨试试ONLYofficeV8.0

二.优势二sheet 1.数据分析 在线简化自动化您的计算使用ONLYOFFICE电子表格编辑器整理分析您的数据。...打开、查看编辑.xlsx、.xls、.ods.csv文件,并将电子表格另存为PDF。 2.轻松实现精准计算 使用400多个函数公式并利用特殊的语法提示,实现快速及准确的结果。...通过向格式化表格添加切片器快速筛选数据,或指示当前筛选状态以查看所展示的数据。移除重复值与行以提高计算精确度。 4.可视化呈现数据 添加图表、迷你图图形。...进行这些操作您完全无需离开编辑器。让其他用户在编辑电子表格应用自己的过滤条件,而又不会打扰协作作者。浏览版本历史,恢复任何以前的文件版本。...四.V8.0的创新之处 1.可填写PDF 表单 能够创建PDF格式的复杂表单,并在ONLYOFFICE桌面移动应用程序中在线填写。 需要使用 DOCXF 模板创建可填写PDF 表单。

10810

Python处理PDF——PyMuPDF的安装与使用

它支持多种文档格式,如PDF、XPS、OpenXPS、CBZ、EPUBFictionBook 2。您可以使用移动查看器对PDF文档进行注释填写表单(这个功能很快也将应用于桌面查看器)。...命令行工具允许您注释、编辑文档,并将文档转换为其他格式,如HTML、SVG、PDFCBZ。您还可以使用Javascript编写脚本来操作文档。...检查页面的链接、批注或表单字段 使用某些查看器软件显示文档,链接显示为==“热点区域”==。如果您在光标显示手形符号单击,您通常会被带到该热点区域中编码的标记。...您可以使用此信息来突出显示这些区域(仅限PDF)或创建文档的交叉引用。 7. PDF操作 PDF是唯一可以使用PyMuPDF修改的文档类型。其他文件类型是只读的。...下面介绍如何操作PDF文档。 a.

7.1K30

Python处理PDF——PyMuPDF的安装与使用

它支持多种文档格式,如PDF、XPS、OpenXPS、CBZ、EPUBFictionBook 2。您可以使用移动查看器对PDF文档进行注释填写表单(这个功能很快也将应用于桌面查看器)。...命令行工具允许您注释、编辑文档,并将文档转换为其他格式,如HTML、SVG、PDFCBZ。您还可以使用Javascript编写脚本来操作文档。...检查页面的链接、批注或表单字段 使用某些查看器软件显示文档,链接显示为==“热点区域”==。如果您在光标显示手形符号单击,您通常会被带到该热点区域中编码的标记。...您可以使用此信息来突出显示这些区域(仅限PDF)或创建文档的交叉引用。 7. PDF操作 PDF是唯一可以使用PyMuPDF修改的文档类型。其他文件类型是只读的。...下面介绍如何操作PDF文档。 a.

6.3K10

ASP.NET MVC 5 - 给数据模型添加校验器

该字符串字段显示新的长度限制流派字段(Genre)不能再为空。 验证属性指明您想要应用到模型属性的行为。...这些错误是强制执行了客户端端(使用JavaScriptjQuery)和服务器端(如果用户禁用了JavaScript)。...该枚举的DataType提供了多种数据类型,如Date, Time,  PhoneNumber, Currency, EmailAddress 其他更多的。...(您可能不希望这样的某些字段 - 例如货币值,你可能不希望在编辑文本框中出现货币符号。) 你可以单独使用DisplayFormat属性;但DataType属性一起,通常是一个好主意。...ASP.NET MVC 5 - 使用Wijmo MVC 5模板1分钟创建应用 希望这些文章对感兴趣的朋友有所帮助,另附上PDF版的汇总文档: 《ASP.NET MVC 5 入门指南》PDF

9K70

Python 处理 PDF —— PyMuPDF 的安装与使用

它支持多种文档格式,如PDF、XPS、OpenXPS、CBZ、EPUBFictionBook 2。您可以使用移动查看器对PDF文档进行注释填写表单(这个功能很快也将应用于桌面查看器)。...命令行工具允许您注释、编辑文档,并将文档转换为其他格式,如HTML、SVG、PDFCBZ。您还可以使用Javascript编写脚本来操作文档。...检查页面的链接、批注或表单字段 使用某些查看器软件显示文档,链接显示为==“热点区域”==。如果您在光标显示手形符号单击,您通常会被带到该热点区域中编码的标记。...您可以使用此信息来突出显示这些区域(仅限PDF)或创建文档的交叉引用。 7. PDF操作 PDF是唯一可以使用PyMuPDF修改的文档类型。其他文件类型是只读的。...下面介绍如何操作PDF文档。 a.

1.7K10

Adobe Acrobat DC软件--PDF编辑器最新版本下载安装教程

PDF编辑器全版本下载地址(mac+windows版本): adobeit.top 以下是使用Adobe Acrobat进行PDF表单设计编辑的基本步骤: 打开Adobe Acrobat软件:首先打开...添加表单字段:在工具栏中选择“表单”选项卡,选择需要添加的表单字段类型,例如文本框、单选框、复选框、下拉框等。单击表单上的位置并按住鼠标拖动,以确定表单字段的大小位置。...分发表单:分发表单以便他人填写表单,您可以选择在电子邮件中发送表单、上传表单至云端存储空间、将表单放置在网站上供他人下载等方式。...此外,Adobe Acrobat还提供了高级表单功能,例如添加计算字段、添加条形码、自定义表单样式等功能,可以让您创建更复杂的表单。...而Adobe Acrobat则可以在编辑、管理转换PDF文件等方面提供全面的解决方案。两者结合使用,可以帮助用户更轻松地完成电子签名的流程,并将签名后的文件以PDF格式保存管理。

93810

Python处理PDF——PyMuPDF的安装与使用

它支持多种文档格式,如PDF、XPS、OpenXPS、CBZ、EPUBFictionBook 2。您可以使用移动查看器对PDF文档进行注释填写表单(这个功能很快也将应用于桌面查看器)。...命令行工具允许您注释、编辑文档,并将文档转换为其他格式,如HTML、SVG、PDFCBZ。您还可以使用Javascript编写脚本来操作文档。...检查页面的链接、批注或表单字段 使用某些查看器软件显示文档,链接显示为==“热点区域”==。如果您在光标显示手形符号单击,您通常会被带到该热点区域中编码的标记。...您可以使用此信息来突出显示这些区域(仅限PDF)或创建文档的交叉引用。 7. PDF操作 PDF是唯一可以使用PyMuPDF修改的文档类型。其他文件类型是只读的。...下面介绍如何操作PDF文档。 a.

3.9K10

Python 处理 PDF 的神器 -- PyMuPDF

它支持多种文档格式,如PDF、XPS、OpenXPS、CBZ、EPUBFictionBook 2。您可以使用移动查看器对PDF文档进行注释填写表单(这个功能很快也将应用于桌面查看器)。...命令行工具允许您注释、编辑文档,并将文档转换为其他格式,如HTML、SVG、PDFCBZ。您还可以使用Javascript编写脚本来操作文档。...检查页面的链接、批注或表单字段 使用某些查看器软件显示文档,链接显示为==“热点区域”==。如果您在光标显示手形符号单击,您通常会被带到该热点区域中编码的标记。...您可以使用此信息来突出显示这些区域(仅限PDF)或创建文档的交叉引用。 7. PDF操作 PDF是唯一可以使用PyMuPDF修改的文档类型。其他文件类型是只读的。...下面介绍如何操作PDF文档。 a.

3K31

《CLR via C#》笔记:第4部分 核心机制(4)

调用格式化器的Serialize方法,对象图中的所有对象都被序列化到流中。(P544 1) 格式化器参考对每个对象的类型进行描述的元数据,从而了解如何序列化完整的对象图。...序列化时,Serialize方法利用反射来查看每个对象的类型中都有哪些实例字段。在这些字段中,任何一个引用了其他对象﹐格式化器的Serialize方法就知道那些对象也要进行序列化。...(P544 3) 请确保序列化反序列化使用相同的格式化器。(P545 1) 使类型可序列化 设计类型,设计人员必须郑重地决定是否允许类型的实例序列化。类型默认是不可序列化的。...(P546 last) 控制序列化反序列化 序列化以及反序列化中一些问题:例如字段含有反序列化后变得无效的信息。字段含有很容易计算的信息,等。以及相应代码解决方法。...格式化如何自动反序列化类型应用了SerializableAttribute特性的对象:(P551 last) 1、格式化器从流中读取程序集标识完整类型名称。

33520

【合合TextIn】智能文档处理系列—电子文档解析技术全格式解析

2.2 解析关键点2.2.1 字符编码识别在处理TXT文件,准确识别字符编码是至关重要的第一步。字符编码决定了文本文件中的字节如何转换成字符。常见的字符编码包括ASCII、UTF-8、GBK等。...PDF文件是一个复合格式,包含文本、图像、矢量图形、字体其他多媒体元素的集合。PDF文档的信息结构包括:对象:PDF文件中的基本数据单位,包括数字、字符串、数组、字典等。...尽管CSV格式结构简单,但在实际应用中,处理CSV数据仍需考虑到字段中可能包含的特殊字符(如逗号、换行符、引号等)。...此外,当字段值中包含分隔符、换行符或引号,这些字段通常会用文本限定符(通常是双引号)包围。解析器必须能够处理这些复杂情况,确保字段被正确解析。...9.2.2 多行记录特殊字符CSV文件中的一个记录可能跨越多行,尤其是当字段值内包含换行符。解析器需要正确处理这些情况,以避免将一个记录错误地分割成多个记录。

20510

纺织LIMS实验室管理软件

LIMS成熟服务于不同行业的实验室(贵金属,食品、纺织品、玩具、商检环境等等) 今天给大家讲讲LIMS实验室管理软件在纺织行业是如何实现信息管理。...订单管理 填写委托单 以下是填写委托单截图 1.准确快速的填写委托单,提高效率 当第一次填写:委托单位信息,样品信息纺织LIMS系统会填自动保存信息,便于下次填写的时候方便调用。...2.系统判断到客户的委托单位信息,样品信息,有变更,纺织LIMS系统会自动更新最新的数据。 3.快速调用客户的委托项目,自动根据项目的价格,自动计算总价,可自主调整价格。...3.查询某个委托单位送检的订单并批量导出PDF报告,直接通过邮件发送给客户。 4.批量打印:打印委托单,打印任务单,打印样品标签。 5.复制订单:支持套用,修改,去项,再来一单功能。...1.根据项目的数据进行自动计算,如果识别数据出现错误,系统会强制性提醒并且提醒修正。 例如:纤维含量/%(结合公定回潮率)项目,当输入的结果数据不等于100%,系统会强制性提醒。

29200

通达OA工作流-流程设计

注:使用批量设置经办人功能需注意以下几点: A、当授权范围不填写并且相关授权范围下方的复选框未勾选,进行保存, B、当授权范围不填写并且勾选相关授权范围下方的复选框,进行保存,会 清空原有的设置。...克隆界面新建流程界面相同,但是不可以选择其他的表单,以免在克隆,由于可写字段、条件设置等不同发生数据错误。...流程并发的目的在于解决多个步骤的工作如何同时开展的问题。同时可以在步骤基本属性中定义强制并发或者并发后强制合并。...是否允许转交设置办理时限:其他步骤转向该步骤是否可以指定办理时限,如不允许指定,则系统按上面设置的办理时限计算;如允许指定,系统则根据转交指定的时限计算。...2.2.4.2 保密字段 保密字段对于本步骤主办人、经办人均为不可见,为保密数据而设计。 2.2.4.3 必填字段 必填字段是在办理工作必须填写数据。办理工作,如果不填写则无法 转交工作。

2.5K30
领券