Оптимизиране и компресиране на файлове в C#

Високопроизводителна .NET библиотека за оптимизиране на съдържанието и размера на файла, запазвайки оригиналното качество и базовите данни

Разработвайте софтуер, използвайки усъвършенстван API за оптимизиране на документи, създавайте код на високо ниво, независим от платформата за платформи .NET и .NET Core. Това е мощно решение за компресиране на документи и изображения в C#, F#, VB.NET.

Вижте кодовия фрагмент

Компресирайте Word и HTML документи в C#

Намалете големите файлове без загуба на качество. Изтрийте ненужни и неизползвани данни. Намаляване на размера на Word и HTML файловете в C#. Нашата C# библиотека предоставя на разработчиците интегриран API за оптимизиране на документи в различни формати.

Тази C# библиотека е самостоятелно решение и не изисква инсталиран софтуер на трети страни.

Намалете размера на Word и HTML файлове с помощта на C#

Максималният ефект може да се постигне чрез оптимизиране на изображения с висока разделителна способност, както и документи, съдържащи такива изображения. Нашата C# библиотека ще ви помогне да компресирате DOCX, DOC, RTF, ODT, EPUB, HTML, JPG, PNG файлове.

Оптимизирането на документи без загуба на качество става лесно с 'Aspose.Words for .NET'. Следният пример показва как да свиете размера на Word документ в C#:

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; }
Изпълнение на код

Как да компресирате Word, JPG и други файлови формати в C#

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

C# библиотека за оптимизиране и компресиране на файлове

Има три алтернативни опции за инсталиране на "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. Всички права запазени.