c# - How to maintain consistancy of Header being on page top throughout all Page Sizes? -


i have set page header (using itextsharp library) along margins set a4 page size (according orientation) -because have set document's page size a4 only- , works a4 page , shows on top. can tell me how make header consistant throughout page size whatever user selects? should print header on top of each , every predefined page size a4 because when select pagesize.halfletter, header gets vanished goes out of page boundaries. help?

updated question!

my code is:

    using system; using system.collections.generic; using system.linq; using system.text; using itextsharp; using itextsharp.text; using itextsharp.text.pdf; using itextsharp.text.exceptions; using system.windows.forms; using system.io; namespace pdfgeneration {      public class events : itextsharp.text.pdf.pdfpageeventhelper     {         private string header;         private itextsharp.text.pdf.pdftemplate total;         private pdfcontentbyte cb;         private pdftemplate template;           protected font footer         {                         {                  //basefont bfarialunicode = basefont.createfont(@"fonts\\adobe-arabic-regular-1.ttf", basefont.identity_h, basefont.embedded);                 basecolor grey = new basecolor(128, 128, 128);                 font font = fontfactory.getfont("arial", 10.0f, font.normal, grey);                 //font font = new font(bfarialunicode, 10.0f, font.normal, grey);                 return font;             }         }         protected font watermark         {                         {                  basefont bfarialunicode = basefont.createfont(@"fonts\\adobe-arabic-regular-1.ttf", basefont.identity_h, basefont.embedded);                 basecolor grey = new basecolor(128, 128, 128);                 font font = new font(bfarialunicode, 14.0f, font.bolditalic, grey);                 return font;             }         }         public override void onstartpage(itextsharp.text.pdf.pdfwriter writer, itextsharp.text.document document)         {             pdfptable headertbl = new pdfptable(1);             headertbl.totalwidth = document.pagesize.width;              //center table on page             headertbl.horizontalalignment = element.align_justified;             paragraph para = new paragraph(string.format("urdu word processor                        date : {0:dd/mmm/yyyy}                  page number : {1}", datetime.now, writer.pagenumber), footer);              pdfpcell cell = new pdfpcell(para);               cell.border = 0;             cell.paddingleft = 120.0f;             //cell.rundirection = pdfwriter.run_direction_rtl;             //add cell table             headertbl.addcell(cell);             headertbl.writeselectedrows(0, -1, 0, (document.bottommargin + 790), writer.directcontent);           }         public override void onendpage(itextsharp.text.pdf.pdfwriter writer, itextsharp.text.document document)         {               //pdfcontentbyte cb = writer.directcontent;              //pdfptable tablefooter = new pdfptable(1);             ////tablefooter.headerrows = 3;             //tablefooter.horizontalalignment = 1;             //float[] widthfooter = new float[] { 1f };             //tablefooter.setwidths(widthfooter);              //tablefooter.spacingbefore = 100f;              //pdfpcell headerfooter = new pdfpcell(new phrase(string.format("urdu word processor                 date : {0:dd/mmm/yyyy}                  page number : {1}", datetime.now, writer.pagenumber), new itextsharp.text.font(itextsharp.text.font.fontfamily.helvetica, 12, itextsharp.text.font.normal, basecolor.black)));             ////phrase headerfooter = new phrase(new phrase("urdu word processor                            " + "date: " + datetime.now.tostring("dd-mmm-yyyy-ss") + "                            " + "page: " + writer.pagenumber, new itextsharp.text.font(itextsharp.text.font.fontfamily.helvetica, 12, itextsharp.text.font.normal, basecolor.black)));             //headerfooter.horizontalalignment = 0; //0=left, 1=centre, 2=right             //headerfooter.border = itextsharp.text.rectangle.top_border;              //tablefooter.addcell(headerfooter);             ////document.add(tablefooter);             //columntext ct = new columntext(cb);             //ct.setsimplecolumn(new phrase(new chunk("بِسْمِ اللّٰهِ الرَّحْمٰنِ الرَّحِيْمِ       ", fontfactory.getfont(fontfactory.helvetica, 18, font.normal))),             //                   46, 190, 530, 36, 25, element.align_left | element.align_top);             //ct.go();              // water mark              //columntext.showtextaligned(writer.directcontentunder,element.align_center,             //    new phrase("بِسْمِ اللّٰهِ الرَّحْمٰنِ الرَّحِيْمِ", watermark),             //    297.5f, 421, ((writer.pagenumber % 2) == 1) ? 45 : -45); // have made loop have multiple orientations.             columntext col = new columntext(writer.directcontentunder);             col.rundirection = pdfwriter.run_direction_rtl;             col.setsimplecolumn(220, 810, 569, 36);             col.addelement(new paragraph("بِسْمِ اللّٰهِ الرَّحْمٰنِ الرَّحِيْمِ",watermark));             col.go();          }         //public void setheader(string header)         //{         //    this.header = header;         //}         //public void onopendocument(itextsharp.text.pdf.pdfwriter writer, itextsharp.text.document document)         //{         //    total = writer.directcontent.createtemplate(30,16);         //}          //public void onendpage(itextsharp.text.pdf.pdfwriter writer, itextsharp.text.document document)          //{         //    itextsharp.text.pdf.pdfptable table = new pdfptable(1);         //        try          //        {         //                //table.setwidths(new int[]{24, 24, 2});         //                table.settotalwidth(new float[] {527.0f,527.0f,527.0f});         //                //table.lockedwidth = true;         //                table.defaultcell.fixedheight = 20;         //                table.defaultcell.border = itextsharp.text.rectangle.align_bottom;         //                table.addcell(header);         //                table.defaultcell.horizontalalignment = itextsharp.text.element.align_right;         //                table.addcell( string.format("page:{0} of", writer.pagenumber));         //               // messagebox.show(string.format("page:{0} of", writer.pagenumber));         //                itextsharp.text.pdf.pdfpcell cell = new itextsharp.text.pdf.pdfpcell(itextsharp.text.image.getinstance(total));          //                cell.border = itextsharp.text.rectangle.align_bottom;         //                table.addcell(cell);         //                table.writeselectedrows(0, -1,         //                34, 803, writer.directcontent);         //        }         //        catch(exception de)          //        {         //           // messagebox.show(de.message.tostring());         //        }         //}         //public void onclosedocument(itextsharp.text.pdf.pdfwriter writer, itextsharp.text.document document)          //{         //    string pagenumber = (writer.pagenumber).tostring();         //    pagenumber += " of " + (writer.pagenumber).tostring();         //    itextsharp.text.pdf.columntext.showtextaligned(writer.directcontent, itextsharp.text.element.align_right, new itextsharp.text.phrase(pagenumber), 580, 10, -90);          //}            //override onpageend event handler add our footer         //public override void onopendocument(pdfwriter writer, document document)         //{         //    cb = writer.directcontent;         //    template = cb.createtemplate(50, 50);         //}          //public override void onendpage(pdfwriter writer, document document)         //{         //    base.onendpage(writer, document);          //    int pagen = writer.pagenumber;         //    string text = "page " + pagen.tostring() + " of ";          //    //float len = this.rundatefont.basefont.getwidthpoint(text, this.rundatefont.size);          //    itextsharp.text.rectangle pagesize = document.pagesize;          //    cb.setrgbcolorfill(100, 100, 100);          //    cb.begintext();         //    //cb.setfontandsize(this.rundatefont.basefont, this.rundatefont.size);         //    cb.settextmatrix(document.leftmargin, pagesize.getbottom(document.bottommargin));         //    cb.showtext(text);          //    cb.endtext();          //    cb.addtemplate(template, document.leftmargin + 10.0f, pagesize.getbottom(document.bottommargin));         //}          //public override void onclosedocument(pdfwriter writer, document document)         //{         //    base.onclosedocument(writer, document);         //    basefont bfarialunicode = basefont.createfont(@"fonts\\adobe-arabic-regular-1.ttf", basefont.identity_h, basefont.embedded);         //    template.begintext();         //    template.setfontandsize(bfarialunicode, 14.0f);         //    template.settextmatrix(0, 0);         //    template.showtext("" + (writer.pagenumber - 1));         //    template.endtext();         //}        }// end of class } 

this code prints output onl @ top of a4 page size , should because hard coded values there inside code align text.

urdu word processor date: 17-02-2013 page number: 1

                         بِسْمِ اللّٰهِ الرَّحْمٰنِ الرَّحِيْمِ 

how can oriented should same page sizes?


Comments

Popular posts from this blog

basic authentication with http post params android -

vb.net - Virtual Keyboard commands -

c++ - End of file on pipe magic during open -