我一直在网上搜索2周,并为我的问题找到了一些有趣的解决方案,但似乎没有什么能给我答案.
我的目标是做下面的事情:
我想在静态PDF文件中找到一个文本,并将该文本替换为另一个文本.我想保留内容的设计.这真的很难吗?
我找到了办法,但我丢失了整个信息:
using (PdfReader reader = new PdfReader(path))
{
StringBuilder text = new StringBuilder();
for (int i = 1; i <= reader.NumberOfPages; i++)
{
text.Append(PdfTextExtractor.GetTextFromPage(reader, i));
text.Replace(txt_SuchenNach.Text, txt_ErsetzenMit.Text);
}
return text.ToString();
}
Run Code Online (Sandbox Code Playgroud)
我的第二次尝试更好,但需要我可以更改内部文本的字段:
string fileNameExisting =path;
string fileNameNew = @"C:\TEST.pdf";
using (FileStream existingFileStream = new FileStream(fileNameExisting, FileMode.Open))
using (FileStream newFileStream = new FileStream(fileNameNew, FileMode.Create))
{
// PDF öffnen
PdfReader pdfReader = new PdfReader(existingFileStream);
PdfStamper stamper = new PdfStamper(pdfReader, newFileStream);
var form = stamper.AcroFields;
var fieldKeys = form.Fields.Keys;
foreach …
Run Code Online (Sandbox Code Playgroud)