Я хотел бы обновить текстовое содержимое в аннотации FreeText, когда я копирую аннотацию из одного PDF-документа в другой, но по какой-то причине текст не обновляется в окончательном PDF-файле с использованием подхода, показанного ниже. Объект аннотации обновляется, но окончательный результат в PDF не отражает обновленное содержимое для типа аннотации FreeText. Как ни странно, аннотации типа Ink обновляются с учетом измененного содержимого, поскольку оно отображается в виде комментария в виде заметки, наложенного поверх самой аннотации Ink.
Вот небольшой фрагмент кода, который я использовал (при необходимости я могу добавить больше):
foreach (var anno in annots)
{
var a = anno.GetPdfObject().CopyTo(masterPdfDoc);
PdfAnnotation ano = PdfAnnotation.MakeAnnotation(a);
var contents = ano.GetContents().ToString();
ano.SetContents(new PdfString("COMMENT: " + contents));
//ano.Put(PdfName.Contents, new PdfString("COMMENT: " + contents));
masterDocPage.AddAnnotation(ano);
}
Был бы очень признателен за любой предоставленный совет. Спасибо
/Contents
, но я не вижу, чтобы вы где-либо меняли внешний вид (/AP
). - person Bruno Lowagie   schedule 27.08.2017ano.Remove(PdfName.AP);
. - person James Cramer   schedule 28.08.2017PdfAnnotation#getAppearanceDictionary()
- person Samuel Huylebroeck   schedule 28.08.2017