首页 > 解决方案 > HTML 导入 Word -> 内联图像尺寸被忽略

问题描述

将 HTML 文件导入 Microsoft Word 时,将忽略内联图像尺寸。例如,以下 HTML 代码:

<html>
<body>
<div>
here's an image 50px in height: 
<img height=50 src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAT4AAACfCAMAAABX0UX9AAAAMFBMVEUMETYmKD8AADFlZnCQkZcAACwkJj6Xl5wWGTU5O0oFDDUAACUeIDqpqaxfYGtvcHd51QkgAAABV0lEQVR4nO3QwQGCMAAAsaIIKqj7bysz9L7JCBn7c2HS9hrrYzDpvekrFn2FvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvkRfoi/Rl+hL9CX6En2JvuTqO27MOsfne2fW7w+KdA3sU/NzBAAAAABJRU5ErkJggg==">
</div>
</body>
</html>

在浏览器中看起来像这样:

在此处输入图像描述

但是,在 Word 中看起来像这样(注意相对于 12-pt 字体的巨大尺寸):

在此处输入图像描述

如何让 Word 中的图像缩放到正确的大小?请注意:

标签: htmlimagems-worddimensions

解决方案


最终让我得到解决的是设置图像的空间分辨率(DPI,每英寸点数)。这是在对 PNG 文件进行 base64 编码之前直接在 PNG 文件中完成的。

使用 Pillow 在 Python 中生成图像输出时,我更改了

img.save(buf, format="PNG")

img.save(buf, format="PNG", dpi=(200,200))

Word 尊重这一点,至少对于 PNG 图像,这也是你的情况。它可能会忽略其他属性或只是优先考虑文件的 DPI 设置。


推荐阅读