// methods



        #region AddGeneratedHeader/Footer + GetGeneratedHeader/Footer

        /// <summary>
        /// Sets the PDFPageHeader Instance for the identified page
        /// </summary>
        /// <param name="header"></param>
        /// <param name="pageindex"></param>
        internal void AddGeneratedHeader(PDFPageHeader header, int pageindex)
        {
            if (null == PageHeaders)
            {
                PageHeaders = new PageAdornmentHash();
            }

            PageHeaders[pageindex] = header;
            header.Parent          = this;
        }
        /// <summary>
        /// Gets the PDFPageHeader for the identified page and returns true if there is one.
        /// </summary>
        /// <param name="pageindex"></param>
        /// <param name="header"></param>
        /// <returns></returns>
        internal bool GetHeaderForPage(int pageindex, out PDFPageHeader header)
        {
            PageAdornment adorn;

            if (null != PageHeaders && PageHeaders.TryGetValue(pageindex, out adorn))
            {
                header = (PDFPageHeader)adorn;
                return(true);
            }
            else
            {
                header = null;
                return(false);
            }
        }