Я хочу удалить все аннотации из PDF. Я использую этот код:PdfArray.remove() не удаляет все аннотации
void removeAnnotations(string inputPath,string outputPath)
{
PdfReader pdfReader = new PdfReader(inputPath);
PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(outputPath, FileMode.Create));
PdfDictionary pageDict = pdfReader.GetPageN(1);
PdfArray annotArray = pageDict.GetAsArray(PdfName.ANNOTS);
for (int i = 0; i < annotArray.Size; i++)
{
annotArray.Remove(i);
}
pdfStamper.Close();
}
Когда я первый создать annotArray
, он имеет 217 пунктов. После цикла for annotArray.Remove()
у него есть 108 элементов, и я все еще вижу некоторые выноски и строки в PDF, сгенерированные на outputPath
. Мне сразу не ясно, что общего у остальных предметов, почему они были пропущены annotArray.Remove()
. Как удалить каждую аннотацию?
Как снимать движущуюся цель ...;) – mkl