美文网首页
分页显示页码和每页显示签名栏和日期栏

分页显示页码和每页显示签名栏和日期栏

作者: q若水 | 来源:发表于2019-06-20 09:33 被阅读0次

private static class IndexEvent extends PdfPageEventHelper {

@Override

public void onOpenDocument(PdfWriter writer, Document document) { 

        try { 

              tpl = writer.getDirectContent().createTemplate(800, 100);

              bf = BaseFont.createFont("/font" + CheckVouchExportConstant

              .FONT_FILE,BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED); 

        } catch(Exception e) { 

            throw new ExceptionConverter(e); 

        } 

    }

@Override

    public void onEndPage(PdfWriter writer, Document document) { 

        // 在每页结束的时候把“第x页”信息写到模版指定位置 

PdfContentByte cb2 = writer.getDirectContent();

cb2.saveState();

        String text2 = "监盘人:__________________ 盘点日期:__________________";

        cb2.beginText(); 

        cb2.setFontAndSize(bf, 10); 

        cb2.setTextMatrix(180, 5); // 定位“第x页,共” 在具体的页面调试时候需要更改这xy的坐标 

        cb2.showText(text2);

        cb2.endText();

        cb2.stroke(); 

        cb2.restoreState();       

        cb2.closePath(); // sanityCheck();

        PdfContentByte cb = writer.getDirectContent();

        cb.saveState();

        String text = "-" + writer.getPageNumber();

        cb.beginText(); 

        cb.setFontAndSize(bf, 10); 

        cb.setTextMatrix(550, 5); // 定位“第x页,共” 在具体的页面调试时候需要更改这xy的坐标 

        cb.showText(text);

        cb.endText();

        cb.addTemplate(tpl, 534, 5); //定位“y页” 在具体的页面调试时候需要更改这xy的坐标

        cb.stroke(); 

        cb.restoreState();       

        cb.closePath(); // sanityCheck(); 

    }

    @Override 

    public void onCloseDocument(PdfWriter writer, Document document) { 

      // 关闭document的时候获取总页数,并把总页数按模版写道之前预留的位置 

      tpl.beginText(); 

      tpl.setFontAndSize(bf, 10);

      tpl.showText(Integer.toString(writer.getPageNumber() - 1)); 

      tpl.endText(); 

      tpl.closePath(); // sanityCheck(); 

    } 

    }

// 在分页需要分页的程序里 做分页页面标记,必须在  document.open(); 之前

    writer.setPageEvent(new IndexEvent());

相关文章

网友评论

      本文标题:分页显示页码和每页显示签名栏和日期栏

      本文链接:https://www.haomeiwen.com/subject/ftgrqctx.html