zoukankan      html  css  js  c++  java
  • itextpdf5设置页眉页脚、生成页码

    itextpdf生成页眉页脚,可以通过继承PdfPageEventHelper,重新里面的相关事件来进行。

    常用的几个:

    onOpenDocument,文档打开时触发

    onCloseDocument,文档关闭时触发

    onStartPage,页面开始写入前触发

    onEndPage,页面写入完成后触发

    设置页眉页脚时可以使用OnEndPage,配合ColumnText类,在页面特定位置输出。

            /**
             * 在一个页面写入完成后触发
             */
            @Override
            public void onEndPage(PdfWriter writer, Document doc) {
                Font headFont = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 9,Font.NORMAL,BaseColor.BLACK);
                //添加标题文本
                StringBuffer underline = new StringBuffer();
                for(int i = 0;i<116;i++) {
                    underline.append("_");
                }
                Phrase contentPh = new Phrase("这是是页眉",headFont);
                Phrase underlinePh = new Phrase(underline.toString(),headFont);
                Phrase pageNumberPh = new Phrase(String.valueOf(doc.getPageNumber()),headFont);
                float center = doc.getPageSize().getRight()/2;//页面的水平中点
                float top = doc.getPageSize().getTop()-36;
                float bottom = doc.getPageSize().getBottom()+36;
                
                /** 参数xy是指文本显示的页面上的哪个店。alignment指文本在坐标点的对齐方式 */
                ColumnText.showTextAligned(writer.getDirectContent(),Element.ALIGN_CENTER,contentPh,center,top,0); //页眉
                ColumnText.showTextAligned(writer.getDirectContent(),Element.ALIGN_CENTER,underlinePh,center,top-3,0); //页眉
                ColumnText.showTextAligned(writer.getDirectContent(),Element.ALIGN_CENTER,pageNumberPh,center,bottom,0); //页码
            }
            
    就算这个世道烂成一堆粪坑,那也不是你吃屎的理由
  • 相关阅读:
    nginx优化配置
    mysql查看变量/配置文件位置
    关于ubuntu的ssh远程登录的问题
    ubuntu镜像下载地址
    百度地图标注地点
    Yii常用方法
    python_将一组数据展示成直方图(以list为例)
    opencv_形态学结构化元素对形态学图像处理的影响
    C语言学习_从VC++6.0开始
    SVM原理(1)
  • 原文地址:https://www.cnblogs.com/whalesea/p/11776632.html
Copyright © 2011-2022 走看看