iTextSharp.text.pdf.PdfPages.ReorderPages C# (CSharp) Метод

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

private ReorderPages ( int order ) : int
order int
Результат int
        internal int ReorderPages(int[] order)
        {
            if (order == null)
                return pages.Count;
            if (parents.Count > 1)
                throw new DocumentException(MessageLocalization.GetComposedMessage("page.reordering.requires.a.single.parent.in.the.page.tree.call.pdfwriter.setlinearmode.after.open"));
            if (order.Length != pages.Count)
                throw new DocumentException(MessageLocalization.GetComposedMessage("page.reordering.requires.an.array.with.the.same.size.as.the.number.of.pages"));
            int max = pages.Count;
            bool[] temp = new bool[max];
            for (int k = 0; k < max; ++k) {
                int p = order[k];
                if (p < 1 || p > max)
                    throw new DocumentException(MessageLocalization.GetComposedMessage("page.reordering.requires.pages.between.1.and.1.found.2", max, p));
                if (temp[p - 1])
                    throw new DocumentException(MessageLocalization.GetComposedMessage("page.reordering.requires.no.page.repetition.page.1.is.repeated", p));
                temp[p - 1] = true;
            }
            PdfIndirectReference[] copy = pages.ToArray();
            for (int k = 0; k < max; ++k) {
                pages[k] = copy[order[k] - 1];
            }
            return max;
        }