Markdown 以其轻量级的语法提供了一种简化网页内容创建、协作和文档共享的方法,尤其在 Git 或支持 Markdown 的编辑器等工具流行的环境中。通过将 Word 文档转换为 Markdown 文件,用户可以提升生产效率,简化版本控制,并确保不同系统和平台之间的兼容性。本文将介绍如何使用 Spire.Doc for .NET 通过 C# 代码将 Word 文档转换为 Markdown 文件。
安装 Spire.Doc for .NET
首先,您需要将 Spire.Doc for.NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。
PM> Install-Package Spire.Doc将 Word 文档转换为 Markdown 文件
使用 Spire.Doc for .NET,我们可以通过加载文档使用 Document.LoadFromFile() 方法,然后使用 Document.SaveToFile(filename: String, FileFormat.Markdown) 方法将其转换为 Markdown 文件。具体步骤如下:
- 创建 Document 类的实例。
- 使用 Document.LoadFromFile() 方法加载 Word 文档。
- 使用 Document.SaveToFile(filename: String, FileFormat.Markdown) 方法将文档转换为 Markdown 文件。
- C#
using Spire.Doc;
namespace WordToMarkdown
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建Document类的实例
            Document doc = new Document();
            // 加载一个Word文档
            doc.LoadFromFile("示例.docx");
            // 将文档转换为Markdown文件
            doc.SaveToFile("output/Word转Markdown.md", FileFormat.Markdown);
            doc.Dispose();
        }
    }
}
删除 Word 图片并转换为 Markdown
当使用 Spire.Doc for .NET 将 Word 文档转换为 Markdown 文件时,默认情况下图片会以 Base64 编码存储,可能会使转换出的文件过大且影响兼容性。为了应对这一问题,我们可以在转换过程中移除图片,从而减小文件大小并提高兼容性。
以下步骤说明了如何移除 Word 文档图片并将其转换为 Markdown 文件:
- 创建 Document 类的实例。
- 使用 Document.LoadFromFile() 方法加载 Word 文档。
- 遍历文档中的各部分,再遍历段落。
- 遍历段落中的文档对象:
- 通过 Paragraph.ChildObjects[] 属性获取文档对象。
- 检查其是否是 DocPicture 类的实例。如果是,则使用 Paragraph.ChildObjects.Remove(DocumentObject) 方法将其从段落中移除。
- 使用 Document.SaveToFile(filename: String, FileFormat.Markdown) 方法将文档转换为 Markdown 文件。
- C#
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
namespace WordToMarkdownNoImage
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建Document类的实例
            Document doc = new Document();
            // 加载一个Word文档
            doc.LoadFromFile("示例.docx");
            // 遍历文档中的各个部分
            foreach (Section section in doc.Sections)
            {
                // 遍历部分中的各个段落
                foreach (Paragraph paragraph in section.Paragraphs)
                {
                    // 遍历段落中的文档对象
                    for (int i = 0; i < paragraph.ChildObjects.Count; i++)
                    {
                        // 获取一个文档对象
                        DocumentObject docObj = paragraph.ChildObjects[i];
                        // 检查它是否是DocPicture类的实例
                        if (docObj is DocPicture)
                        {
                            // 移除DocPicture实例
                            paragraph.ChildObjects.Remove(docObj);
                        }
                    }
                }
            }
            // 将文档转换为Markdown文件
            doc.SaveToFile("output/Word转Markdown移除图片.md", FileFormat.Markdown);
            doc.Dispose();
        }
    }
}
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
 



 
					



