優化和壓縮C#中的文件

用於優化文件內容和大小的高性能.NET庫,保留原始質量和基線數據

使用高級文檔優化 API 開發軟件,為.NET和.NET Core平台創建與平台無關的高級代碼。這是在C#, F#, VB.NET中壓縮文檔和圖像的強大解決方案。

查看代碼片段

在 C# 中壓縮 Word 和 HTML 文檔

在不損失質量的情況下使大文件變小。刪除不必要和未使用的數據。在 C# 中縮小 Word 和 HTML 文件的大小。我們的 C# 庫為開發人員提供了一個集成的 API 來優化各種格式的文檔。

這個 C# 庫是一個獨立的解決方案,不需要安裝任何第三方軟件。

使用 C# 減小 Word 和 HTML 文件的大小

通過優化高分辨率圖像以及包含此類圖像的文檔,可以獲得最大的效果。我們的 C# 庫將幫助您壓縮 HTML、DOCX、DOC、RTF、ODT、EPUB、HTML、JPG、PNG 文件。

使用 'Aspose.Words for .NET' 可以輕鬆優化文檔而不降低質量。以下示例顯示瞭如何在 C# 中縮小 Word 文檔的大小:

C#優化文件內容和大小的代碼示例
上傳要優化/壓縮的文件
運行代碼
從列表中選擇目標格式
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 pageSetup = builder.PageSetup; pageSetup.PageWidth = shape.Width; pageSetup.PageHeight = shape.Height; pageSetup.TopMargin = 0; pageSetup.LeftMargin = 0; pageSetup.BottomMargin = 0; pageSetup.RightMargin = 0; var saveOptions = new ImageSaveOptions(SaveFormat.Docx) { }; doc.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#如何壓縮PDF、 Word 、JPG等文件格式

  1. 安裝Aspose.Words for .NET 。
  2. 將庫引用(導入庫)添加到您的C#項目。
  3. 在C#中打開源文件。
  4. 在不損失質量的情況下壓縮文檔和圖像。
  5. 調用Document.Cleanup()方法。結果代碼可能因輸入/輸出文件格式而異。
  6. 將結果作為壓縮文件獲取。

C#庫來優化和壓縮文件

在您的系統上 "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. 版權所有。