iTextSharp.text.pdf.PdfStructureTreeRoot.AddPageMark C# (CSharp) Метод

AddPageMark() приватный Метод

private AddPageMark ( int newPage, PdfIndirectReference struc ) : void
newPage int
struc PdfIndirectReference
Результат void
        internal void AddPageMark(int newPage, PdfIndirectReference struc)
        {
            int integer = newPage;
            PdfArray oldAr = (PdfArray)parentTree[integer];
            if (oldAr == null) {
                oldAr = new PdfArray();
                parentTree.Add(integer, oldAr);
                oldAr.Add(struc);
                return;
            }
            for (int i = 0; i < oldAr.Size; ++i) {
                PdfIndirectReference refer = (PdfIndirectReference)oldAr[i];
                if (refer.Number == struc.Number)
                    return;
            }
            oldAr.Add(struc);
        }

Usage Example

Пример #1
0
 public void CopyStructTreeForPage(PdfNumber sourceArrayNumber, int newArrayNumber)
 {
     if (!openedDocuments[fileName])
     {
         PdfObject res = writer.CopyObject(writer.CopyObject(structTreeRoot.Get(PdfName.K), true, true));
         if (!(res is PdfIndirectReference))
         {
             res = writer.AddToBody(res).IndirectReference;
         }
         structureTreeRoot.AddPageMark(newArrayNumber, (PdfIndirectReference)res);
         AddKid(structureTreeRoot, res);
         openedDocuments.Add(fileName, true);
     }
     if (CopyPageMarks(parentTree, sourceArrayNumber, newArrayNumber) == returnType.NOTFOUND)
     {
         throw new BadPdfFormatException(MessageLocalization.GetComposedMessage("structparent.not.found"));
     }
 }
All Usage Examples Of iTextSharp.text.pdf.PdfStructureTreeRoot::AddPageMark