我们的项目最近从primefaces v4.0.24升级到primefaces v5.1.6。
在测试时发现,当数据表打印到打印机或PDF时,存在格式问题。列标题未正确对齐,尤其是具有较长值的列标题。 但是,如果我将布局更改为横向,则它可以正确匹配。 我希望数据在纵向模式下正确对齐。
这不是以前版本的primefaces的问题。
该页面由commandlink和datatable组成。 当用户单击commandlink时,数据表的id将传递给p:printer。
这是代码
<h:commandLink styleClass="ui-icon-export-print" title="#{webmsg['action.export.print.hint']}">
<p:printer target="companyTable" />
</h:commandLink>
<p:dataTable id="companyTable" widgetVar="companyTable" var="company" value="#{companies}"
sortBy="#{company.shortName}" sortOrder="ascending" filterEvent="enter"
filteredValue="#{companyForm.filteredCompanies}">
<f:facet name="header">
<h:outputText value="#{appmsg['label.companies']}" />
</f:facet>
<p:column sortBy="#{company.shortName}" filterBy="#{company.shortName}" filterMatchMode="contains" >
<f:facet name="header">
<h:outputText value="..." />
</f:facet>
<h:outputText value="#{company.shortName}" />
</p:column>
.....
</p:dataTable>
数据是cuttoff或接触列边框。 如果我打印选项并将纸张的默认尺寸从A4更改为Tabloid,则数据正确地适合列。
应该有一些方法可以使用默认纸张尺寸自动调整数据。
任何想法或线索来修复格式问题都将不胜感激。感谢。