2016-05-13 78 views
0

我想缩放docx4j中的图像以匹配它父母的宽度,如果它太大而无法放在页面上。例如,也许它在一个宽度大于页面的表格单元内。Docx4j将图像缩放到父元素

我目前在使用int width = box.getContainingBlock().getWidth();int imagewidth = imagePart.getImageInfo().getSize().getWidthMpt();,但这些值似乎并不正确。有没有更好的方法来做到这一点?

回答

0

https://github.com/plutext/docx4j/commit/81fecde856e80602a168cee8d3df70269668a9dc(在3.3.0)解决了这个用例,并补充说:

public Inline createImageInline(String filenameHint, String altText, 
      int id1, int id2, boolean link, int maxWidth) throws Exception 

,但你需要知道父母的宽度。

使用https://github.com/plutext/docx4j/commit/279b5bcc91ff65d4dc5b88f08b8f6e9815b12563

+0

我一直在玩这个方法的maxWidth参数,但尺寸是奇怪的例子。我有mpt或px中的ImageSize对象。然后我有parentBox(InlineLayoutBox对象),它有一个宽度和createImageInline方法似乎采用缇宽度。你知道我应该使用哪个宽度吗? – illumi

+0

请添加表示父对象的XML。是什么造成的:Word,docx4j或其他东西? – JasonPlutext