测试产品:Aspose.Words
开发语言:JAVA
测试问题:HTML转word的时候可以控制图片的大小吗?附件.zip (68.6 KB)
附件一为“输入HTML文件”,附件二为“目标输出word文档”
在html可以通过css样式控制图片大小显示,但是导入到word的中样式失效了。如图:QQ图片20181225145550.png (71.5 KB)
。所以在word里的图片希望设置一个最大宽度,请问怎么实现?
测试产品:Aspose.Words
开发语言:JAVA
测试问题:HTML转word的时候可以控制图片的大小吗?附件.zip (68.6 KB)
附件一为“输入HTML文件”,附件二为“目标输出word文档”
在html可以通过css样式控制图片大小显示,但是导入到word的中样式失效了。如图:QQ图片20181225145550.png (71.5 KB)
。所以在word里的图片希望设置一个最大宽度,请问怎么实现?
图像作为Shape节点导入到Aspose.Words的DOM中。 您可以使用Shape.Width和Shape.Height属性更改图像的大小。
此外,请注意Aspose.Words模仿MS Word的行为。 如果您使用MS Word将HTML转换为DOCX,您将获得相同的输出。
如果您仍然遇到问题,请分享您的预期输出Word文档。 然后,我们将为您提供有关查询的更多信息。
您好,非常感谢您的指导。
但是这个方法要遍历节点,效率不高。
请问还有其他方法吗?其实我本质问题不是去控制图片大小,而是在html通过css样式已经控制好了图片大小的显示,但是再导入到word的中图片大小样式就失效了。这个问题有解决的办法吗?
附件一为“输入HTML文件”附件一.zip (1.5 KB)
,附件二为“导入word文档格式失效示例”附件二.zip (67.5 KB)
感谢您分享细节。 您可以使用Shape.Width和Shape.Height属性来设置图像的宽度和高度。 在您的情况下,我们建议您设置左缩进和第一行缩进,如下所示。 希望这对你有所帮助。
Document doc = new Document(MyDir + "in.html");
for (Shape shape :(Iterable<Shape>) doc.getChildNodes(NodeType.SHAPE, true))
{
if (shape.hasImage())
{
shape.getParentParagraph().getParagraphFormat().setFirstLineIndent(0);
shape.getParentParagraph().getParagraphFormat().setLeftIndent(0);
}
}
doc.save(MyDir + "19.1.docx");