Optimiser et compresser les fichiers dans C#

Bibliothèque .NET hautes performances pour optimiser le contenu et la taille du fichier en conservant la qualité d'origine et les données de base

Développez des logiciels à l'aide d'une API d'optimisation de documents avancée, créez un code de haut niveau indépendant de la plate-forme pour les plates-formes .NET et .NET Core. Il s'agit d'une solution puissante pour compresser des documents et des images en C#, F#, VB.NET.

Afficher l'extrait de code

Compresser des Word documents et HTML dans C#

Réduisez la taille des fichiers volumineux sans perte de qualité. Supprimez les données inutiles et inutilisées. Réduisez la taille des Word fichiers et HTML dans C#. Notre C# bibliothèque fournit aux développeurs une API intégrée pour optimiser les documents dans différents formats.

Cette C# bibliothèque est une solution autonome et ne nécessite l'installation d'aucun logiciel tiers.

Réduisez la taille des Word fichiers et HTML à l'aide C#

L'effet maximal peut être obtenu en optimisant les images haute résolution, ainsi que les documents contenant de telles images. Notre C# bibliothèque vous aidera à compresser les DOCX fichiers, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.

Optimisation des documents sans perte de qualité simplifiée avec 'Aspose.Words for .NET'. L'exemple suivant montre comment réduire la taille d'un Word document dans C#:

C# exemple de code pour optimiser le contenu et la taille du fichier
Téléchargez un fichier que vous souhaitez optimiser/compresser
Exécuter le code
Sélectionnez le format cible dans la liste
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)
    {
        //  C'est au développeur de choisir la bibliothèque pour la compression d'image.
        using var image = Image.FromStream(shape.ImageData.ToStream());

        // ...
        //  Compresser l'image et la remettre dans la forme.
        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) { // C'est au développeur de choisir la bibliothèque pour la compression d'image. using var image = Image.FromStream(shape.ImageData.ToStream()); // ... // Compresser l'image et la remettre dans la forme. 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) { // C'est au développeur de choisir la bibliothèque pour la compression d'image. using var image = Image.Fromstream(shape.ImageData.ToStream()); // ... // Compressez l'image et remettez-la à la forme. 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) { // C'est au développeur de choisir la bibliothèque pour la compression d'image. using var image = Image.FromStream(shape.ImageData.ToStream()); // ... // Compresser l'image et la remettre dans la forme. 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"); // Mettez à jour les paramètres de la page pour recadrer le document en fonction de la taille de l'image. 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) { // Définit la taille de page maximale pour éviter la mise à l'échelle de l'image de la page actuelle. 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; }
Exécuter le code

Comment compresser un fichier C#: Word, PDF, GIF, ZIP

  1. Installez Aspose.Words for .NET.
  2. Ajoutez une référence de bibliothèque (importez la bibliothèque) à votre projet C#.
  3. Ouvrez le fichier source dans C#.
  4. Compressez les documents et les images sans perte de qualité.
  5. Appelez la méthode Document.Cleanup(). Le code résultant peut varier en fonction des formats de fichier d'entrée/sortie.
  6. Obtenez le résultat sous forme de fichier compressé.

C# bibliothèque pour optimiser et compresser les fichiers

Il existe trois options alternatives pour installer "Aspose.Words pour .NET" sur votre système. Veuillez en choisir un qui correspond à vos besoins et suivez les instructions étape par étape :

Configuration requise

Notre produit est entièrement multiplateforme et prend en charge toutes les principales implémentations .NET:

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

Dans la mesure où le code .NET ne dépend pas du matériel ou du système d'exploitation sous-jacent, mais uniquement d'une machine virtuelle, vous êtes libre de développer tout type de logiciel pour Windows, macOS, Android, iOS et Linux. Assurez-vous simplement d'avoir installé la version correspondante de .NET Framework, .NET Core, Windows Azure, Mono ou Xamarin.

Nous vous recommandons d'utiliser les environnements de développement intégrés Microsoft Visual Studio, Xamarin et MonoDevelop pour créer des applications C#, F#, VB.NET.

Pour plus de détails, veuillez vous référer à la documentation produit.

5%

Abonnez-vous aux mises à jour des produits Aspose

Recevez des newsletters mensuelles et des offres directement dans votre boîte mail.

© Aspose Pty Ltd 2001-2024. Tous les droits sont réservés.