精华内容
下载资源
问答
  • text解决了,表格解决了,结果才发现图片用XWPFDocument压根无法实现addPicture,POI自身有bug,图片是加入到word文件里面了,可是显示不了。。。于是乎,又折腾了2天,终于整蛊了怎么让图片在里面显示出来,其他的...

    这几天想通过一个现有word文件作为模板,然后根据标签写入对应数据,折腾了好几天了。

    text解决了,表格解决了,结果才发现图片用XWPFDocument压根无法实现addPicture,POI自身有bug,图片是加入到word文件里面了,可是显示不了。。。

    于是乎,又折腾了2天,终于整蛊了怎么让图片在里面显示出来,其他的还在进一步解决中。

    贴个小代码给大家用,凑合着用,还有很多需要修改的:

    /**

    *

    */

    package com.report.util;

    import java.io.IOException;

    import java.io.InputStream;

    import org.apache.poi.openxml4j.opc.OPCPackage;

    import org.apache.poi.xwpf.usermodel.XWPFDocument;

    import org.apache.xmlbeans.XmlException;

    import org.apache.xmlbeans.XmlToken;

    import org.openxmlformats.schemas.drawingml.x2006.main.CTNonVisualDrawingProps;

    import org.openxmlformats.schemas.drawingml.x2006.main.CTPositiveSize2D;

    import org.openxmlformats.schemas.drawingml.x2006.wordprocessingDrawing.CTInline;

    /**

    * @author 郑宗锐

    *

    */

    public class CustomXWPFDocument extends XWPFDocument {

    public CustomXWPFDocument(InputStream in) throws IOException {

    super(in);

    }

    /**

    *

    */

    public CustomXWPFDocument() {

    super();

    // TODO Auto-generated constructor stub

    }

    /**

    * @param pkg

    * @throws IOException

    */

    public CustomXWPFDocument(OPCPackage pkg) throws IOException {

    super(pkg);

    // TODO Auto-generated constructor stub

    }

    public void createPicture(int id, int width, int height) {

    final int EMU = 9525;

    width *= EMU;

    height *= EMU;

    String blipId = getAllPictures().get(id).getPackageRelationship()

    .getId();

    CTInline inline = createParagraph().createRun().getCTR()

    .addNewDrawing().addNewInline();

    String picXml = ""

    + ""

    + " "

    + " "

    + " " + "

    + id

    + "\" name=\"Generated\"/>"

    + " "

    + "

    "

    + " "

    + "

    + blipId

    + "\" xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\"/>"

    + " "

    + " "

    + " "

    + " "

    + " "

    + " "

    + " "

    + "

    + width

    + "\" cy=\""

    + height

    + "\"/>"

    + " "

    + " "

    + " "

    + " "

    + " "

    + " "

    + " " + "";

    // CTGraphicalObjectData graphicData =

    inline.addNewGraphic().addNewGraphicData();

    XmlToken xmlToken = null;

    try {

    xmlToken = XmlToken.Factory.parse(picXml);

    } catch (XmlException xe) {

    xe.printStackTrace();

    }

    inline.set(xmlToken);

    // graphicData.set(xmlToken);

    inline.setDistT(0);

    inline.setDistB(0);

    inline.setDistL(0);

    inline.setDistR(0);

    CTPositiveSize2D extent = inline.addNewExtent();

    extent.setCx(width);

    extent.setCy(height);

    CTNonVisualDrawingProps docPr = inline.addNewDocPr();

    docPr.setId(id);

    docPr.setName("图片" + id);

    docPr.setDescr("甩葱玩具");

    }

    }

    调用方法大概是这样的:

    OPCPackage pack = POIXMLDocument.openPackage(fileName);

    CustomXWPFDocument doc = new CustomXWPFDocument(pack);

    int ind = doc.addPicture(new FileInputStream("d:\\甩葱玩具.jpg"), XWPFDocument.PICTURE_TYPE_JPEG);

    doc.createPicture(ind, 259, 58);

    展开全文
  • 同事的文档中的图片都不显示了,问我怎么回事,这个问题我已经遇到很多次了,其实问题有多种,要逐一排查,下面icech就将所有可能的原因和解决方法列一下,供参考:1、可能是由于正在普通视图或大纲视图中工作。...

    同事的文档中的图片都不显示了,问我怎么回事,这个问题我已经遇到很多次了,其实问题有多种,要逐一排查,下面icech就将所有可能的原因和解决方法列一下,供参考:

    1、可能是由于正在普通视图或大纲视图中工作。

    解决方法:若要查看页眉、页脚或图形对象等对象在打印页中的位置,请切换到页面视图。若要查看这些对象在 Web 版式视图中的显示情况,请切换到 Web 版式视图。

    2、屏幕上显示的可能是链接的嵌入式图形的域代码。域代码是括在域字符 ({}) 中的指令。

    解决方法:若要关闭域代码并显示图形,请按 Alt+F9。

    3、可能是由于打开了“图片框”视图选项。如果选中了该选项,当打开包含图片的文档时,将以轮廓代替图片来加快滚动速度。

    解决方法:请单击“具”菜单上的“选项”,单击“视图”选项卡,再清除“图片框”复选框。

    4、可能是由于要查看的图形是一个图形对象,例如文本框、自选图形、剪贴画或艺术字。而在普通视图中,图形对象不会显示。

    解决方法:绘制和更改图形对象,必须在页面视图、Web 版式视图或打印预览中进行。

    5、可能由于关闭了“图形”视图选项。当文档中包含图形对象(例如自选图形)时,关闭该选项可提高滚动速度。

    解决方法:请单击“工具”菜单上的“选项”,单击“视图”选项卡,再选中“图形”复选框。

    展开全文
  • 前一段时间遇到一个问题,就是将html转成word文档,里面有图片,表格,和各种形式的文字。...当我们在断网的情况下(或者拷贝到两一台电脑上)打开word文档的时候实际上看到的图片是一个链接,也就是说图...

    前一段时间遇到一个问题,就是将html转成word文档,里面有图片,表格,和各种形式的文字。刚开始的做法是将html代码取出来,然后以留的形式进行保存,后缀名为.doc。当我转成之后发现一切完美,但是图片出现了问题:

    1.图片大小、像素有问题。

    2.(最严重的)图片存在word的是一个链接而已。

    当我们在断网的情况下(或者拷贝到两一台电脑上)打开word文档的时候 实际上看到的图片是一个链接,也就是说图片转化的不成功。

    其实从本质上来说,我们可以看一下转化之后所谓的word文档的格式,(点击另存为,看文件类型)发现其实转化之后的文档的文件类型仍然是.html的格式。只有当我们再次另存为并且选择文件类型为.doc格式的时候 才能做到真正意义上的转化,并且图片不会出现上述问题。原因大致是html转word的时候中间会经过一步处理,先将html的文件转成了xml文件,然后在转成.doc格式,同时将html的图片转成了Base64编码的格式(替换了图片的链接)存在了xml文件里。(我们可以打开将任意一篇.doc格式的word文档另存为成.xml文档后分析带有图片的那部分代码。)

    于是乎浏览网上各种大神的解决办法,发现并没有一个很好的解决方法。网上的关于html转化word的解决办法总结起来有以下几种情况:

    1.用ASPOSE.WORDS控件来处理。(涉及到了asp。。还有神马控件。。扩展性太差,,果断不深入这个方法。废弃之。)

    2.把html文件里面的图片转成Base64格式存储。

    好像是涉及到了上面所叙述的html转word的原理部分,但是那是word做的事,鬼知道当我们在选择将word另存为.doc格式的时候word做了什么操作。。。。我们都知道html标签里的图片形式为:xxxxxxx  将图片转成Base64编码容易,但是并不是将Base64编码的图片简单的放到src=“xxxxx”里面就行了,需要能让word读懂。  转成能让word读懂的格式就更不容易了(也就是前文提到的那个xml文件)。因为图片有很多格式(.jpg/.png等等),还要涉及到word里特殊的标签(类似这种)。。。。 所以在尝试了之后也放弃了。

    3.用POI 这个jar包

    说这个的更是扯。Apache的POI对图片的处理不友好,甚至有的版本根本就不支持。在入坑很久之后,果断放弃。。。

    4. javacdoc 的包

    亲测 不可以。以上4中方法是网上讨论最多的,我从09年的帖子一直翻到17年的,总结下来的。。发现并没有找到解决办法。。最后不得已,决定自己解析html文档,转化word。最终成功转化,实现了自己想要的结果。实现起来也很简单,只是解析了一下word而已。

    5.利用freemaker模板。

    这个可以解决,但是要大动干戈。实际开发的过程中不会因为一点问题就换模板的。这样不利于开发和维护。

    解决思路:

    设法解决转成word的时候另存为时候看到的文件类型不是.html格式的就ok,这样的话就不会以图片链接的形式放在word里面。

    解决办法:(相关demo和jar包后面会给出)

    1.先 用jsoup的包将html格式化。(此处用于解析html代码。方便后面用itext包调用)

    2.利用iText的jar包,这个jar包是转化pdf用到的,但是转化成word也能用。保存后在word里面的文件类型是.rtf格式的。能够完美解决问题。

    成功后的结果:

    53ea40d09027c7d705bbf7ca1fa353b6.png

    文件类型:

    a5a87e2443dce1f4b2dc2b464ccc870e.png

    Demo地址:

    http://download.csdn.net/download/wht21888/10120532

    --------------------- 本文来自 kihtoner 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/wht21888/article/details/78545712?utm_source=copy

    展开全文
  • 为了尽可能看清楚,出了1000DPI的图,图像很大,加载到word中会显示不出来如下图。 直接就看不出来图像是什么,只能看到左上角有个小×,插入过程中还会一卡一卡。 这时候为了让图片显示出来,可以直接双击图片...

    由于科研需要,需要将ArcGIS中出的高分辨率图像加载到word中,其实就是写报告。

    为了尽可能看清楚,出了1000DPI的图,图像很大,加载到word中会显示不出来如下图。

    直接就看不出来图像是什么,只能看到左上角有个小×,插入过程中还会一卡一卡。

    这时候为了让图片显示出来,可以直接双击图片,图片工具-格式-压缩图片就可以。

    word中本来也看不太清楚,就默认的200dpi就可,这样就把原来的1000dpi的图片压缩成200dpi了。这时候就顺利的显示出来图片了。压缩后整个文档的大小也会随之减小。

    备注说明:压缩图片这个选项中,应用于选择“文档中的所有图片”,就将整个文档所有图像均进行压缩;更改分辨率中“Web/屏幕”分辨率是96 dpi;“打印”是200 dpi,“不更改”则维持原dpi。

    展开全文
  • word图片的格式和文字段落的格式有这很密切的联系在使用word 中,您要记住一点,如果您要使得您插入的图片样式为嵌入式,那么在文字的段落设置中选哪个行距都可以,但惟独不能选择固定行距,下面分别演示一下(图片...
  • 打印Word图片显示不全 Word2007图片显示不全解决方法,平凡的世界平凡的你,努力学习使我们变得不平凡,今天要介绍的知识是打印Word图片显示不全的相关知识,你准备好学习打印Word图片显示不全 Word2007图片显示不全...
  • 小编向大家介绍下word文档几种不显示图片的解决方法。1、可能是由于打开了“图片框”视图选项。如果选中了该选项,当打开包含图片的文档时,将以轮廓代替图片来加快滚动速度。若要显示图片,请单击“具”菜单上的...
  • 场景描述使用mht格式利用freemark将网页上动态输入的图片搞到mht里面,转换为docx格式。...结果转换出来的docx图片就不显示(其实不是不显示,是压根就没有图片的占位),但是使用office word打开...
  • text解决了,表格解决了,结果才发现图片用XWPFDocument压根无法实现addPicture,POI自身有bug,图片是加入到word文件里面了,可是显示不了。。。于是乎,又折腾了2天,终于整蛊了怎么让图片在里面显示出来,其他的...
  • word以嵌入式插入图片出现问题word中插入图片是默认以嵌入式Word图片只显示部分1、插入的图片,只显示了一点。...原因:显示设置中设置了“显示图片框”调整步骤:单击菜单“工具-----选项”打开...
  • 如上图所示,Word文档表格中插入图片却只显示很窄一条边 解决办法:选中图片,菜单栏上点击段落右方小箭头扩展项 选择单倍行距,即可完整显示图片
  • 在使用Word文档过程中,很多用户都经常需要插入图片,不过他们偶尔也会遇到图片显示不全或只显示图片一部分,或者只显示图片的边框等情况。这该怎么办呢?接下来,系统城小编就要给大家介绍电脑中Word图片显示不全的...
  • 解决word插入的图片不能正常显示问题显示解决方法结果 问题显示 问题如下图:图片不能正常显示 解决方法 解决:在本段右键-段落-行距-单倍行距-确定,即可 因为行距设为固定值了,所以不能正常显示 改为单倍行距后...
  • 使用word时,很多时候都会需要插入图片显示不出来的问题,如图:2.如果只有一张图片的话,可以设置图片版式,只要不是嵌入型即可,比如设置成浮于文字上方,即可显示,拖动一下图片到想要的位置。如图:方案二:...
  • 他们都是瞎回答,我也遇到了这样的问题,自己试了好多方法,终于试出来了,面上跟本搜不到正确方法,所以只能自己弄了,这次完美解决。首先,不能显示完全的页面视图先不用管,直接调成...在WORD中一个表格在一页显...
  • 一、Word文档中的图片设置(以下截图演示为极速office)1、插入的图片显示不全操作方法:点击工具栏“开始”选择“段落”,下拉菜单中将行距改为单倍行距,例如行距选1即可完全显示图片内容。2、插入的图片无法移动...
  • 最近工作中需要导出word,百度一下后发现freemarker支持自己定义模板样式,只要把数据按规定格式塞进去就好,尝试之后发现导出的图片显示,一番操作后发现了原因,记录一下,以防止下次再忘了: 1、原因一:在图片...
  • 其具备了强大的文字编辑与文字处理功能,帮助用户轻松的进行编辑,而在使用word的过程中,我们难免需要在其中插入图片,从而帮助我们更好的表达我们的内容,而部分用户在插入图片的过程中出现了图片显示不全的问题,...
  • 类型:安卓软件大小:12.9MB语言:简体中文Word提示内存或磁盘空间不足原因近期很多用户打开Word系统会提示我们内存或磁盘空间不足,其实这并非是我们电脑硬件或者系统的问题,而是Word文档被锁定或者磁盘内存不足所...
  • 在windows下写word文档,正常情况下,我们应该不会遇到插入图片显示不全的问题,好像是如果在已有的文档中插入图片,比如文档中间插入,图片没办法自动扩展空间,这就导致了显示不全的问题。 这个问题也很烦人的,...
  • 1.word中放入一个图片2.ftl文件中搜索pkg:binaryData3.删除数据,用变量替换image.png附:转换本地图片和网络图片本地图片public String getImageStr1() {String imgFile = "E:/123.jpg";InputStream in = null;byte...
  • 我们在编辑word文档时,会需要插入一些图片来做为装饰或者用来标识,也会出现插入的图片显示不全的情况,要是遇到这种情况该怎么办,那么图片word显示不全要怎么处理呢,下面小编给大家分享图片word显示不全...
  • Word 插入图片显示不全

    千次阅读 2021-02-02 21:16:55
    有时候,我们需要在固定的word模板里面插入图片图片无法完整显示。 首先,考虑图片本身的格式,比如改成嵌入型/四周环绕型之类的,看是否显示完全。 然后,查看插入图片的“段落”格式,看一下是否为“固定值” ...
  • 如果我们在word中撰写文档时,需要引用visio绘制的图形时,就可能有麻烦的事情发生了。 当然,我们可以直接使用截图的方式,将visio对象的截图粘贴到word中,但是这会带来一个问题,如果需要更新文档,或者临时做些...
  • 在使用Word插入visio图片时,经常会出现图片显示不全的情况,这边介绍一下解决办法。 显示不全原因 Word “段落”格式 设置 “行距(N)” 为 “固定值” 解决办法 将 光标 移至 已插入的visio图片 右侧,右击...
  • 在windos上本地调试时使用POI将word转为PDF时, PDF无法显示文字的原因以及解决方案: 原因1:字体不存在问题, word中使用的字体在系统(windows或者linux)上一定要已经安装, 否则PDF无法显示文字, 将需要的字体下载下来...
  • 经过一系列查阅资料,发现下载的word 显示图片是需要请求链接的,当把服务器关闭时 ,外部链接的图片也不会显示。 解决方案: 把生成的base64 发给后端,然后返回一个链接,与后台测试这样导出是可以显示,但经理...
  • 【写博客常用】Word文档粘贴图片显示不全怎么办 一、在word文档里插入一张图片,发现这个粘贴的图片只显示了一小部分,无法正常显示全图。 ... ... 四、这样Word文档显示不全的图片就完全...则可以正常粘贴和显示图片 ...
  • Word、Excel、PPT中不能显示WMF图片有些时候在Word、Excel、PPT中不能正常显示WMF文件,其导致这一问题的是因为IE的临时文件存放路径不对所致,如下所示PPT文件中不能正常显示WMF文件,如下图:此时我们再看看IE...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 114,340
精华内容 45,736
关键字:

word无法显示图片