C# PDFSharp AcroField PdfTextField格式提取

C# PDFSharp AcroField PdfTextField格式提取,c#,pdf,pdf-generation,pdfsharp,acrofields,C#,Pdf,Pdf Generation,Pdfsharp,Acrofields,我正在写一件你可以称之为公证行为申请书的东西。在这个应用程序中,保存政府提供的pdf模板非常重要 我使用PDFSharp来读取字段,这很简单,但是有一件事,文本字段格式。我被它困住了,因为我在规范中找不到任何关于格式的东西,似乎它是故意遗漏的 只要有一个字段只接受美元符号、日期或任何限制的特殊值(例如10到30),我就无法将其读入应用程序并使其对用户可见(用户有自己的字段,如浏览器中的“自动填充”,如果有100%的几率为正确值,则会自动填充,否则会自动完成) 我的问题是:PDFSharp中有没有

我正在写一件你可以称之为公证行为申请书的东西。在这个应用程序中,保存政府提供的pdf模板非常重要

我使用PDFSharp来读取字段,这很简单,但是有一件事,文本字段格式。我被它困住了,因为我在规范中找不到任何关于格式的东西,似乎它是故意遗漏的

只要有一个字段只接受美元符号、日期或任何限制的特殊值(例如10到30),我就无法将其读入应用程序并使其对用户可见(用户有自己的字段,如浏览器中的“自动填充”,如果有100%的几率为正确值,则会自动填充,否则会自动完成)


我的问题是:PDFSharp中有没有读取这些格式属性的方法,如果没有,你们是如何解析这些格式属性的,如果必须的话。

好的,我能从中找到的唯一解决方案是:

var formatting = (((field.Where(item => item.Key == "/AA")
                              .Select(item => item.Value)
                              .First() as PdfDictionary).Where(item => item.Key == "/F")
                                                        .Select(item => item.Value)
                                                        .First() as PdfSharp.Pdf.Advanced.PdfReference).Value as PdfDictionary).Where(item => item.Key == "/JS")
                                                                                                       .Select(item => item.Value).First() as PdfString;
在那之后,我能够提取一些关于格式的信息,使自定义正则表达式成为可能,但这就是我所能做的


不幸的是,这是PDFSharp。

我使用BitMiracle.dll解析了我阅读PDF的任务的所有格式和间距。这些家伙有最好的东西来解析PDF,但很遗憾,他们是付费的,但你可能想通过试用版p.s.来完成这些工作。这个项目值得他们花费的每一分钱@Bobrovsky是这个项目的开发者吗PDFSharp让我很痛苦,但我一定要这么做,因为我只能使用自由软件。
var formatting = (((field.Where(item => item.Key == "/AA")
                              .Select(item => item.Value)
                              .First() as PdfDictionary).Where(item => item.Key == "/F")
                                                        .Select(item => item.Value)
                                                        .First() as PdfSharp.Pdf.Advanced.PdfReference).Value as PdfDictionary).Where(item => item.Key == "/JS")
                                                                                                       .Select(item => item.Value).First() as PdfString;