iTextSharp.text.pdf.PdfCopy.FreeReader C# (CSharp) Метод

FreeReader() публичный Метод

public FreeReader ( PdfReader reader ) : void
reader PdfReader
Результат void
        public override void FreeReader(PdfReader reader)
        {
            indirectMap.Remove(reader);
            if (currentPdfReaderInstance != null) {
                if (currentPdfReaderInstance.Reader == reader) {
                    try {
                        currentPdfReaderInstance.Reader.Close();
                        currentPdfReaderInstance.ReaderFile.Close();
                    }
                    catch (IOException) {
                        // empty on purpose
                    }
                    currentPdfReaderInstance = null;
                }
            }
            base.FreeReader(reader);
        }

Usage Example

Пример #1
1
        public static bool Collate(string frontSide, string backSide, string saveAs, bool backSideIsInReverseOrder = true)
        {
            try
            {
                bool backSideIsAscending = !backSideIsInReverseOrder;

                using (FileStream stream = new FileStream(saveAs, FileMode.Create))
                using (Document doc = new Document())
                using (PdfCopy pdf = new PdfCopy(doc, stream))
                {
                    doc.Open();

                    int b = 0;

                    using (PdfReader front = new PdfReader(frontSide))
                    {
                        using (PdfReader back = new PdfReader(backSide))
                        {
                            for (int p = 1; p <= front.NumberOfPages; p++)
                            {
                                pdf.AddPage(pdf.GetImportedPage(front, p));

                                pdf.FreeReader(front);

                                if (p <= back.NumberOfPages)
                                {
                                    if (backSideIsAscending)
                                        b = p;
                                    else
                                        b = back.NumberOfPages - p + 1;

                                    pdf.AddPage(pdf.GetImportedPage(back, b));

                                    pdf.FreeReader(back);
                                }
                            }
                        }
                    }
                }
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex.Message);

                return false;
            }

            return true;
        }
All Usage Examples Of iTextSharp.text.pdf.PdfCopy::FreeReader