Example #1
0
        private PdfObject _ReadObject(string data)
        {
            var bytes = Encoding.UTF8.GetBytes($"0 0 obj\n{data}\nendobj\n");

            _SetupData(bytes);

            var crossReferenceTable = new PdfCrossReferenceTable
            {
                ObjectOffsets = new Dictionary <int, int> {
                    { 0, 0 }
                },
            };

            _document.SetupGet(x => x.CrossReferenceTable).Returns(crossReferenceTable);

            var indirectReference = new PdfIndirectReference
            {
                GenerationNumber = 0,
                ObjectNumber     = 0
            };

            var result = _reader.ReadObject(indirectReference);

            Assert.AreEqual(result.Length, data.Length);
            Assert.AreEqual(result.Offset, 8);

            return(result);
        }
Example #2
0
 void Initialize()
 {
     //_info = new PdfInfo(this);
     _fontTable  = new PdfFontTable(this);
     _imageTable = new PdfImageTable(this);
     _trailer    = new PdfTrailer(this);
     _irefTable  = new PdfCrossReferenceTable(this);
     _trailer.CreateNewDocumentIDs();
 }
Example #3
0
        internal PdfDocument(Lexer lexer)
        {
            //PdfDocument.Gob.AttatchDocument(Handle);

            _creation = DateTime.Now;
            _state    = DocumentState.Imported;

            _irefTable = new PdfCrossReferenceTable(this);
            _lexer     = lexer;
        }
        public void ConvertToString()
        {
            var result = new PdfCrossReferenceTable {
                ObjectOffsets = new Dictionary <int, int> {
                    { 0, 0 },
                    { 1, 10 },
                    { 2, 20 }
                },
                ObjectCount       = 3,
                FirstObjectNumber = 0
            }.ToString();

            Assert.AreEqual("xref\n0 3\n0000000000 65535 f\n0000000010 00000 n\n0000000020 00000 n\n", result);
        }
Example #5
0
        internal PdfDocument(Lexer lexer)
        {
            //PdfDocument.Gob.AttatchDocument(Handle);

            _creation = DateTime.Now;
            _state    = DocumentState.Imported;

            //_info = new PdfInfo(this);
            //_pages = new PdfPages(this);
            //_fontTable = new PdfFontTable();
            //_catalog = new PdfCatalog(this);
            ////_font = new PdfFont();
            //_objects = new PdfObjectTable(this);
            //_trailer = new PdfTrailer(this);
            _irefTable = new PdfCrossReferenceTable(this);
            _lexer     = lexer;
        }
Example #6
0
        public void Setup()
        {
            _document = new Mock <IEditablePdfDocument>();
            _trailer  = new PdfTrailer {
                CrossReferenceTableOffset = 10,
                TrailerDictionary         = new PdfDictionary()
            };
            _crossReferenceTable = new PdfCrossReferenceTable
            {
                ObjectOffsets = new Dictionary <int, int>(),
                Offset        = 10
            };

            _document.SetupGet(x => x.CrossReferenceTable).Returns(_crossReferenceTable);
            _document.SetupGet(x => x.Encoding).Returns(Encoding.UTF8);
            _document.SetupGet(x => x.Trailer).Returns(_trailer);

            _pdfEditor = new PdfEditor(_document.Object);
        }
Example #7
0
 void Initialize()
 {
     _trailer   = new PdfTrailer(this);
     _irefTable = new PdfCrossReferenceTable(this);
     _trailer.CreateNewDocumentIDs();
 }