Exemple #1
0
        static void Test(IPdfFactory factory, int blockSize)
        {
            var sw = new Stopwatch();

            sw.Start();
            using (var streamReader = new StreamReader("../../../../../doc/PDF32000_2008.pdf"))
            {
                var document = factory.Create(streamReader.BaseStream, new PdfOptions {
                    ReadBlockSize = blockSize
                });
                foreach (var section in document.CrossReferenceTable)
                {
                    foreach (var entry in section)
                    {
                        if (entry.InUse == Parts.CrossReferenceEntryFlag.Free)
                        {
                            Console.WriteLine(entry + "-Not in use");
                        }
                        else
                        {
                            var o = document.ReadIndirectObject(entry);
                            if (o.InnerObject is PdfStream pdfStream)
                            {
                                Console.Write(".");
                                //Console.WriteLine(entry + "-" + o.InnerObject.GetType().Name);
                            }
                        }
                    }
                }
            }

            Console.WriteLine("{0} -- {1}", blockSize, sw.Elapsed);
        }
Exemple #2
0
 public async override Task WriteToStreamAsync(Type type, object value, Stream writeStream, HttpContent content, TransportContext transportContext)
 {
     var memoryStream = report.Create(value);
     var bytes        = memoryStream.ToArray();
     await writeStream.WriteAsync(bytes, 0, bytes.Length);
 }