AIDE .NET

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code)

Publié mars 2, 2023
Partager:

L'interface utilisateur de l'application multiplateforme .NET(.NET MAUI) inclut le contrôle BlazorWebView, qui permet aux développeurs d'intégrer une application serveur MAUI Blazor dans un projet MAUI .NET à l'aide de Visual Studio. Ces applications hybrides Blazor, appelées applications Blazor .NET MAUI, permettent l'intégration d'une application hybride Blazor avec des fonctionnalités spécifiques à la plate-forme et le rendu de l'interface utilisateur Web(Interface utilisateur) des contrôles. Ces applications Blazor .NET sont des applications multiplateformes car .NET MAUI est un framework multiplateforme et ne nécessite pas de code spécifique à une plateforme. Nous pouvons utiliser les applications .NET MAUI sur les appareils Android/émulateurs Android, iOS, macOS, Mac Catalyst et les systèmes d'exploitation Windows.

Le contrôle BlazorWebView peut être ajouté à n'importe quelle page d'une application native .NET MAUI et dirigé vers la racine de l'application web MAUI Blazor. Les composants Razor de l'application web .NET MAUI Blazor s'exécuteront alors nativement dans le processus .NET et rendront les composants de l'interface utilisateur web par le biais d'un contrôle de vue web intégré. Les applications hybrides MAUI Blazor, les applications de bureau ou les formulaires Windows peuvent être utilisés sur toutes les différentes plateformes prises en charge par .NET MAUI, y compris le bac à sable du navigateur.

IronPDF : Une bibliothèque PDF .NET

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 1 : IronPDF for .NET

IronPDF

En tant que développeur C#, vous savez qu'il est important d'avoir les bons outils pour le travail. C'est là qu'intervient IronPDF. Cette puissante bibliothèque de classes .NET facilite la création d'applications de traitement de PDF avec les technologies .NET Core et .NET à l'aide d'API multiplateformes. IronPDF utilise le moteur .NET Chromium pour convertir les pages HTML(sous forme de code ou d'URL) vers des fichiers PDF, éliminant ainsi le besoin d'API complexes et de travail de conception manuel. Il prend en charge les documents web standard tels que HTML, ASPX, JS, CSS et les images.

Compatibilité avec Blazor et .NET MAUI

IronPDF peut être facilement intégré dans des applications construites avec des composants Blazor et.NET MAUI qui offrent aux développeurs toute une série de fonctionnalités pour créer et manipuler des documents PDF. Ces fonctionnalités comprennent la possibilité de générer des PDF à partir de HTML, XML et d'autres formats de fichiers, ainsi que la possibilité d'éditer des PDF existants en ajoutant ou en modifiant du texte, des images et d'autres éléments de la charge de travail .NET MAUI.

Étapes de création d'une application .NET MAUI Blazor

Suivez les étapes suivantes pour créer une application .NET MAUI dans Visual Studio.

Étape 1 : Ouvrir Visual Studio

Ouvrez la dernière version de Visual Studio et activez le mode développeur. La dernière version de Visual Studio est recommandée.

Étape 2 : Rechercher .NET Blazor

Cliquez maintenant sur le bouton Créer un nouveau projet et recherchez le modèle .NET MAUI Blazor. Sélectionnez " .NET MAUI Blazor App " dans les résultats de la recherche et cliquez sur le bouton Suivant.

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 2 : Recherche dans l'application .NET MAUI Blazor

Création d'une application MAUI de Visual Studio .NET

Étape 3 : Définir le nom du projet

Donnez un nom approprié au projet et cliquez sur le bouton Suivant.

Étape 4 : Framework .NET

Sélectionnez le Framework .NET cible. Il est recommandé d'utiliser le cadre le plus récent pour travailler en douceur. Après avoir sélectionné le cadre, cliquez sur le bouton Créer.

En suivant les étapes ci-dessus, une application .NET MAUI Blazor sera créée.

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 3 : Recherche .NET MAUI Blazor App

Création d'une application MAUI de Visual Studio .NET

Voyons comment nous pouvons utiliser ce projet de composant Blazor racine pour IronPDF.

Exporter le contenu de Blazor au format PDF

Nous pouvons convertir le contenu de Blazor en PDF très facilement en utilisant le code suivant.

Tout d'abord, ouvrez le fichier Index.razor et remplacez le code par le code suivant :

@page "/"
<input @bind="InputValue" />
<button onclick="@SubmitHTML">Render HTML</button>
@code{
    private string InputValue { get; set; }
    private async Task SubmitHTML()
    {
        var render = new IronPdf.ChromePdfRenderer();
        var doc = render.RenderHtmlAsPdf(InputValue);
        doc.SaveAs("Test.pdf");
    }

}
@page "/"
<input @bind="InputValue" />
<button onclick="@SubmitHTML">Render HTML</button>
@code{
    private string InputValue { get; set; }
    private async Task SubmitHTML()
    {
        var render = new IronPdf.ChromePdfRenderer();
        var doc = render.RenderHtmlAsPdf(InputValue);
        doc.SaveAs("Test.pdf");
    }

}
'INSTANT VB TODO TASK: The following line could not be converted:
page "/" <input bind="InputValue" /> <button onclick="@SubmitHTML"> Render HTML</button> code
If True Then
	private String InputValue {get;set;}
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'	private async Task SubmitHTML()
'	{
'		var render = New IronPdf.ChromePdfRenderer();
'		var doc = render.RenderHtmlAsPdf(InputValue);
'		doc.SaveAs("Test.pdf");
'	}

End If
VB   C#

Ce code permet de télécharger le fichier PDF généré sur la machine locale. C'est ainsi que nous pouvons convertir le contenu de Blazor en fichier PDF sans utiliser de bibliothèque externe avec IronPDF.

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 4 : Contenu Blazor vers PDF

Générer un PDF en utilisant .NET MAUI Blazor

Nous allons saisir le code HTML suivant dans la zone de texte :

<!DOCTYPE html>
<html>
  <head>
    <link href='https://fonts.googleapis.com/css2?family=Popin&display=swap' rel='stylesheet'>
    <style>
      /* Add CSS styles for the invoice here */
      body{
        font-family: 'Popin', cursive;
      }
      .invoice {
        width: 80%;
        margin: 0 auto;
        border: 1px solid #ccc;
        padding: 20px;
        background-color: #f5f5f5;
        color: #333;
      }
      .invoice h1 {
        text-align: center;
      }
      .invoice .invoice-info {
        display: flex;
        justify-content: space-between;
        margin-bottom: 20px;
      }
      .invoice .invoice-info div {
        width: 45%;
      }
      .invoice table {
        width: 100%;
        border-collapse: collapse;
      }
      .invoice table th, .invoice table td {
        border: 1px solid #ccc;
        padding: 10px;
      }
      .invoice table th {
        text-align: left;
        background-color: #f5f5f5;
      }
      .invoice table td {
        text-align: right;
      }
      .invoice table td.total {
        font-weight: bold;
      }
    </style>
  </head>
  <body>
    <div class="invoice">
      <h1>Invoice</h1>
      <div class="invoice-info">
        <div>
          <p><strong>From:</strong></p>
          <p>Your Company Name</p>
          <p>123 Main St</p>
          <p>City, State ZIP</p>
        </div>
        <div>
          <p><strong>To:</strong></p>
          <p>Customer Name</p>
          <p>456 Park Ave</p>
          <p>City, State ZIP</p>
        </div>
      </div>
      <table>
        <thead>
          <tr>
            <th>Product</th>
            <th>Quantity</th>
            <th>Price</th>
            <th>Total</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>Product 1</td>
            <td>1</td>
            <td>$10.00</td>
            <td>$10.00</td>
          </tr>
          <tr>
            <td>Product 2</td>
            <td>2</td>
            <td>$5.00</td>
            <td>$10.00</td>
          </tr>
          <tr>
            <td colspan="3" class="total">Total:</td>
            <td class="total">$20.00</td>
          </tr>
        </tbody>
      </table>
    </div>
  </body>
</html>
<!DOCTYPE html>
<html>
  <head>
    <link href='https://fonts.googleapis.com/css2?family=Popin&display=swap' rel='stylesheet'>
    <style>
      /* Add CSS styles for the invoice here */
      body{
        font-family: 'Popin', cursive;
      }
      .invoice {
        width: 80%;
        margin: 0 auto;
        border: 1px solid #ccc;
        padding: 20px;
        background-color: #f5f5f5;
        color: #333;
      }
      .invoice h1 {
        text-align: center;
      }
      .invoice .invoice-info {
        display: flex;
        justify-content: space-between;
        margin-bottom: 20px;
      }
      .invoice .invoice-info div {
        width: 45%;
      }
      .invoice table {
        width: 100%;
        border-collapse: collapse;
      }
      .invoice table th, .invoice table td {
        border: 1px solid #ccc;
        padding: 10px;
      }
      .invoice table th {
        text-align: left;
        background-color: #f5f5f5;
      }
      .invoice table td {
        text-align: right;
      }
      .invoice table td.total {
        font-weight: bold;
      }
    </style>
  </head>
  <body>
    <div class="invoice">
      <h1>Invoice</h1>
      <div class="invoice-info">
        <div>
          <p><strong>From:</strong></p>
          <p>Your Company Name</p>
          <p>123 Main St</p>
          <p>City, State ZIP</p>
        </div>
        <div>
          <p><strong>To:</strong></p>
          <p>Customer Name</p>
          <p>456 Park Ave</p>
          <p>City, State ZIP</p>
        </div>
      </div>
      <table>
        <thead>
          <tr>
            <th>Product</th>
            <th>Quantity</th>
            <th>Price</th>
            <th>Total</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>Product 1</td>
            <td>1</td>
            <td>$10.00</td>
            <td>$10.00</td>
          </tr>
          <tr>
            <td>Product 2</td>
            <td>2</td>
            <td>$5.00</td>
            <td>$10.00</td>
          </tr>
          <tr>
            <td colspan="3" class="total">Total:</td>
            <td class="total">$20.00</td>
          </tr>
        </tbody>
      </table>
    </div>
  </body>
</html>
HTML

L'application MAUI Blazor génère la sortie décrite ci-dessous.

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 5 : Sortie PDF

Générer un PDF en utilisant .NET MAUI Blazor

Obtenez plus d'informations sur IronPDF avecTutoriels de création de PDF de Blazor etapplications .NET MAUI.

IronXL

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 6 : IronXL for .NET

IronXL

IronXL est une bibliothèque .NET qui permet aux développeurs de lire, d'éditer et de créer des feuilles de calcul Excel en C#. Elle ne nécessite pas l'installation de Microsoft Excel et prend en charge toutes les plateformes, notamment Android, iOS, macOS, les machines Windows et Azure. Il offre une série de fonctionnalités telles que le chargement et l'édition de données à partir de différents formats, l'enregistrement et l'exportation vers différents formats, le travail avec des objets System.Data, la manipulation de formules, le tri de données et le style des cellules. De plus, il est disponible sous forme de paquetage NuGet et dispose d'une documentation et d'exemples disponibles sur son site web et ses dépôts GitHub.

IronXL prend en charge .NET MAUI et Blazor, ce qui permet aux utilisateurs d'accéder à des données ou de les récupérer à partir d'un éventail de sources, notamment des feuilles de calcul Excel, des services web ou Azure, et d'autres applications. Grâce à la prise en charge par IronXL de .NET MAUI et de Blazor, les développeurs disposent des outils les plus puissants pour mettre au point des interfaces utilisateur attrayantes sur iOS, macOS et Windows, ainsi que sur les appareils Android.

Voici un exemple de code d'IronXL :

using IronXL;
using IronXL.Formatting;
using IronXL.Formatting.Enums;
using IronXL.Styles;

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

//Create a specific conditional formatting rule.
ConditionalFormattingRule rule = sheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8");
//Set different style options.
rule.FontFormatting.IsBold = true;
rule.FontFormatting.FontColor = "#123456";
rule.BorderFormatting.RightBorderColor = "#ffffff";
rule.BorderFormatting.RightBorderType = BorderType.Thick;
rule.PatternFormatting.BackgroundColor = "#54bdd9";
rule.PatternFormatting.FillPattern = FillPattern.Diamonds;
//Add formatting with the specified region.
sheet.ConditionalFormatting.AddConditionalFormatting("A3:A8", rule);

ConditionalFormattingRule rule1 = sheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.Between, "7", "10");
rule1.FontFormatting.IsItalic = true;
rule1.FontFormatting.UnderlineType = FontUnderlineType.Single;
sheet.ConditionalFormatting.AddConditionalFormatting("A3:A9", rule1);

workbook.SaveAs("ApplyConditionalFormatting.xlsx");
using IronXL;
using IronXL.Formatting;
using IronXL.Formatting.Enums;
using IronXL.Styles;

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;

//Create a specific conditional formatting rule.
ConditionalFormattingRule rule = sheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8");
//Set different style options.
rule.FontFormatting.IsBold = true;
rule.FontFormatting.FontColor = "#123456";
rule.BorderFormatting.RightBorderColor = "#ffffff";
rule.BorderFormatting.RightBorderType = BorderType.Thick;
rule.PatternFormatting.BackgroundColor = "#54bdd9";
rule.PatternFormatting.FillPattern = FillPattern.Diamonds;
//Add formatting with the specified region.
sheet.ConditionalFormatting.AddConditionalFormatting("A3:A8", rule);

ConditionalFormattingRule rule1 = sheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.Between, "7", "10");
rule1.FontFormatting.IsItalic = true;
rule1.FontFormatting.UnderlineType = FontUnderlineType.Single;
sheet.ConditionalFormatting.AddConditionalFormatting("A3:A9", rule1);

workbook.SaveAs("ApplyConditionalFormatting.xlsx");
Imports IronXL
Imports IronXL.Formatting
Imports IronXL.Formatting.Enums
Imports IronXL.Styles

Private workbook As WorkBook = WorkBook.Load("test.xlsx")
Private sheet As WorkSheet = workbook.DefaultWorkSheet

'Create a specific conditional formatting rule.
Private rule As ConditionalFormattingRule = sheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.LessThan, "8")
'Set different style options.
rule.FontFormatting.IsBold = True
rule.FontFormatting.FontColor = "#123456"
rule.BorderFormatting.RightBorderColor = "#ffffff"
rule.BorderFormatting.RightBorderType = BorderType.Thick
rule.PatternFormatting.BackgroundColor = "#54bdd9"
rule.PatternFormatting.FillPattern = FillPattern.Diamonds
'Add formatting with the specified region.
sheet.ConditionalFormatting.AddConditionalFormatting("A3:A8", rule)

Dim rule1 As ConditionalFormattingRule = sheet.ConditionalFormatting.CreateConditionalFormattingRule(ComparisonOperator.Between, "7", "10")
rule1.FontFormatting.IsItalic = True
rule1.FontFormatting.UnderlineType = FontUnderlineType.Single
sheet.ConditionalFormatting.AddConditionalFormatting("A3:A9", rule1)

workbook.SaveAs("ApplyConditionalFormatting.xlsx")
VB   C#

Le code ci-dessus vous permet d'ouvrir un fichier Excel existant et d'appliquer une mise en forme conditionnelle sur différentes plages de cellules. Obtenez plus de tutoriels sur IronXL en utilisant ce qui suitTutoriels de mise en forme conditionnelle dans Excel.

IronOCR

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 7 : IronOCR

IronOCR

IronOCR est un outil d'OCR largement utilisé par les développeurs C#. Il fournit une API simple permettant d'intégrer une fonctionnalité d'OCR dans les applications C#. Il peut extraire efficacement du texte à partir d'un large éventail de sources, telles que des documents numérisés, des PDF et des images, en utilisant des algorithmes avancés d'apprentissage automatique pour reconnaître avec précision même les textes déformés ou difficiles à lire. IronOcr offre une gamme d'options de personnalisation pour les développeurs C#, notamment la possibilité d'ajuster la langue, la police et le jeu de caractères du texte reconnu, la collecte de prévisions et de prétraiter les images pour améliorer la précision de l'OCR. Ces fonctions de personnalisation permettent aux développeurs d'optimiser les performances d'IronOCR en fonction de leurs besoins spécifiques.

IronOCR est une puissante bibliothèque de reconnaissance OCR qui prend en charge .NET MAUI et Blazor. Avec IronOCR, les développeurs peuvent rapidement créer des applications sur n'importe quelle plateforme sans se soucier de la complexité de la numérisation, de la lecture et de l'écriture de grandes quantités de données textuelles. Aucun autre logiciel d'OCR ne permet aux utilisateurs d'accéder à une telle gamme d'outils de développement avec une intégration aussi simple.

Jetez un coup d'œil à l'exemple IronOcr qui montre comment nous pouvons extraire du texte d'un fichier PDF à l'aide d'IronOCR.

using IronOcr;

var ocrTesseract = new IronTesseract();

using (var ocrInput = new OcrInput())
{
    // OCR entire document
    ocrInput.AddPdf("example.pdf", "password");

    // Alternatively OCR selected page numbers
    ocrInput.AddPdfPages("example.pdf", new [] { 1, 2, 3 }, "password");

    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
using IronOcr;

var ocrTesseract = new IronTesseract();

using (var ocrInput = new OcrInput())
{
    // OCR entire document
    ocrInput.AddPdf("example.pdf", "password");

    // Alternatively OCR selected page numbers
    ocrInput.AddPdfPages("example.pdf", new [] { 1, 2, 3 }, "password");

    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr

Private ocrTesseract = New IronTesseract()

Using ocrInput As New OcrInput()
	' OCR entire document
	ocrInput.AddPdf("example.pdf", "password")

	' Alternatively OCR selected page numbers
	ocrInput.AddPdfPages("example.pdf", { 1, 2, 3 }, "password")

	Dim ocrResult = ocrTesseract.Read(ocrInput)
	Console.WriteLine(ocrResult.Text)
End Using
VB   C#

Lisez d'autres tutoriels sur l'utilisation d'IronOCR pour .NET Maui en visitant cette pageTutoriel sur l'OCR dans .NET MAUI.

Obtenez plus de tutoriels sur IronOCR en utilisant ce qui suitTutoriels PDF OCR.

IronBarcode

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 8 : IronBarcode

IronBarcode

IronBarcode est une bibliothèque C# qui permet aux développeurs d'ajouter facilement des fonctionnalités de lecture et d'écriture de codes-barres à leurs applications C#. Cette bibliothèque est particulièrement utile pour ceux qui travaillent sur des projets impliquant la numérisation ou la génération de codes-barres, tels que les systèmes de gestion des stocks ou les systèmes de points de vente. L'une des principales caractéristiques d'IronBarcode est sa capacité à lire et à écrire une grande variété de formats de codes-barres, notamment les codes QR, le Code 39, le Code 128 et bien d'autres. Cela signifie que les développeurs peuvent l'utiliser pour travailler avec différents types de codes-barres, en fonction des besoins de leur projet.

IronBarcode prend en charge .NET MAUI et Blazor, deux cadres populaires utilisés par les développeurs pour créer des applications modernes et multiplateformes. Ceci est bénéfique pour les développeurs car cela leur permet d'intégrer facilement les puissantes capacités de génération et de lecture de codes-barres d'IronBarcode dans leurs projets .NET MAUI et Blazor.

L'exemple de code suivant montre comment vous pouvez lire plusieurs types de codes-barres à l'aide de l'IronBarcode. Il s'agit d'un processus très simple et facile à comprendre.

using IronBarCode;
using IronSoftware.Drawing;

// Reading a barcode is easy with IronBarcode.
// Read from a File, Bitmap, Image, or Stream:

var resultFromFile = BarcodeReader.Read(@"file/barcode.png"); // From a file

var resultFromBitMap = BarcodeReader.Read(new Bitmap("barcode.bmp")); // From a bitmap

var resultFromAnyBitmap = BarcodeReader.Read(new AnyBitmap("barcode.bmp")); // From Anybitmap

var resultFromImage = BarcodeReader.Read(Image.FromFile("barcode.jpg")); // From an image

var resultFromStream = BarcodeReader.Read(myStream); // From a stream

// PDFs are more intricate and must be read using ReadPdf:
var resultFromPdf = BarcodeReader.ReadPdf(@"file/mydocument.pdf");
using IronBarCode;
using IronSoftware.Drawing;

// Reading a barcode is easy with IronBarcode.
// Read from a File, Bitmap, Image, or Stream:

var resultFromFile = BarcodeReader.Read(@"file/barcode.png"); // From a file

var resultFromBitMap = BarcodeReader.Read(new Bitmap("barcode.bmp")); // From a bitmap

var resultFromAnyBitmap = BarcodeReader.Read(new AnyBitmap("barcode.bmp")); // From Anybitmap

var resultFromImage = BarcodeReader.Read(Image.FromFile("barcode.jpg")); // From an image

var resultFromStream = BarcodeReader.Read(myStream); // From a stream

// PDFs are more intricate and must be read using ReadPdf:
var resultFromPdf = BarcodeReader.ReadPdf(@"file/mydocument.pdf");
Imports IronBarCode
Imports IronSoftware.Drawing

' Reading a barcode is easy with IronBarcode.
' Read from a File, Bitmap, Image, or Stream:

Private resultFromFile = BarcodeReader.Read("file/barcode.png") ' From a file

Private resultFromBitMap = BarcodeReader.Read(New Bitmap("barcode.bmp")) ' From a bitmap

Private resultFromAnyBitmap = BarcodeReader.Read(New AnyBitmap("barcode.bmp")) ' From Anybitmap

Private resultFromImage = BarcodeReader.Read(Image.FromFile("barcode.jpg")) ' From an image

Private resultFromStream = BarcodeReader.Read(myStream) ' From a stream

' PDFs are more intricate and must be read using ReadPdf:
Private resultFromPdf = BarcodeReader.ReadPdf("file/mydocument.pdf")
VB   C#

Lisez d'autres tutoriels sur l'utilisation d'IronBarcode for .NET Maui en visitant cette pageBarCode Scanner in .NET Tutoriel MAUI.

Obtenez plus de cas d'utilisation et de tutoriels d'IronBarcode en utilisant ce qui suitTutoriel du lecteur de BarCode.

Dessin au fer

.NET MAUI Blazor pour (PDF, EXCEL, OCR, BARCODE, QR Code) - Figure 9 : IronDrawing

Dessin au fer

IronDrawing est un logiciel gratuit,bibliothèque open-source qui offre une solution aux développeurs .NET qui doivent créer des applications multiplateformes utilisant des graphiques, des images et des polices. Il agit comme un pont entre les différentes bibliothèques graphiques, permettant aux développeurs d'utiliser un format unique et cohérent dans leur code tout en étant en mesure d'utiliser la bibliothèque sous-jacente de leur choix. IronDrawing est compatible avec le Framework .NET 4.6.2 et les versions plus récentes, y compris .NET 5, 6 et 7.

IronDrawing est développé et maintenu par Iron Software, une équipe de développeurs .NET expérimentés qui se consacrent à la croissance et au succès de dot NET. Ils ont créé IronDrawing pour faciliter le développement des bibliothèques de classes et de NuGet et pour aider l'écosystème NuGet à prospérer.

Raison du développement d'IronDrawing

IronDrawing a été développé en réponse à un changement radical annoncé par Microsoft dans lequel System.Drawing.Common ne sera plus supporté que sur les plateformes Windows. Ce changement a posé un problème aux développeurs qui maintiennent des bibliothèques multiplateformes utilisant System.Drawing.Common, car il les a obligés à reconstruire leurs bibliothèques pour supporter les utilisateurs non-Windows tels que Android, iOS. IronDrawing a été créé comme un format intermédiaire qui permet de convertir les différentes bibliothèques graphiques, facilitant ainsi la transition des développeurs vers les nouvelles normes graphiques au fur et à mesure de leur apparition.

Caractéristiques de IronDrawing

IronDrawing offre plusieurs fonctionnalités pour aider les développeurs dans leur travail, notamment AnyBitmap, une classe Bitmap universellement compatible qui peut être utilisée pour d'autres implémentations de Bitmap ; Color, une classe Color universellement compatible ; CropRectangle, une classe Rectangle universellement compatible ; et AnyFont, une classe de polices universellement compatible. Il fournit également un casting implicite entre ces classes et leurs homologues dans les différentes bibliothèques graphiques, ce qui permet une conversion aisée entre elles. Vous pouvez l'obtenir auprès duSite web de NuGet.

IronDrawing prend en charge presque tous les modèles .NET, y compris .NET MAUI et Blazor. Sa nature indépendante de la plateforme le rend facile à utiliser pour une variété d'applications, allant de l'ordinateur de bureau Windows aux projets mobiles ou basés sur le web.

Les avantages de l'Open Source

IronDrawing est une bibliothèque open-source. Tout le monde peut accéder au code à partir du siteDépôt GitHubil est donc plus facile que jamais de personnaliser et de modifier la bibliothèque pour mieux l'adapter aux projets et aux besoins de chacun. De plus, le fait que le code source soit accessible au public encourage la collaboration entre les développeurs, qui partagent et développent leurs idées. Les possibilités sont infinies avec la bibliothèque IronDrawing C#GitHub et commencez à explorer!

Jetons un coup d'œil à l'exemple de code d'IronDrawing pour générer AnyBitmap à partir de plusieurs formats de fichiers.

using IronSoftware.Drawing;

AnyBitmap bitmap;

// Generate AnyBitmap using filepath
bitmap = AnyBitmap.FromFile(@"FILE_PATH");
bitmap.SaveAs("output.bmp");

// Generate AnyBitmap from bytes
byte [] bytes = File.ReadAllBytes(@"FILE_PATH");
bitmap = AnyBitmap.FromBytes(bytes);
bitmap.SaveAs("result.bmp"); 

// Generate AnyBitmap from memory stream
byte [] bytes = File.ReadAllBytes(@"FILE_PATH");
MemoryStream ms = new MemoryStream(bytes);
bitmap = AnyBitmap.FromStream(ms);
bitmap.SaveAs("output.bmp");  

// Generate AnyBitmap from Uri
Uri uri = new Uri("URI_PATH");
bitmap = AnyBitmap.FromUri(uri);
bitmap.SaveAs("uriImage.bmp"); 

// Generate AnyBitmap file from SVG file
bitmap = AnyBitmap.FromFile(@"FILE_PATH.svg");
bitmap.SaveAs("result.bmp"); 
using IronSoftware.Drawing;

AnyBitmap bitmap;

// Generate AnyBitmap using filepath
bitmap = AnyBitmap.FromFile(@"FILE_PATH");
bitmap.SaveAs("output.bmp");

// Generate AnyBitmap from bytes
byte [] bytes = File.ReadAllBytes(@"FILE_PATH");
bitmap = AnyBitmap.FromBytes(bytes);
bitmap.SaveAs("result.bmp"); 

// Generate AnyBitmap from memory stream
byte [] bytes = File.ReadAllBytes(@"FILE_PATH");
MemoryStream ms = new MemoryStream(bytes);
bitmap = AnyBitmap.FromStream(ms);
bitmap.SaveAs("output.bmp");  

// Generate AnyBitmap from Uri
Uri uri = new Uri("URI_PATH");
bitmap = AnyBitmap.FromUri(uri);
bitmap.SaveAs("uriImage.bmp"); 

// Generate AnyBitmap file from SVG file
bitmap = AnyBitmap.FromFile(@"FILE_PATH.svg");
bitmap.SaveAs("result.bmp"); 
Imports IronSoftware.Drawing

Private bitmap As AnyBitmap

' Generate AnyBitmap using filepath
bitmap = AnyBitmap.FromFile("FILE_PATH")
bitmap.SaveAs("output.bmp")

' Generate AnyBitmap from bytes
Dim bytes() As Byte = File.ReadAllBytes("FILE_PATH")
bitmap = AnyBitmap.FromBytes(bytes)
bitmap.SaveAs("result.bmp")

' Generate AnyBitmap from memory stream
Dim bytes() As Byte = File.ReadAllBytes("FILE_PATH")
Dim ms As New MemoryStream(bytes)
bitmap = AnyBitmap.FromStream(ms)
bitmap.SaveAs("output.bmp")

' Generate AnyBitmap from Uri
Dim uri As New Uri("URI_PATH")
bitmap = AnyBitmap.FromUri(uri)
bitmap.SaveAs("uriImage.bmp")

' Generate AnyBitmap file from SVG file
bitmap = AnyBitmap.FromFile("FILE_PATH.svg")
bitmap.SaveAs("result.bmp")
VB   C#

IronDrawing utilise plusieurs méthodes pour convertir le fichier d'un chemin en une image bitmap. Vous pouvez voir qu'IronDrawing utilise le flux de mémoire pour convertir le fichier en BMP, ce qui est très utile dans les applications basées sur un serveur. De même, vous pouvez générer des BMP à partir d'un fichier SVG.

.NET MAUI Blazor pour (PDF,EXCEL,OCR,BARCODE,QR Code) - Figure 10 : Fichier BMP

Un fichier Bitmap généré à partir de la bibliothèque open-source IronDrawing

Tarification

Iron Software propose une suite de cinq produits logiciels appelée Iron Suite. Cette suite comprend IronPDF, IronXL, IronOCR, IronWebscraper et IronBarcode, qui sont tous des outils utilisés pour interagir avec les PDF, les feuilles de calcul, les images, le web scraping et les codes-barres respectivement.

Ces produits sont vendus individuellement à partir de $749 par licence, mais Iron Software propose un prix spécial pour l'ensemble de la suite de produits, à partir de $1498. L'offreIron Suite est une solution idéale pour ceux qui doivent travailler avec plusieurs types de fichiers et qui ont besoin d'automatiser le processus de conversion, d'analyse et de manipulation de ces fichiers.

Conclusion

En conclusion, .NET MAUI est un framework permettant de créer des applications mobiles et de bureau multiplateformes. Dans cet article, nous avons abordé plusieurs bibliothèques telles que IronPDF, IronXL, IronBarcode, IronOCR et IronDrawing, qui offrent diverses fonctionnalités permettant de créer et de manipuler des documents PDF, de lire et d'écrire des fichiers Excel, de générer et de scanner des codes-barres, de reconnaître des caractères optiques, ainsi que de dessiner et de manipuler des graphiques.

Parmi ces bibliothèques, IronDrawing se distingue comme un outil puissant permettant aux développeurs de créer et d'éditer des graphiques vectoriels dans leurs applications .NET. Il offre un large éventail de fonctionnalités et est facile à utiliser, ce qui en fait un ajout précieux au Framework .NET MAUI. Dans l'ensemble, la combinaison de .NET MAUI et de ces bibliothèques offre aux développeurs une boîte à outils polyvalente pour créer des applications modernes et riches en fonctionnalités sur une variété de plateformes.

< PRÉCÉDENT
Qu'est-ce que le Framework .NET ?
SUIVANT >
Qu'est-ce que le framework Blazor (Tutoriel sur son fonctionnement pour les développeurs)