使用JAVA(iText)生成word(rtf)文件---內容可含圖片哦
當我使用這個JAVA生成RTF檔案時費了好大的勁,原本是想生成WORD文件的,但是WORD文件POI只支援往生成的
WORD中填入文字,對於圖片根本就不支援。後來想想,RTF格式的也可用WORD開啟,不如生成RTF。結果上網搜
了很多技術,Itext,jacob,java2word,rtftemplate,reportrunner看了近一天也沒什麼頭緒,寫這些示例的幾
乎沒有,還好Itext的例子有那麼幾個,可是我上官網下了最新核心包後發現,匯入例子中居然全部紅叉,原
本以為上錯網站了,再經過核實還是對的,於是斷定網上的例子肯定有誤,itext或許不能用。繞了大半天其
他的技術我真的沒法弄了,還是回到了iText,靜下心來思考覺得包肯定有問題,仔細一看原來最新版的是支
持PDF版的iText-5.0.1.jar是不對的,本來以為最新的功能最全了,沒想到錯了,想到這裡趕緊下了稍微
iText-2.1.7.jar結果終於成功了,感慨不已!現貢獻程式碼如下
記住官網上只能下到核心包:iText-1.2.7.jar和支援rtf的iText-rtf-2.1.7.jar這兩個貌似對了,其實還有
一個包是比較重要的iTextAsian.jar這個包對於設定字型什麼的起了關鍵作用上網可以搜到的
官方網站:http://sourceforge.net/projects/itext/files/
程式碼如下
public class RTFCreate {
private static final String FILE_NAME = "e:/JAVA第一個RTF文件生成.rtf";
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
RTFCreate rtfMain = new RTFCreate();
rtfMain.createRTFContext(FILE_NAME);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void createRTFContext(String path) throws DocumentException,
IOException {
Document document = new Document(PageSize.A4);
RtfWriter2.getInstance(document, new FileOutputStream(path));
document.open();
// 設定中文字型
BaseFont bfChinese = BaseFont.createFont("STSongStd-Light",
"UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
// 標題字型風格
Font titleFont = new Font(bfChinese, 12, Font.BOLD);
// 正文字型風格
Font contextFont = new Font(bfChinese, 10, Font.NORMAL);
Paragraph title = new Paragraph("標題");
// 設定標題格式對齊方式
title.setAlignment(Element.ALIGN_CENTER);
title.setFont(titleFont);
document.add(title);
String contextString = "iText是一個能夠快速產生PDF檔案的java類庫。iText的java類對於那些要產生包含文字,表格,圖形的只讀文件是很有用的。它的類庫尤其與java Servlet有很好的給合。使用iText與PDF能夠使你正確的控制Servlet的輸出。";
Paragraph context = new Paragraph(contextString);
// 正文格式左對齊
context.setAlignment(Element.ALIGN_LEFT);
context.setFont(contextFont);
// 離上一段落(標題)空的行數
context.setSpacingBefore(20);
// 設定第一行空的列數
context.setFirstLineIndent(20);
document.add(context);
// //在表格末尾新增圖片
Image png = Image.getInstance("c:/fruit.png");
document.add(png);
document.close();
}
}
相關文章
- IText匯出Word文件
- java生成word文件Java
- java-pdf-itext7、itextpdf 生成pdf 文件Java
- itext生成、匯出word(springmvc)SpringMVC
- JAVA技巧:使用java生成word文件選擇合適元件Java元件
- Java 給 Word 文件每一頁新增不同圖片水印Java
- PNG圖片怎樣轉換成可編輯的Word文件
- Java使用iText7生成PDFJava
- 如何解析word文件中的公式內容公式
- JAVA編輯word替換指定內容,解決插入圖片顯示不全問題Java
- Java 讀取txt檔案生成Word文件Java
- 一篇用AI生成圖片與內容的文章AI
- zt 運用 Range 物件處理 Word 文件內容物件
- 批次word文件內容查詢替換的方法
- Python 批次合併圖片到word文件Python
- JSP生成WORD文件,EXCEL文件,PDF文件JSExcel
- java 爬取網頁內容。 標題、圖片等Java網頁
- word教程|用自定義屬性功能管理 Word 文件中的待定內容
- 進階|教你使用自定義屬性功能管理 Word 文件中的待定內容
- PDF 轉換圖片然後識別圖片內容
- 使用IText7和miniExcel處理pdf並輸出內容Excel
- Win10系統使用“就近共享”分享文件、圖片、網站連結等內容的方法Win10網站
- 使用Java poi編輯word.docx文件Java
- PHP 讀取 WORD 內容PHP
- PHP讀取WORD內容PHP
- Java Word中的文字、圖片替換功能Java
- Java 在Word中新增多行圖片水印Java
- 使用Java將圖片生成sequence file並儲存到HBaseJava
- 怎麼把jpg圖片轉為Word文件 怎麼把Word轉換成jpg
- word備忘【圖片】
- Vue SpringBoot實現Html和Markdown格式內容(含圖片上傳)儲存到MySQLVueSpring BootHTMLMySql
- 【學習圖片】14.網站生成器、框架和內容管理系統網站框架
- Java 讀取Word表格中的文字和圖片Java
- 光流.flo檔案生成.png圖片(可批量)
- lucene開發中有關讀取pdf,html,word,rtf,txt,powerpoint,excel等文件的操作HTMLExcel
- SDWebImage支援URL不變時更新圖片內容Web
- 將treeview控制元件內容匯出圖片View控制元件
- Android iText向pdf模板插入資料和圖片Android