AIDE .NET

WebGrease .NET Core (Comment ça marche pour les développeurs)

Chaknith Bin
Chaknith Bin
août 13, 2024
Partager:

Introduction

L'intégration de WebGrease avec IronPDF et .NET Core offre une méthode puissante pour produire des documents PDF d'excellente qualité et rationaliser les performances des applications web. Grâce à la compression JavaScript, à l'optimisation des images et à la minification CSS, WebGrease est un logiciel riche en fonctionnalités qui permet aux sites web de fonctionner plus rapidement et plus facilement pour les développeurs. Les développeurs peuvent facilement créer des PDF dynamiques à partir de plusieurs sources, notamment des vues HTML et MVC, lorsqu'ils utilisent IronPDF, une puissante boîte à outils .NET pour la production et la manipulation de documents PDF.

Grâce à cette intégration, les applications Web restent fluides et adaptables, ce qui permet une gestion efficace des ressources et une génération dynamique de PDF. WebGrease et IronPDF sont entièrement compatibles avec .NET Core, permettant aux développeurs de créer des applications multiplateformes qui fonctionnent parfaitement sur Linux, macOS et Windows. L'utilisateur bénéficie ainsi d'une expérience améliorée grâce à des performances optimisées et à un traitement supérieur des documents.

Qu'est-ce que WebGrease ?

Créé à l'origine comme un composant de la pile ASP .NET, WebGrease est un outil pour automatiser des processus tels que l'optimisation de JavaScript, la compression, l'optimisation des images et la minification CSS des fichiers statiques afin d'améliorer les performances web. Ces optimisations contribuent à réduire la taille des ressources web, ce qui améliore les performances des applications web et accélère les temps de chargement.

WebGrease .NET Core (Comment cela fonctionne pour les développeurs) : Figure 1

Dans le contexte de .NET Core, lorsque nous parlons de WebGrease, nous entendons l'application de ces méthodes d'optimisation aux applications .NET Core. Microsoft a créé le Framework .NET Core multiplateforme et open-source pour permettre aux développeurs de créer des applications de pointe, évolutives et performantes. Les développeurs peuvent appliquer les techniques d'optimisation des performances des applications ASP.NET traditionnelles à leurs projets .NET Core en intégrant WebGrease. Les développeurs peuvent ainsi s'assurer que leurs applications web sont efficaces et performantes sur différentes plateformes, telles que Windows, Linux et macOS.

Caractéristiques de WebGrease

Dans le cadre de .NET Core, WebGrease offre un certain nombre de fonctionnalités ciblées sur l'amélioration de l'efficacité et de la rapidité des applications web. Les principales caractéristiques sont les suivantes :

Minification CSS :

Élimine la mise en forme, les commentaires et les espaces inutiles des fichiers CSS. Réduit les requêtes HTTP en combinant de nombreux fichiers CSS en un seul fichier. Améliore les performances et accélère les temps de chargement des CSS.

Compression JavaScript :

Réduit les fichiers JavaScript en supprimant les caractères inutiles. Crée un seul fichier JavaScript à partir de plusieurs fichiers distincts. Réduit la taille des fichiers JavaScript pour accélérer le téléchargement et l'exécution.

Optimisation d'image :

Réduit la taille des fichiers en compressant les images sans compromettre sensiblement la qualité. Le cas échéant, convertissez les photos dans des formats plus efficaces. Augmente les vitesses de chargement grâce à l'optimisation des ressources des images.

Minification HTML :

Réduit la quantité d'espaces blancs et de commentaires dans les fichiers HTML. Simplifie les fichiers HTML afin que les navigateurs puissent les analyser et les rendre plus rapidement.

Regroupement des ressources :

Combine plusieurs fichiers JavaScript et CSS en un seul fichier rationalisé. Améliore les temps de chargement en réduisant le nombre de requêtes HTTP nécessaires pour obtenir le fichier de chargement, obtenir les fichiers statiques et charger une page.

Flexibilité de Configuration :

Offre des choix pour configurer le processus d'optimisation. Permet aux développeurs de choisir les répertoires et les fichiers à optimiser ou à laisser de côté.

Compatibilité multiplateforme :

Entièrement compatible avec .NET Core, permettant une utilisation dans les applications Windows, Linux et macOS. Garantit que les améliorations de performance fonctionnent bien dans une variété de contextes.

Intégration avec les processus de construction :

Peut être incorporé dans les procédures de construction afin d'optimiser automatiquement les ressources du système pendant le déploiement et le développement. Soutenir les processus automatisés afin d'assurer une optimisation cohérente du système, à différentes phases de développement.

Amélioration des performances :

Minimise la quantité de ressources qui doivent être chargées, améliorant ainsi les performances de l'ensemble de l'application web. Améliore l'expérience de l'utilisateur et accélère le chargement des pages.

Créer et configurer WebGrease

Une application .NET Core doit installer les paquets requis, configurer le processus de construction et mettre en place des tâches d'optimisation avant de pouvoir utiliser WebGrease. Les étapes suivantes vous aideront à établir et à configurer WebGrease dans une application .NET Core :

Créer un projet .NET Core

Commencez par créer une nouvelle application web .NET Core. Pour ce faire, vous pouvez utiliser l'interface de programmation .NET.

dotnet new web -n WebGreaseApp
cd WebGreaseApp
dotnet new web -n WebGreaseApp
cd WebGreaseApp
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Ajouter les paquets requis

Bien qu'il n'existe pas de package .NET Core direct pour WebGrease, vous pouvez toujours accomplir des fonctionnalités comparables avec d'autres programmes tels que BundlerMinifier. Incluez ce paquet dans votre entreprise.

dotnet add package BundlerMinifier.Core
dotnet add package BundlerMinifier.Core
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Configurer le regroupement et la minification

Créez un fichier bundleconfig.json à la racine de votre projet pour fournir les paramètres de regroupement et de minification pour vos fichiers CSS et JavaScript. Il s'agit d'une illustration d'une configuration.

[
  {
    "outputFileName": "wwwroot/css/site.min.css",
    "inputFiles": [
      "wwwroot/css/site.css"
    ],
    "minify": {
      "enabled": true,
      "renameLocals": true
    }
  },
  {
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "wwwroot/js/site.js"
    ],
    "minify": {
      "enabled": true
    }
  }
]
[
  {
    "outputFileName": "wwwroot/css/site.min.css",
    "inputFiles": [
      "wwwroot/css/site.css"
    ],
    "minify": {
      "enabled": true,
      "renameLocals": true
    }
  },
  {
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "wwwroot/js/site.js"
    ],
    "minify": {
      "enabled": true
    }
  }
]
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Intégration au processus de construction

Ajoutez des instructions pour exécuter les opérations de regroupement et de minification pendant le processus de construction à votre fichier de projet (.csproj).

Dans votre fichier .csproj, ajoutez l'élément suivant à l'intérieur de l'élément :

<Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">
  <Exec Command="dotnet bundle" />
</Target>
XML

Installer et exécuter BundlerMinifier

Vous devez installer l'utilitaire .NET afin d'utiliser l'outil BundlerMinifier, tel que nous l'avons inclus. Exécutez la ligne de commande suivante ci-dessous :

dotnet tool install -g BundlerMinifier.Core
dotnet tool install -g BundlerMinifier.Core
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Pour regrouper et minifier vos fichiers, exécutez :

dotnet bundle
dotnet bundle
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Optimiser les images

Vous pouvez utiliser ImageSharp ou d'autres outils d'optimisation d'images conformes à .NET Core pour l'optimisation des images.

Installer ImageSharp

Installez le paquetage SixLabors.ImageSharp :

dotnet add package SixLabors.ImageSharp
dotnet add package SixLabors.ImageSharp
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Voici un exemple d'extrait de code pour l'optimisation d'une image :

using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Processing;
using System.IO;
public void OptimizeImage(string inputPath, string outputPath)
{
    using (var image = Image.Load(inputPath))
    {
        image.Mutate(x => x.Resize(new ResizeOptions
        {
            Mode = ResizeMode.Max,
            Size = new Size(800, 600)
        }));
        image.Save(outputPath); // Automatic encoder selected based on file extension.
    }
}
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Processing;
using System.IO;
public void OptimizeImage(string inputPath, string outputPath)
{
    using (var image = Image.Load(inputPath))
    {
        image.Mutate(x => x.Resize(new ResizeOptions
        {
            Mode = ResizeMode.Max,
            Size = new Size(800, 600)
        }));
        image.Save(outputPath); // Automatic encoder selected based on file extension.
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Exécutez votre application une dernière fois pour vous assurer que le regroupement et la minification fonctionnent comme prévu.

Ouvrez votre application dans le navigateur, puis vérifiez que les fichiers JavaScript et CSS sont minifiés en les examinant.

Avec des outils qui fonctionnent avec l'environnement .NET actuel, vous pouvez mettre en place et configurer une optimisation de type WebGrease pour une application .NET Core en suivant les étapes suivantes.

Premiers pas avec IronPDF

La configuration de l'optimisation des performances de vos ressources web et l'utilisation d'IronPDF pour la génération et la manipulation de PDF sont toutes deux nécessaires pour intégrer l'optimisation de type WebGrease avec IronPDF dans une application .NET Core. Voici comment commencer, étape par étape :

Qu'est-ce qu'IronPDF ?

La bibliothèque riche en fonctionnalités .NET IronPDF permet aux programmes C# de produire, lire et modifier des documents PDF. Grâce à ce programme, les développeurs peuvent facilement convertir les informations HTML, CSS et JavaScript en PDF de haute qualité, prêts à être imprimés. Parmi les tâches les plus importantes, citons l'ajout d'en-têtes et de pieds de page, la division et la combinaison de PDF, l'ajout de filigranes aux documents et la conversion de HTML en PDF.

IronPDF est utile pour une variété d'applications car il prend en charge à la fois .NET Framework et .NET Core. Comme les PDF sont conviviaux et qu'ils contiennent beaucoup de contenu, les développeurs peuvent facilement les incorporer dans leurs produits. Parce qu'IronPDF peut gérer des mises en page et des formatages de données complexes, les PDF qu'il génère en sortie reflètent fidèlement le texte HTML fourni à l'origine par le client.

WebGrease .NET Core (Comment ça fonctionne pour les développeurs) : Figure 2

Caractéristiques d'IronPDF

Génération de PDF à partir de HTML

Convertissez JavaScript, HTML et CSS en PDF. Prend en charge les requêtes média et la conception réactive, deux normes web contemporaines. Utile pour décorer dynamiquement des documents PDF, des rapports et des factures à l'aide de HTML et de CSS

Édition de PDF

Des textes, des photos et d'autres contenus peuvent être ajoutés à des PDF préexistants. Extraire du texte et des images de fichiers PDF. Combinez plusieurs PDF en un seul fichier. Diviser des fichiers PDF en plusieurs documents distincts. Inclure des filigranes, des annotations, des en-têtes et des pieds de page.

Conversion PDF

Convertissez un large éventail de formats de fichiers au format PDF, y compris Word, Excel et les fichiers images. Permet la conversion de PDF en image (PNG, JPEG, etc.).

Performances et Fiabilité

Les performances élevées et la fiabilité sont des qualités recherchées dans les environnements industriels. Gestion aisée de grands ensembles de documents.

Installer IronPDF

Pour obtenir les outils dont vous avez besoin pour travailler avec des PDF dans des projets .NET, installez le paquet IronPDF.

dotnet add package IronPdf
dotnet add package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'dotnet add package IronPdf
$vbLabelText   $csharpLabel

Configurer le regroupement et la minification

Créez un fichier de configuration bundleconfig.json à la racine de votre projet pour fournir les paramètres de regroupement et de minification pour vos fichiers CSS et JavaScript. Ce fichier de configuration est une illustration d'une configuration :

[
  {
    "outputFileName": "wwwroot/css/site.min.css",
    "inputFiles": [
      "wwwroot/css/site.css"
    ],
    "minify": {
      "enabled": true,
      "renameLocals": true
    }
  },
  {
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "wwwroot/js/site.js"
    ],
    "minify": {
      "enabled": true
    }
  }
]
[
  {
    "outputFileName": "wwwroot/css/site.min.css",
    "inputFiles": [
      "wwwroot/css/site.css"
    ],
    "minify": {
      "enabled": true,
      "renameLocals": true
    }
  },
  {
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "wwwroot/js/site.js"
    ],
    "minify": {
      "enabled": true
    }
  }
]
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Se connecter au processus de construction

Assurez-vous que les instructions pour exécuter les opérations de minification et de regroupement pendant le processus de construction sont incluses dans votre fichier de projet (.csproj). Dans votre fichier .csproj, ajoutez l'élément qui suit à l'intérieur de l'élément :

<Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">
  <Exec Command="dotnet bundle" />
</Target>
XML

Intégrer IronPDF

Construire un contrôleur avec IronPDF pour produire des PDF. Créer un nouveau contrôleur PdfController.

using Microsoft.AspNetCore.Mvc;
using IronPdf;
namespace WebGreaseIronPdfApp.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult GeneratePdf()
        {
            // Create a PDF from a simple HTML string
            var renderer = new ChromePdfRenderer();
            var pdf = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1><p>This is a generated PDF document.</p>");
            // Save the PDF to a byte array
            var pdfBytes = pdf.BinaryData;
            // Return the PDF file as a download
            return File(pdfBytes, "application/pdf", "example.pdf");
        }()
}
using Microsoft.AspNetCore.Mvc;
using IronPdf;
namespace WebGreaseIronPdfApp.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult GeneratePdf()
        {
            // Create a PDF from a simple HTML string
            var renderer = new ChromePdfRenderer();
            var pdf = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1><p>This is a generated PDF document.</p>");
            // Save the PDF to a byte array
            var pdfBytes = pdf.BinaryData;
            // Return the PDF file as a download
            return File(pdfBytes, "application/pdf", "example.pdf");
        }()
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

La première chose que nous faisons dans le code PdfController est d'importer les espaces de noms requis, qui sont Microsoft.AspNetCore.Mvc pour les fonctionnalités ASP.NET Core MVC et IronPDF pour la génération de PDF. Parce qu'elle dérive de Controller, la classe PdfController est un contrôleur MVC. La méthode GeneratePdf de cette classe est définie pour gérer la création des PDF.

WebGrease .NET Core (Comment cela fonctionne pour les développeurs) : Figure 3

Pour convertir du contenu HTML en PDF, cette fonction crée une instance de ChromePdfRenderer() d'IronPDF. Une chaîne HTML de base peut être transformée en document PDF à l'aide de la fonction RenderHtmlAsPdf. L'attribut BinaryData est ensuite utilisé pour enregistrer ce PDF dans un tableau d'octets. Enfin, le fichier PDF est renvoyé en tant que réponse téléchargeable en utilisant la méthode File, accompagné du nom de fichier demandé (example.pdf) et du type MIME correct (application/pdf). Grâce à cette intégration, le programme peut désormais créer et servir dynamiquement des documents PDF basés sur du contenu HTML.

Itinéraire pour générer un PDF

Assurez-vous que le routage de la génération de PDF est inclus dans votre fichier Startup.cs.

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    else
    {
        app.UseExceptionHandler("/Home/Error");
        app.UseHsts();
    }
    app.UseHttpsRedirection();
    app.UseStaticFiles();
    app.UseRouting();
    app.UseAuthorization();
    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllerRoute(
            name: "default",
            pattern: "{controller=Home}/{action=Index}/{id?}");
        endpoints.MapControllerRoute(
            name: "pdf",
            pattern: "pdf",
            defaults: new { controller = "Pdf", action = "GeneratePdf" });
    });
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    else
    {
        app.UseExceptionHandler("/Home/Error");
        app.UseHsts();
    }
    app.UseHttpsRedirection();
    app.UseStaticFiles();
    app.UseRouting();
    app.UseAuthorization();
    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllerRoute(
            name: "default",
            pattern: "{controller=Home}/{action=Index}/{id?}");
        endpoints.MapControllerRoute(
            name: "pdf",
            pattern: "pdf",
            defaults: new { controller = "Pdf", action = "GeneratePdf" });
    });
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Exécuter et vérifier

Exécutez votre application pour vous assurer que vous pouvez créer des PDF et que le regroupement et la minification fonctionnent correctement.

dotnet run
dotnet run
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'dotnet run
$vbLabelText   $csharpLabel

Ouvrez le navigateur et accédez à votre application. Il devrait être possible de créer un fichier unique et de télécharger un document PDF en allant sur //pdf.

Conclusion

IronPDF et l'optimisation de type WebGrease constituent un combo puissant pour améliorer les performances en ligne et produire des documents PDF de haute qualité dans les applications .NET Core. Les développeurs peuvent s'assurer que leurs applications sont efficaces et flexibles en utilisant des outils comme IronPDF pour la création de PDF et BundlerMinifier pour l'optimisation des ressources. Outre la compression d'images, des stratégies d'optimisation des ressources telles que la minification CSS et JavaScript permettent également d'accélérer le chargement des pages et d'améliorer l'expérience de l'utilisateur. Parallèlement, IronPDF dispose de solides capacités de création dynamique de PDF à partir de texte HTML, ce qui simplifie le processus de création de documents correctement préparés tels que des factures, des rapports, etc.

Cette intégration fournit une solution complète pour les besoins de développement web contemporains au sein du Framework .NET Core, en améliorant non seulement les performances des applications en ligne, mais aussi en ajoutant des fonctionnalités utiles pour le traitement des PDF.

Avec IronPDF et Iron Software, vous pouvez augmenter votre boîte à outils pour le développement .NET en tirant parti de l'OCR, de la numérisation de codes-barres, de la création de PDF, de la connectivité Excel, et bien plus encore. Pour un prix de départ de $749, IronPDF offre aux développeurs l'accès à plus d'applications web et de fonctionnalités ainsi qu'un développement plus efficace. Pour ce faire, il associe ses concepts de base à la boîte à outils très flexible d'Iron Software.

Les développeurs pourront facilement choisir le modèle optimal si les options de licence du projet sont bien définies. Les avantages susmentionnés contribuent à l'exécution rapide, bien organisée et efficace de solutions par les développeurs pour toute une série de problèmes.

Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.
< PRÉCÉDENT
DuckDB C# (Comment ça marche pour les développeurs)
SUIVANT >
Azure.Messaging.ServiceBus Exemple C# (Comment ça marche)