Ⅰ 請問用poi可以向word中插入圖片么
可以!
Ⅱ 我想用POI在Word里插入一張圖片,這是我的測試代碼。執行之後word打不開!錯誤如圖中的提示
publicvoidaddPicture(stringfilepath,stringoldfileName,uintid)
{
System.IO.FileStreamgfs=newSystem.IO.FileStream(filepath,System.IO.FileMode.Open,System.IO.FileAccess.Read);
XWPFParagraphpara=doc.CreateParagraph();
XWPFRunr=para.CreateRun();
XWPFPicturepic=r.AddPicture(gfs,(int)NPOI.XWPF.UserModel.PictureType.JPEG,oldfileName,1000000,1000000);
NPOI.OpenXmlFormats.Dml.WordProcessing.CT_Inlineinline=r.GetCTR().GetDrawingList()[0].inline[0];
inline.docPr.id=id;//默認插入少了這個ID號,它就是圖片的序號,從1開始編號的。這個是我折騰了一整天弄才弄好的。
gfs.Close();
}
Ⅲ 怎麼使用poi向word中插入水印圖片
只支持word2007及以上版本。在指定位置插入圖片時,必須將需要替換的文本放在單元格中。文件操作完後,會對源文件也進行操作,也就是會將源文件的需要替換的內容也替換掉,就不能達到重復利用源文件的效果,因此我在下面貼出了復制文件的方法,將源文件復制一份,再對復制文件進行操作,這樣就可以使源文件多次復用。
Ⅳ java 如何使用poi 在word 中插入圖片和數據,給我一個實現的例子,
實際上還真就得一個一個set進去
我現在做的程序就有這部分機能,思路就是excel→sheet→row
然後遍歷所有row,取出所有的cell放到一個存儲用結構體中。
無論如何,解析的過程都需要自己來寫的。
=======================================================
你的想法我明白,其實就是想要一個java與poi的databinding,定義好的數據模塊可以自動和excel的對應列進行匹配。但是這個東西確實就沒有啊,人家只封裝了讀取excel內容,沒有提供這樣的模塊,只有自己寫啊。即使是60個列,事實上綁定的邏輯也就只用寫一次,而且大部分的內容只要復制粘貼就好了。
如果像下面說的做循環,賦值簡單了,可是用的時候就痛苦了,要取某一個欄位的時候難道要用數組下標去取?
PS 鄙視5樓的,人家要的是數據導入,拷貝一段倒出的處理來。
Ⅳ 請教:如何用JAVA POI 向Word文檔里插圖片 請提供下代碼 謝謝!!!
樓主你可以這樣操作,導入java.io.*。org.apache.poi.hwpf.*。org.apache.poi.hwpf.usermodel.Picture
String savePath= "c:\\temp\\";
String docFile= savePath+ "test.doc";
String imgFile= savePath+ "img.jpg";
HWPFDocument poiDoc = new HWPFDocument(new FileInputStream(docFile));
List picList=poiDoc.getPicturesTable().getAllPictures();
Picture picture=(Picture)picList.get(0);
try {
picture.writeImageContent(new FileOutputStream(imgFile));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Ⅵ POI操作word插入相同圖片
這么做還是有個小問題,就是連續插入兩個圖片,不在同一行。
解決方案是給createPicture添加一個參數XWPFParagraph paragraph,換掉方法內部的
調用的時候,插入的兩個圖片用同一個paragraph,代碼如下
XWPFParagraph paragraph = doc.createParagraph();
// 插入第一個圖片
doc.createPicture(paragraph, 。。。);
//還可以插入一些文字唯粗
// doc.createRun().setText(" -----> ");
// 插入第二個圖片
doc.createPicture(paragraph, 。。。);
--------------- 原因:
word的模型是
整岩山液個是一個document
然後裡面有多很多個paragraph,
段落
段落和段落之間按照回車換行分割
每一段內,又可以有多個range
在這個定義的插入顯示的圖片的類里
一上來就創建了一個段落
只要把兩次插入的圖片,放到同一個段落
就在一行了。沒有回車了。
通過這個方法,把段落從插入圖片中提出來,還可以在兩個圖片之間,加入其它東西,比較文字或空格來定位。
————————————————
版權聲明:本文為CSDN博主「kimmking」的原創文章粗物,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/KimmKing/java/article/details/8205439