3
我们是否可以选择使用xwpfdocument
从java中的.docx
文件中删除图片?请回复我,因为我试图在过去一周内完成此操作。 代码尝试:删除.docx文件中的图像
public static void imageProcess(XWPFDocument document) throws IOException
{
List<XWPFPictureData> pic=document.getAllPictures();
Iterator<XWPFPictureData> iterator=pic.iterator();
if (pic.size()>0)
{
for (XWPFParagraph para : document.getParagraphs())
{
List<XWPFRun> runs = para.getRuns();
for(XWPFRun run : runs){
run.getCTR().removeDrawing(0);
}
}
}
}
例外:
Exception in thread "main" java.lang.IndexOutOfBoundsException
at org.apache.xmlbeans.impl.store.Xobj.removeElement(Xobj.java:2200)
at org.apache.xmlbeans.impl.store.Xobj.remove_element(Xobj.java:2230)
at org.openxmlformats.schemas.wordprocessingml.x2006.main.impl.CTRImpl.removeDrawing(Unknown Source)
at com.util.DocxUtil.imageProcess(DocxUtil.java:326)
at com.util.DocxUtil.main(DocxUtil.java:60)
如果你已经尝试做了一个星期,请** **状态您已经尝试了什么。这样我们就不会浪费时间来表明你已经知道的事情不起作用。 –
没有说明如何从docx文件中删除图像的文档。我怀疑POI是否支持删除图片。而我从某个问题尝试过的唯一片段并不起作用。 – LittlePanda
public static void imageProcess(XWPFDocument document)throws IOException \t { \t \t List pic = document.getAllPictures(); \t \t Iterator iterator = pic.iterator(); \t \t \t 如果\t(pic.size()> 0) \t \t \t {\t \t \t \t对(INT I = 0; I 运行= para.getRuns(); \t \t \t \t为(XWPFRun运行:运行)。{ \t \t \t \t \t run.getCTR()removeDrawing(0); \t \t \t \t} \t \t \t} \t \t \t} \t \t} \t} –
Sherin