Это не с открытым исходным кодом, но, надеюсь, это поможет вам (и, возможно, кому-либо еще, использующему ABCPDF!)
Я сделал это сегодня, перебрав доступные поля в PDF.Это означает, что используемый вами PDF-файл должен быть создан надлежащим образом, и вам необходимо знать имя поля, для которого вы хотите получить текст (вы можете решить эту проблему, добавив точку останова и просматривая доступные поля).
WebSupergoo.ABCpdf6.Doc newPDF = new WebSupergoo.ABCpdf6.Doc();
newPDF.Read("existing_file.pdf");
foreach ( WebSupergoo.ABCpdf6.Objects.Field field in newPDF.Form.Fields )
{
if ( field.Name == "Text1" )
{
// update "Text1"
field.Value = "new value for Text1";
}
}
newPDF.Save("new_file.pdf");
newPDF.Clear();
В этом примере «Text1» - это имя обновляемого поля.Примечание. Также приведен пример сохранения обновленных полей.
Надеюсь, это хотя бы даст вам представление о том, как решить эту проблему.