Esempio n. 1
0
        public HPDF_Xref(int offset = 0)
        {
            LibLogger.Debug(this.GetType(), $"HPDF_Xref offset {offset}");

            HPDF_Xref_Entry newEntry;

            StartOffset = offset;
            Entries     = new List <HPDF_Xref_Entry>();
            Addr        = 0;

            if (StartOffset == 0)
            {
                newEntry = new HPDF_Xref_Entry
                {
                    EntryTyp   = HPDF_FREE_ENTRY,
                    ByteOffset = 0,
                    GenNo      = HPDF_Consts.HPDF_MAX_GENERATION_NUM,
                    Obj        = null
                };

                Entries.Add(newEntry);
            }

            Trailer = new HPDF_Dict();
            Error   = new HPDF_Error();
        }
Esempio n. 2
0
        private void HPDF_NewDoc()
        {
            LibLogger.Debug(this.GetType(), "HPDF_NewDoc");

            HPDF_FreeDoc();
            Xref    = new HPDF_Xref();
            Trailer = Xref.Trailer;

            FontMgr = new HPDF_List(HPDF_Conf.HPDF_DEF_ITEMS_PER_BLOCK);

            if (FontdefList == null)
            {
                FontdefList = new HPDF_List(HPDF_Conf.HPDF_DEF_ITEMS_PER_BLOCK);
            }

            if (EncoderList == null)
            {
                EncoderList = new HPDF_List(HPDF_Conf.HPDF_DEF_ITEMS_PER_BLOCK);
            }

            Catalog = new HPDF_Catalog(Xref);

            RootPages = Catalog.HPDF_Catalog_GetRoot();

            //PageList = new HPDF_List(HPDF_Conf.HPDF_DEF_PAGE_LIST_NUM);

            //CurPages = RootPages;

            //var ptr = "CSharpPdf library ";
            //var version  = HPDF_GetVersion();

            //ptr += version;

            //HPDF_SetInfoAttr((int)HPDF_InfoType.HPDF_INFO_PRODUCER, ptr);
        }
Esempio n. 3
0
        public void HPDF_Pages_AddKids(HPDF_Dict kid)
        {
            LibLogger.Debug(this.GetType(), "HPDF_Pages_AddKids");

            HPDF_Array    kids;
            HPDF_PageAttr pageAttr;

            if (kid.HPDF_Dict_GetItem("Parent", HPDF_Obj_Header.HPDF_OCLASS_DICT) == null)
            {
                Error = new HPDF_Error("HPDF_Pages_AddKids", HPDF_Error.HPDF_PAGE_CANNOT_SET_PARENT, 0);
            }

            kid.HPDF_Dict_Add("Parent", this);

            // C kids = (HPDF_Array )HPDF_Dict_GetItem (parent, "Kids", HPDF_OCLASS_ARRAY);
            kids = this.HPDF_Dict_GetItem("Kids", HPDF_Obj_Header.HPDF_OCLASS_ARRAY) as HPDF_Array;

            if (kids == null)
            {
                Error = new HPDF_Error("HPDF_Pages_AddKids", HPDF_Error.HPDF_PAGES_MISSING_KIDS_ENTRY, 0);
            }

            if (kid.Header.ObjClass == (HPDF_Obj_Header.HPDF_OCLASS_DICT | HPDF_Obj_Header.HPDF_OSUBCLASS_PAGE))
            {
                pageAttr        = (HPDF_PageAttr)kid.Attr;
                pageAttr.parent = this;
            }

            if (kid.Header.ObjClass == (HPDF_Obj_Header.HPDF_OCLASS_DICT | HPDF_Obj_Header.HPDF_OSUBCLASS_PAGE))
            {
                // TODO var	attr : HPDF_PageAttr = kid.attr ;
                pageAttr = (HPDF_PageAttr)kid.Attr;
            }

            //kids.HPDF_Array_Add(kid); //(kids, kid);
        }
Esempio n. 4
0
 public void HPDF_EncryptDict_CreateID(HPDF_Dict info, HPDF_Xref xref)
 {
     LibLogger.Debug(this.GetType(), "HPDF_EncryptDict_CreateID");
 }
Esempio n. 5
0
 public void HPDF_Dict_Write(HPDF_Dict obj, HPDF_Encrypt e)
 {
     LibLogger.Debug(this.GetType(), "HPDF_Dict_Write");
 }