C#中压缩DOCX的代码

用于优化DOCX内容和大小的高性能.NET库,保留原始质量和基线数据

这是使用C#, F#, VB.NET压缩DOCX的专业解决方案。使用我们的DOCX优化 API 为.NET和.NET Core平台开发独立于平台的高级软件。免费在线试用!

查看代码片段

在 C# 中压缩 DOCX 文件

使大的 DOCX 文件更小而不损失质量。删除不必要和未使用的数据。在代码中缩小 DOCX 文件的大小。 C# 库为开发人员提供了一个集成的 API 来优化 DOCX 内容。

使用 C# 减小 DOCX 文件的大小

C# 库是一个独立的解决方案,不需要安装任何第三方软件。

使用 'Aspose.Words for .NET' 可以轻松实现无损压缩和深度内容优化。以下示例演示了如何优化 C# 中的 C# DOCX 文件的内容:

C#中用于压缩DOCX文件的代码示例
上传要优化/压缩的文件
运行代码
从列表中选择目标格式
dotnet add package Aspose.Words
复制
using Aspose.Words;

var doc = new Document("Input.docx");
doc.Cleanup();

var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
    if (shape.IsImage)
    {
        // 由开发人员选择用于图像压缩的库。
        using var image = Image.FromStream(shape.ImageData.ToStream());

        // ...
        // 压缩图像并将其设置回形状。
        shape.ImageData.SetImage("yourCompressedImage");
    }
}

var saveOptions = new OoxmlSaveOptions
{
  CompressionLevel = CompressionLevel.Maximum
};

doc.Save("Output.docx", saveOptions);
using Aspose.Words; var doc = new Document("Input.docx"); doc.Cleanup(); var nodes = doc.GetChildNodes(NodeType.Shape, true); foreach (Shape shape in nodes) { if (shape.IsImage) { // 由开发人员选择用于图像压缩的库。 using var image = Image.FromStream(shape.ImageData.ToStream()); // ... // 压缩图像并将其设置回形状。 shape.ImageData.SetImage("yourCompressedImage"); } } var saveOptions = new PdfSaveOptions { CacheBackgroundGraphics = true }; doc.Save("Output.docx", saveOptions); using Aspose.Words; var doc = new Document("Input.docx"); doc.Cleanup(); var nodes = doc.GetChildNodes(NodeType.Shape, true); foreach (Shape shape in nodes) { if (shape.IsImage) { // 由开发人员选择用于图像压缩的库。 using var image = Image.Fromstream(shape.ImageData.ToStream()); // ... // 压缩图像并将其设置回形状。 shape.ImageData.SetImage("yourCompressedImage"); } } doc.Save("Output.docx"); using Aspose.Words; var doc = new Document("Input.docx"); doc.Cleanup(); var nodes = doc.GetChildNodes(NodeType.Shape, true); foreach (Shape shape in nodes) { if (shape.IsImage) { // 由开发人员选择用于图像压缩的库。 using var image = Image.FromStream(shape.ImageData.ToStream()); // ... // 压缩图像并将其设置回形状。 shape.ImageData.SetImage("yourCompressedImage"); } } var saveOptions = new OoxmlSaveOptions { CompressionLevel = CompressionLevel.Maximum }; doc.Save("Output.docx", saveOptions); using Aspose.Words; var doc = new Document(); var builder = new DocumentBuilder(doc); var shape = builder.InsertImage("Input.docx"); var saveOptions = new ImageSaveOptions(SaveFormat.Docx) { }; shape.GetShapeRenderer().Save("Output.docx", saveOptions); using Aspose.Words; using Aspose.Words.Pdf2Word.FixedFormats; using var pdfStream = File.OpenRead("Input.docx"); var renderer = new PdfFixedRenderer(); var pdfReadOptions = new PdfFixedOptions { ImageFormat = FixedImageFormat.Jpeg, JpegQuality = 50 }; const double maxPageDimension = 1584; var pagesStream = renderer.SavePdfAsImages(pdfStream, pdfReadOptions); var builder = new DocumentBuilder(); for (var i = 0; i < pagesStream.Count; ++i) { // 设置最大页面大小以避免当前页面图像缩放。 var pageSetup = builder.PageSetup; SetPageSize(pageSetup, maxPageDimension, maxPageDimension); var pageImage = builder.InsertImage(pagesStream[i]); SetPageSize(pageSetup, pageImage.Width, pageImage.Height); pageSetup.TopMargin = 0; pageSetup.LeftMargin = 0; pageSetup.BottomMargin = 0; pageSetup.RightMargin = 0; if (i != pagesStream.Count - 1) builder.InsertBreak(BreakType.SectionBreakNewPage); } var saveOptions = new PdfSaveOptions { CacheBackgroundGraphics = true }; builder.Document.Save("Output.docx", saveOptions); private void SetPageSize(PageSetup pageSetup, double width, double height) { pageSetup.PageWidth = width; pageSetup.PageHeight = height; }
运行代码

如何在 C# 中压缩 DOCX

  1. 安装Aspose.Words for .NET 。
  2. 将库引用(导入库)添加到您的C#项目。
  3. 在C#中打开源DOCX文件。
  4. 在不损失质量的情况下压缩DOCX 。
  5. 调用Document.Cleanup()方法。结果代码可能因输出文件格式而异。
  6. 将压缩结果作为DOCX文件获取。

C#库用于优化和压缩DOCX个文件

在您的系统上 "Aspose.Words for .NET" 有三个备选选项。请选择符合您需求的一种,并按照分步说明进行操作:

系统要求

我们的产品是完全跨平台的,并支持所有主要的 .NET 实现:

  • .NET ≥ 5.0
  • .NET Core ≥ 2.0
  • .NET Standard ≥ 2.0
  • .NET Framework ≥ 3.5
  • MonoMac
  • MonoAndroid
  • Xamarin

由于 .NET 代码不依赖于底层硬件或操作系统,而只依赖于虚拟机,因此您可以自由地为 Windows、macOS、Android、iOS 和 Linux 开发任何类型的软件。只需确保您已安装相应版本的.NET Framework, .NET Core, Windows Azure, Mono或Xamarin即可。

我们建议使用 Microsoft Visual Studio、Xamarin 和 MonoDevelop 集成开发环境来创建C#, F#, VB.NET应用程序。

更多详细信息请参阅产品文档

其他支持的文件格式优化

您可以优化许多其他文件格式的文件:

5%

订阅 Aspose 产品更新

获取直接发送到您的邮箱的每月通讯和优惠。

© Aspose Pty Ltd 2001-2024. 版权所有。