首页
学习
活动
专区
工具
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,Android和GAE开发人员加强与PDF功能的应用程序。iTextSharp的是.NET端口。    ...(3).PDF表单填写。        (4).XML功能。        (5).数字签名。

7.8K50

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.3K20
  • 使用 iTextSharp VS ComPDFKit 在 C# 中从 PDF 中提取文本

    PDF 文档是主要数据源之一,包含大量有价值的信息。对于开发人员来说,从 PDF 中提取文本是有效数据提取的第一步。你们中的一些人可能会担心如何使用 C# 从 PDF 中提取文本。...在本指南中,我们将深入研究如何使用 iTextSharp 在 C# 中进行 PDF 文本提取,涵盖从安装和项目设置到提供代码示例的所有内容。...• 当我们使用 CPDFConverterJsonText 类访问 PDF 文档的内容流时,我们经常会遇到零散的数据。例如,假设我们试图从 PDF 文档中提取“这是一个示例句子。”这句话。...当未启用 OCR 时, CPDFConverterJsonText 类将返回 与 PDF 页面内容流中定义完全相同的文本对象。2. 如何使用 iTextSharp 从 PDF 中提取文本?...使用 iTextSharp,开发人员需要编写自定义代码或逻辑来实现所需的功能,这需要对库和 C# 有深入的了解。

    14910

    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.

    3.1K10

    使用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.6K10

    .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文档。 克隆列表或表。 添加或修改复选框。 设置图片透明度。 基于引用的超链接创建格式化的超链接。...它还提供其他功能,如缓存同步、并发更新、序列化、事件、性能计数器。开发人员只有在需要时才可以选择使用这些功能。 ?

    4.1K10

    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位加密,颜色校正,带标签的PDF,PDF表单(AcroForms),PDF/X,通过ICC配置文件和条形码进行颜色管理...iText库的.NET版本,并且与iText版本号同步,iText 5.0.0和iTextSharp5.0.0同时发布 Java方面,使用Java 5/JDK 1.5 iText开始逐渐专业化,iText

    7K30

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

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

    18810

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

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

    7.4K30

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

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

    6.5K10

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

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

    9.1K70

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

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

    2.4K10

    Python 处理 PDF 的神器 -- PyMuPDF

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

    3.5K31

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

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

    4.1K10

    将文档管理与学习无缝集成:ONLYOFFICE 与 Moodle 的完美结合

    其支持在线编辑各种类型的文档,包括PDF和可填写的表单等,让用户可以随时随地进行办公工作,无需受限于特定的办公环境。...在 Moodle 中使用 ONLYOFFICE 文档 如何部署Moodle+ONLYOFFICE?...当学生点击该活动名称或链接时,ONLYOFFICE 编辑器将会在浏览器中打开,他们可以直接在其中创建或编辑文档、查看 PDF 文件,或与其他用户进行实时协作。...ONLYOFFICE 表单提供的功能包括但不限于: 多样的表单字段 填写者角色设置 扩展字段属性 实时协作功能 在线分享与填写 导出为 PDF 格式 通过使用 ONLYOFFICE 表单,作业的布置和提交流程变得更加简便...此外,还可以添加提示和占位符,或者为字段设置填写人角色,用户可以根据颜色识别出哪些字段需要填写。 使用ONLYOFFICE实现无缝协作 借助在线表单功能,我们可以实时协作创建表单,共同分担工作量。

    13810

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

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

    36620

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

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

    44610

    纺织LIMS实验室管理软件

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

    34300
    领券