2012年8月29日 星期三

How can XDocReport (to PDF) supply the Chinese character

延續上一篇 XDocReport API 將 Word 套表轉換成 Word 或 PDF的說明,這裡將著重在轉 PDF  時中文的呈現,官網有針對此議題的討論 Issue 81:how can xdocreport supply the Chinese character.,但截至目前沒獲得解決,文章會針對 API 的修改及修改後的測試做說明,但不建議採用此修改建置系統,因時間有限修改是用 hard code 的方式沒有完整的 Interface,要採用還是以官網的版本為主。

官網有提供說明 XWPFDocument 2 PDF 時,採用 OS 的字型及編碼,但中文還是無法顯示。Sample 還是採用上一篇的 DocxProjectWithVelocity2PDF.java 執行步驟將不再重覆。此文章的標題是直接把 Issue 81 的標題拿來用。


2012年8月26日 星期日

MS Word Converter to Word/PDF by XDocReport API Getting Started

說明如何使用 XDocReport API 將 Word 套表轉換成 Word 或 PDF,看完首頁的說明及操作線上Demo可大致了解 API 的功能,測試的過程中 Word -> Word 後套表格式及中文目前的測試都正常,但Word -> PDF 英文沒問題、格式有些不正確而中文無法顯示,修改 API 後中文可獲得部份解決,格式的部份沒有細究還是有問題,後續會再詳細說明。


Microsoft Office

DocumentTemplateConverter
DocxFreemarkerdocxandfreemarker-0.9.8-sample.zip
DocxVelocitydocxandvelocity-0.9.8-sample.zip
DocxVelocityPDF/XHTMLdocxandvelocity.converters-0.9.8-sample.zip
PPTXVelocitypptxandvelocity-0.9.8-sample.zip

Open/Libre Office

ODPVelocityodpandvelocity-0.9.8-sample.zip
ODTVelocityodtandvelocity-0.9.8-sample.zip
ODTVelocityPDF/XHTMLodtandvelocity.converters-0.9.8-sample.zip


從上表可以看到不單單處理Word,套表還可接受PPTX、ODP、ODT的格式。


Handle各個格式的套件如下:

  • Microsoft Word - Apache POI - HWPF
  • XHTML - Apache POI - XWPF
  • PDF - Lowagie iText
  • Template Replace - Apache Velocity、FreeMarker
以上資料都可從XDocReport官網中查詢取得。