iTextSharp.text.pdf.PdfReader.GetPageNRelease C# (CSharp) Метод

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

public GetPageNRelease ( int pageNum ) : PdfDictionary
pageNum int
Результат PdfDictionary
        public PdfDictionary GetPageNRelease(int pageNum) {
            PdfDictionary dic = GetPageN(pageNum);
            pageRefs.ReleasePage(pageNum);
            return dic;
        }
        

Usage Example

        /// <summary>
        /// Gets the content stream of a page as a PdfStream object.
        /// @since   2.1.3 (the method already existed without param compressionLevel)
        /// </summary>
        /// <param name="pageNumber">the page of which you want the stream</param>
        /// <param name="compressionLevel">the compression level you want to apply to the stream</param>
        /// <returns>a PdfStream object</returns>
        internal PdfStream GetFormXObject(int pageNumber, int compressionLevel)
        {
            var page     = reader.GetPageNRelease(pageNumber);
            var contents = PdfReader.GetPdfObjectRelease(page.Get(PdfName.Contents));
            var dic      = new PdfDictionary();

            byte[] bout = null;
            if (contents != null)
            {
                if (contents.IsStream())
                {
                    dic.Merge((PrStream)contents);
                }
                else
                {
                    bout = reader.GetPageContent(pageNumber, File);
                }
            }
            else
            {
                bout = new byte[0];
            }

            dic.Put(PdfName.Resources, PdfReader.GetPdfObjectRelease(page.Get(PdfName.Resources)));
            dic.Put(PdfName.TYPE, PdfName.Xobject);
            dic.Put(PdfName.Subtype, PdfName.Form);
            var impPage = (PdfImportedPage)ImportedPages[pageNumber];

            dic.Put(PdfName.Bbox, new PdfRectangle(impPage.BoundingBox));
            var matrix = impPage.Matrix;

            if (matrix == null)
            {
                dic.Put(PdfName.Matrix, Identitymatrix);
            }
            else
            {
                dic.Put(PdfName.Matrix, matrix);
            }

            dic.Put(PdfName.Formtype, One);
            PrStream stream;

            if (bout == null)
            {
                stream = new PrStream((PrStream)contents, dic);
            }
            else
            {
                stream = new PrStream(reader, bout);
                stream.Merge(dic);
            }
            return(stream);
        }
All Usage Examples Of iTextSharp.text.pdf.PdfReader::GetPageNRelease