Не считывание полей из PDF-файла с помощью iTextSharp
имейте PDF-файл, который генерируется сторонним программным обеспечением. Я пытаюсь прочитать поля PDF-файла с помощью iTextSharp. Мне нужно найти поле и поместить на него черное изображение.
В режиме отладки Акрополя и ключи всегда отсутствуют.(0)
Я пробовал разные коды, но не могу прочитать поля PDF-файла. Я также искал на форумах, но не смог понять этого.
Я могу понять, как поместить изображение, но поиск конкретного поля не работает.
В моем коде ниже я просто пытаюсь распечатать, но поля и ключи равны нулю
var pdfReader = new PdfReader(fileName); var fieldList = GetFormFieldNames(pdfReader); var fieldList2 = GetFormFieldNamesWithValues(pdfReader); private static string GetFormFieldNames(PdfReader pdfReader) { return string.Join("\r\n", pdfReader.AcroFields.Fields .Select(x => x.Key).ToArray()); } private static string GetFormFieldNamesWithValues(PdfReader pdfReader) { return string.Join("\r\n", pdfReader.AcroFields.Fields .Select(x => x.Key + "=" + pdfReader.AcroFields.GetField(x.Key)) .ToArray()); } //I have also tried like this just to display the fields var pdf_filename = @"C:\DownloadTXT\DA9XGWKYB 5001.pdf"; using (var reader = new PdfReader(pdf_filename)) { var fields = reader.AcroFields.Fields; foreach (var key in fields.Keys) { var value = reader.AcroFields.GetField(key); Response.Write(key + " : " + value); } }
Richard Deeming
Вы абсолютно уверены, что стороннее программное обеспечение генерирует PDF-файлы, содержащие поля? Это может быть просто добавление текста в PDF-файл, без создания каких-либо полей.
kesav prakash
pdf, разработанный в Adobe LiveCycle Designer ES9.0 клиентом, я не могу его изменить.
kesav prakash
приведенный выше код работал в некотором образце pdf только на моем клиенте pdf его не работает
Richard Deeming
Это означает, что PDF-файл, отправленный вам клиентом, не содержит никаких полей.
Вам либо нужно будет заставить вашего клиента отправить вам новый PDF-файл, который делает используйте поля или найдите другой способ сделать то, что вы пытаетесь достичь.