Java設置PDF跨頁表格重復顯示表頭行的步驟詳解
在創(chuàng)建表格時,如果表格內(nèi)容出現(xiàn)跨頁顯示的時候,默認情況下該表格的表頭不會在下一頁顯示,在閱讀體驗上不是很好。下面分享一個方法如何在表格跨頁是顯示表格的表頭內(nèi)容,這里只需要簡單使用方法 grid.setRepeatHeader(true);即可。
具體參考如下方法步驟。
1.導入Jar包這里導入的是Free Spire.PDF for Java的jar包,Spire.PDF for Java 支持的功能非常豐富,例如 PDF 文檔安全性設置,提取文本和圖片,合并和拆分 PDF,畫文本、圖片、形狀、條形碼到 PDF,打印 PDF,創(chuàng)建和填充表單,添加和刪除層,重疊 PDF 頁面,添加文本/圖片水印,添加、更新、刪除 PDF 書簽,添加表格,壓縮 PDF 文檔等。此外,Spire.PDF for Java 還支持將 PDF 文檔高質(zhì)量地轉(zhuǎn)換為 XPS、圖片、SVG、Word、HTML 和 PDF/A 格式,以及將 XPS 文檔高質(zhì)量地轉(zhuǎn)換為 PDF 格式。
下載后,解壓文件,在Java程序中將解壓路徑下lib文件中的spire.pdf.jar導入Java程序。

導入結(jié)果:

import com.spire.pdf.*;import com.spire.pdf.graphics.*;import com.spire.pdf.grid.PdfGrid;import com.spire.pdf.grid.PdfGridRow;import java.awt.*;public class RepeatTableHeaderRow { public static void main(String[] args) {//新建一個PDF文檔PdfDocument pdf = new PdfDocument();//添加一頁PdfPageBase page = pdf.getPages().add();//創(chuàng)建PdfGrid類的對象PdfGrid grid = new PdfGrid();//設置單元格填充grid.getStyle().setCellPadding(new PdfPaddings(1,1,1,1));//添加表格列數(shù)grid.getColumns().add(3);//添加表頭行及表格數(shù)據(jù)PdfGridRow[] pdfGridRows = grid.getHeaders().add(1);for (int i = 0; i < pdfGridRows.length; i++){ pdfGridRows[i].getStyle().setFont(new PdfTrueTypeFont(new Font('Arial', Font.PLAIN,12), true));//指定字體 pdfGridRows[i].getCells().get(0).setValue('NAME'); pdfGridRows[i].getCells().get(1).setValue('SUBJECT'); pdfGridRows[i].getCells().get(2).setValue('SCORES'); pdfGridRows[i].getStyle().setTextBrush(PdfBrushes.getRed()); /*pdfGridRows[i].getStyle().setFont(new PdfCjkStandardFont(PdfCjkFontFamily.Hanyang_Systems_Gothic_Medium, 14f));//繪制中日韓字體的方法 pdfGridRows[i].getCells().get(0).setValue('이 름'); pdfGridRows[i].getCells().get(1).setValue('科 目') ; pdfGridRows[i].getCells().get(2).setValue('ほしとり'); pdfGridRows[i].getStyle().setTextBrush(PdfBrushes.getBlue());*/}//設置重復表頭(表格跨頁時)grid.setRepeatHeader(true);//添加數(shù)據(jù)到表格for (int i = 0; i < 80; i++){ PdfGridRow row = grid.getRows().add(); for (int j = 0; j < grid.getColumns().getCount();j++) {row.getCells().get(j).setValue('(Row ' + (i+1) + ', column ' + (j+1) + ')'); }}//在PDF頁面繪制表格grid.draw(page,0,0);//保存文檔pdf.saveToFile('Result.pdf');pdf.dispose(); }}
不同頁面重復顯示表頭行效果如圖,這里分別展示了不同字體設置的跨頁表頭效果:


到此這篇關于Java設置PDF跨頁表格重復顯示表頭行的文章就介紹到這了,更多相關Java設置PDF重復顯示表頭行內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網(wǎng)!
相關文章:
1. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向2. php使用正則驗證密碼字段的復雜強度原理詳細講解 原創(chuàng)3. JSP+Servlet實現(xiàn)文件上傳到服務器功能4. 基于javaweb+jsp實現(xiàn)企業(yè)財務記賬管理系統(tǒng)5. ASP動態(tài)網(wǎng)頁制作技術經(jīng)驗分享6. 淺談由position屬性引申的css進階討論7. asp批量添加修改刪除操作示例代碼8. vue項目登錄成功拿到令牌跳轉(zhuǎn)失敗401無登錄信息的解決9. CSS可以做的幾個令你嘆為觀止的實例分享10. vue前端RSA加密java后端解密的方法實現(xiàn)

網(wǎng)公網(wǎng)安備