【问题标题】:Convert to png from a base64String of a word document in .doc format (mime application/octet-stream)从 .doc 格式的 word 文档的 base64String 转换为 png(mime application/octet-stream)
【发布时间】:2021-01-20 18:22:28
【问题描述】:

根据研究,我找到了将 word 文档的 base64String 转换为 PNG 的方法。

  1. 使用OpenXml(不支持.doc..只支持docX)
  2. 尝试使用 iTextSharp 将 base64String 转换为 pdf(但失败)
    byte[] fileContent = Convert.FromBase64String(base64String);
    PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(filePath, FileMode.Create));
    document.Open();
    document.Add(Image.GetInstance(fileContent));
    document.Close();

*我的word文档包含图像/表格和文本。

【问题讨论】:

    标签: c# .net .net-core


    【解决方案1】:

    在解码 base64 字符串以获得 Word 文档文件后,要访问文件内容以转换为图像,您可以考虑使用具有必要组件的库来处理和加载 DOC 格式。

    例如,LEADTOOLS SDK 中的 RasterCodecs 类(因为我为供应商工作,所以我很熟悉该类),它使用该库附带的文件过滤器来加载和保存 DOC 文件为 PNG .这看起来像这样:

    byte[] fileContent = Convert.FromBase64String(base64String);
    MemoryStream DocStream = new MemoryStream(fileContent);
    using (RasterCodecs codecs = new RasterCodecs())
    {
       RasterImage image = codecs.Load(DocStream);
       codecs.Save(image, new FileStream(filePath, FileMode.Create), RasterImageFormat.Png, 0);
    }
    DocStream.Close();
    

    您也可以考虑使用 Microsoft 的 Office.Interop.Word 来加载 DOC 文件,但在此步骤之后您必须实现到 PNG 的转换。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-19
      • 2018-09-11
      • 2010-11-04
      • 1970-01-01
      • 2012-07-28
      • 2020-07-14
      • 2013-08-08
      相关资源
      最近更新 更多