for (int i = 0; i < numCharacterRuns; i++) {
//CharacterRun这个类表示一个文本运行,有着共同的属性。
CharacterRun characterRun = msWord.getRange().getCharacterRun(i);
//判断,是图片则把图片位置替换为image标签,再把图片输出到指定位置
if (pTable.hasPicture(characterRun)) {
Picture pic = pTable.extractPicture(characterRun, true);//选取ptable中picture
byte[] content=pic.getContent();//获取图片内容的字节数组
for(int j=0;j<picturelist.size();j++){
ReaderGUI.text.insertIcon(new ImageIcon(content));
}
} 代码如上,我想读取多张图片的字节数据,但是输出的时候总是最后一张,不知道为什么总是覆盖了,还有我将if语句改为while循环(我是一张获取,想解决覆盖问题)但是报错了java heap space!!!求解
------最佳解决方案--------------------------------------------------------
给你一个思路,打印content数组长度简单的判断一下是否从同一张图片获取数据,debug一下
------其他解决方案--------------------------------------------------------
可能是对读取的图片的格式有限制,.png的图片就正常