Моя цель - использовать SetField
, чтобы заменить PDF из кода, а затем использовать API для его загрузки.API работает и PDF можно скачать, но никаких изменений не было
И после рабочих дней я должен обратиться за помощью.
Я пытаюсь вернуть Файл с установленными изменениями.Я получаю заполненные значения, и с GetField
я вижу, что поле установлено, но с другой стороны, когда я загружаю его, в PDF нет изменений.
Это код, который я использую.
var pth = $"{Environment.CurrentDirectory}.Services\\Pdf\\plan2.pdf";
PdfReader pdfReader = null;
byte[] bytes = File.ReadAllBytes(pth);
try
{
using (MemoryStream outStream = new MemoryStream())
{
MemoryStream inputStream = new MemoryStream(bytes);
pdfReader = new PdfReader(inputStream);
PdfStamper pdfStamper = new PdfStamper(pdfReader, outStream);
pdfStamper.AcroFields.GenerateAppearances = true;
pdfStamper.AcroFields.SetField("registersubject", "testSubject");
pdfStamper.FormFlattening = true;
pdfStamper.FreeTextFlattening = true;
pdfStamper.Writer.CloseStream = false;
pdfStamper.Close();
return outStream.ToArray();
}
}