如何从PrimeFaces p:dataExporter自定义PDF,例如页面大小

igo*_*gor 5 pdf export primefaces

我想在导出表格时将PDF页面大小更改为A4 格局.但无论我做什么,我都无法完成它.

这是我的代码:

 <h:commandLink title="Export">
     <p:graphicImage value="/resources/theme-main/images/export/pdf.png" 
        style="border:0"/>
     <p:dataExporter target="myTable" type="pdf" fileName="name" 
        encoding="windows-1250" preProcessor="#{fileExportProcessor.preProcessPDF}"/>
 </h:commandLink>
Run Code Online (Sandbox Code Playgroud)

托管bean的方法非常简单:

   public void preProcessPDF(Object document) {
      Document pdf = (Document) document;
      pdf.open();
      pdf.setPageSize(PageSize.A4.rotate());
    }
Run Code Online (Sandbox Code Playgroud)

我也尝试将尺寸设置为A0或我的自定义尺寸,只是为了看它工作,但没有改变...... PDF导出仅在A4纵向模式下导出.

你能帮我,怎么做这个工作(A4横向模式)?

小智 10

试试这种方式:

public void preProcessPDF(Object document) {
      Document pdf = (Document) document;
      pdf.setPageSize(PageSize.A4.rotate());
      pdf.open();
    }
Run Code Online (Sandbox Code Playgroud)

为我工作!