Код для стиснення DOCX в C#

Високопродуктивна бібліотека .NET для оптимізації вмісту та розміру DOCX із збереженням вихідної якості та базових даних

Це професійне рішення для стиснення DOCX за допомогою C#, F#, VB.NET. Використовуйте наш API оптимізації DOCX, щоб розробити високорівневе, незалежне від платформи програмне забезпечення для .NET і .NET Core. Спробуйте онлайн безкоштовно!

Переглянути фрагмент коду

Стисніть файл DOCX у C#

Зменшуйте великі файли DOCX без втрати якості. Видаліть непотрібні та невикористовувані дані. Зменшіть розмір файлу DOCX у коді. Бібліотека C# надає розробникам інтегрований API для оптимізації вмісту DOCX.

Зменшіть розмір файлів DOCX за допомогою C#

Бібліотека C# є окремим рішенням і не потребує встановлення стороннього програмного забезпечення.

Стиснення без втрат і глибока оптимізація вмісту стали легкими завдяки 'Aspose.Words for .NET'. У наступному прикладі показано, як оптимізувати вміст файлу DOCX у C#:

Приклад коду в 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; }
Виконати код

Як стиснути DOCX у C#

  1. Встановіть Aspose.Words for .NET.
  2. Додайте посилання на бібліотеку (імпортуйте бібліотеку) до свого проекту C#.
  3. Відкрийте вихідний DOCX файл у C#.
  4. Стисніть DOCX без втрати якості.
  5. Викличте метод Document.Cleanup(). Отриманий код може відрізнятися в залежності від формату вихідного файлу.
  6. Отримайте стиснутий результат у вигляді DOCX файлу.

C# бібліотека для оптимізації та стиснення DOCX файлів

Є три альтернативні варіанти встановлення "Aspose.Words для .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. Всі права захищені.