示例#1
0
    internal PdfNewDocument method_10(List <Image> A_0)
    {
        if (A_0 == null)
        {
            return(null);
        }
        int count = A_0.Count;
        int num2  = (count > 90) ? 3 : ((count > 60) ? 5 : ((count > 30) ? 10 : count));

        this.pdfNewDocument_0 = this.method_12();
        for (int i = 0; i < count; i++)
        {
            using (Image image = A_0[i])
            {
                PdfNewPage page = this.method_14(new SizeF(image.Width * 0.75f, image.Height * 0.75f)).get_Pages().Add();
                this.pdfPageBase_0 = page;
                using (PdfMetafile metafile = PdfImage.FromImage(image))
                {
                    metafile.set_Quality((long)this.int_0);
                    metafile.ᜀ(page, new RectangleF(PointF.Empty, page.get_Size()), true, this.method_1().EmbeddedFontNameList, this.method_1().IsEmbeddedAllFonts);
                    metafile.Dispose();
                }
                image.Dispose();
            }
            if ((i % num2) == 0)
            {
                GC.Collect();
            }
        }
        return(this.pdfNewDocument_0);
    }