我以base64
格式存储在我的数据库中的图像。我想在这里问的第一个问题是它是存储它的最佳方式吗?
接下来,我试图通过openxml
将此图像放入Word文档中。我已经用简单的文本填充了文档,但我无法将base64
字符串转换为图像,然后将其放在word文档中。
任何建议或指导都会很明显。
答案 0 :(得分:1)
要添加图像,可以使用ImagePart
对象然后将流传递给。这是详细的on msdn,
MainDocumentPart mainPart = wordprocessingDocument.MainDocumentPart;
ImagePart imagePart = mainPart.AddImagePart(ImagePartType.Jpeg);
using (FileStream stream = new FileStream(fileName, FileMode.Open))
{
imagePart.FeedData(stream);
}
AddImageToBody(wordprocessingDocument, mainPart.GetIdOfPart(imagePart));
ImagePart.FeedData
接受Stream,因此示例使用FileStream,您可以将其交换出来并使用MemoryStream。
var bytes = System.Convert.FromBase64String(yourBase64String);
using (Stream stream = new MemoryStream(byteArray))
{
imagePart.FeedData(stream);
}