2016-06-14 88 views
0

我使用PdfStamper从PDF表单中获取字段值。我可以使用AcFields类中的GetField()函数成功地从文本框,组合框和复选框中获取值。但是当涉及到单选按钮时,我可以获取该集合中第一个单选按钮的值或“关”。我错过了什么?我应该得到不同的价值吗?有没有一个我不知道的常见错误? 这里是我的代码示例:我做错了什么,以获得单选按钮值?

Private Sub btnFinish_ItemClick2(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnFinish.ItemClick 
Dim pdfReader As New PdfReader(savedfile) 
    Dim pdfStamper As New PdfStamper(pdfReader, New FileStream(pdf_prefinal, FileMode.Create)) 
    Dim pdfFormFields As AcroFields = pdfStamper.AcroFields 

    Dim pdfFieldscollection As System.Collections.Generic.IDictionary(Of String, iTextSharp.text.pdf.AcroFields.Item) = pdfReader.AcroFields.Fields 
    Dim dsNewRow As DataRow = DualReview_databaseDataSet.tblEngineeringReviewTracking.NewRow() 

    Dim rqdEmptyFields As New List(Of String) 
    Dim rqdCommentFields As New List(Of Integer) 
    Dim keepSavingfields As Boolean = True 

    'Loop through each field in order to find empty fields and to save fields value 
    For Each field In pdfFieldscollection 

     Dim fieldName As String = field.Key 
     Dim fieldType As Integer = pdfFormFields.GetFieldType(fieldName) 
     Dim fieldValue As String = pdfFormFields.GetField(fieldName) 
     Dim saveCurrentField As Boolean = False 
     '... 

    Next 
End Sub 

回答

1

都在同一个“组”单选按钮应具有相同的名称。每个按钮都应该有自己的“导出值”。在您的代码中,名称将返回一次,其中包含所选按钮的值。 (属性“出口值”应该被命名为“价值”国际海事组织)

+0

我意识到问题不是iTextSharp,而是它是我正在使用的PDF查看器软件没有正确记录单选按钮值。 –

+0

可能是PDF文档的设计问题。您需要一个PDF编辑器才能进行更改。我喜欢FoxIt Phantom。 – rheitzman