【发布时间】:2017-12-23 23:23:19
【问题描述】:
我有一个转换为 html 的 excel 表,然后将 HTML 转换为 word。缺少一件事:excel表中的图像采用base64字符串格式,它们覆盖在表格上,而不是单元格的一部分。如何将此类图像添加到我的 docx 文件中? 我想要一个从特殊单元格(如 E18)开始的表格上的图像叠加层。
【问题讨论】:
标签: image base64 overlay openxml
我有一个转换为 html 的 excel 表,然后将 HTML 转换为 word。缺少一件事:excel表中的图像采用base64字符串格式,它们覆盖在表格上,而不是单元格的一部分。如何将此类图像添加到我的 docx 文件中? 我想要一个从特殊单元格(如 E18)开始的表格上的图像叠加层。
【问题讨论】:
标签: image base64 overlay openxml
1- Base64 字符串必须转换为内存流才能用作图像源
ImagePart imgp = mainPart.AddImagePart(ImagePartType.Png);
MemoryStream M = new MemoryStream(Convert.FromBase64String(o.Base64String));
imgp.FeedData(M);
2- 必须创建带有锚点的绘图对象以容纳图像。内联绘图没有用。锚对象有助于将文本上方的图像流到任何地方。
3- 网络上的大多数示例将绘图添加到文档或正文或运行....出于我的问题(单元格内的参考点)的目的,我们很容易将绘图添加到单元格对象。
【讨论】: