convertir JPG en PNG

Le format JPG/JPEG et le format Portable Network Graphics (PNG) sont deux formats d’image raster populaires utilisés sur Internet. Contrairement au format JPEG, qui repose sur la compression DCT, le format PNG utilise la compression LZW, identique à celle utilisée par les formats GIF et TIFF. Le plus grand avantage du format PNG par rapport au format JPEG est que la compression est sans perte, ce qui signifie qu’il n’y a aucune perte de qualité à chaque ouverture et enregistrement. Le format PNG gère également bien les images détaillées et à contraste élevé. Dans cet article, nous allons aborder les étapes à suivre pour convertir des images JPG au format PNG à l’aide de l’API REST .NET.

API de traitement d’images

Aspose.Imaging Cloud est l’un de nos principaux produits pour le traitement des formats d’image. Il vous permet de recadrer, retourner, mettre à l’échelle, faire pivoter, rechercher, convertir et exporter des formats d’image existants vers Formats de fichiers pris en charge. L’architecture REST permet aux développeurs d’implémenter diverses capacités d’imagerie dans leurs solutions basées sur le cloud. Afin de faciliter davantage nos clients, nous avons développé Aspose.Imaging Cloud SDK for .NET sur la base de l’API REST Aspose.Imaging afin que vous puissiez bénéficier de toutes les manipulations d’images avancées dans vos applications C# .NET.

Installation

Pour utiliser le SDK, nous devons d’abord l’installer sur le système. Il est disponible en téléchargement sur NuGet et GitHub. Veuillez exécuter la commande suivante dans le terminal pour installer le SDK via NuGet :

nuget install Aspose.Imaging-Cloud

Ou exécutez la commande suivante dans le gestionnaire de packages NuGet :

PM> Install-Package Aspose.Imaging-Cloud

Approche de Visual Studio

Une autre approche est l’installation directement dans Visual Studio :

  1. Ouvrez l’explorateur de solutions.
  2. Développez le projet et cliquez avec le bouton droit sur le dossier Packages dans votre solution.
  3. Sélectionnez l’option Gérer les packages NuGet…
  4. Cliquez sur l’onglet Parcourir et recherchez « Aspose.Imaging-Cloud ».
  5. Cliquez sur la case à cocher en regard du package Aspose.Imaging-Cloud, sélectionnez la version appropriée dans l’onglet de droite et cliquez sur le bouton Ajouter un package.
Cloud d'imagerie Aspose

Image 1 : Aspose.Imaging-Cloud en tant que package NuGet.

Abonnement Aspose.Cloud

Toutes nos API ne sont accessibles qu’aux personnes autorisées afin de préserver l’intégrité et la confidentialité des données. De plus, les fichiers stockés dans le stockage cloud sont associés au compte souscrit sur tableau de bord Aspose.Cloud. Par conséquent, la première étape consiste à créer un compte d’abonnement gratuit en visitant tableau de bord Aspose.Cloud. Si vous avez un compte GitHub ou Google, inscrivez-vous simplement. Sinon, cliquez sur le bouton Créer un nouveau compte et fournissez les informations requises. Connectez-vous maintenant au tableau de bord à l’aide des informations d’identification et développez la section Applications du tableau de bord et faites défiler vers le bas jusqu’à la section Informations d’identification du client pour voir les détails de l’ID client et du secret client.

Informations d'identification du client

Image 2 : Informations d’identification du client sur le tableau de bord Aspose.Cloud.

Conversion de JPG en PNG en C#

Veuillez suivre les étapes ci-dessous pour effectuer la conversion du format JPG en PNG dans l’application C# .NET.

  • Créez un objet ImagingApi tout en transmettant les détails de l’ID client et du secret client comme arguments
  • Deuxièmement, lisez l’image JPEG à partir du lecteur local et transmettez-la comme argument à l’objet UploadFileRequest
  • Troisièmement, appelez la méthode UploadFile(…) de ImagingApi pour télécharger le fichier vers le stockage Cloud
  • Créez maintenant une instance de la classe ConvertImageRequest qui prend le nom de l’image et le format de sortie résultant comme arguments
  • Appelez ensuite la méthode ConvertImage(…) de la classe ImagingApi pour lancer l’opération de conversion
  • Enfin, enregistrez la sortie du flux sur le lecteur local à l’aide de File.Create (la méthode personnalisée est partagée ci-dessous).
// Obtenez l'ID client à partir de https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// créer une instance de ImagingApi
ImagingApi imagingApi= new ImagingApi( clientSecret,clientID,"https://api.aspose.cloud/");

// chemin de l'image JPEG d'entrée
string imageFile = "jpg-to-png.jpeg";
 
// format du fichier de sortie
string format = "png";
 
// nom du fichier résultant
string resultantFile = "converted.png";

// charger le fichier à partir du lecteur local
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
    var uploadFileRequest = new UploadFileRequest(imageFile, file);

    // Télécharger le document original sur le stockage cloud
    imagingApi.UploadFile(uploadFileRequest);
}

try
{
    // Créer une demande d'image
    var request = new ConvertImageRequest(imageFile, format, null, null);
    
    // lancer l'opération de conversion
    Stream updatedImage = imagingApi.ConvertImage(request);

    // imprimer un message de réussite si la conversion réussit
    if (request != null && request.Equals("OK"))
    {
        Console.WriteLine("JPG successfully converted to PNG !");
        Console.ReadKey();
    }
    
    // appeler la méthode pour enregistrer la sortie sur le lecteur système
    saveToDisk(updatedImage, "/Users/nshahbaz/Desktop/"+resultantFile);
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}  

// méthode personnalisée pour enregistrer l'objet Steam en tant qu'instance de fichier
public static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}

Commande cURL pour la conversion JPEG en PNG

L’architecture REST des API Cloud nous permet d’y accéder même via des terminaux de ligne de commande. Mais en raison de restrictions de sécurité, vous devez d’abord générer un jeton Web JSON (JWT) basé sur les détails ClientID et ClientSecret récupérés à partir du tableau de bord Aspose.Cloud. Veuillez exécuter la commande suivante dans le terminal pour générer le jeton JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Une fois que nous avons le jeton JWT, l’étape suivante consiste à appeler l’API ConvertImage pour effectuer l’opération de conversion JPG en PNG.

curl -X GET "https://api.aspose.cloud/v3.0/imaging/jpg-to-png.jpeg/convert?format=png" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o  converted.png

URL de la demande

https://api.aspose.cloud/v3.0/imaging/jpg-to-png.jpeg/convert?format=png

Conclusion

Nous avons exploré Aspose.Imaging Cloud API pour la conversion d’images JPEG au format PNG. Nous avons appris les processus de conversion de fichiers à l’aide du code C# .NET ainsi que la conversion à l’aide des commandes cURL. Veuillez également noter que le SDK Cloud est distribué sous une licence MIT et que son code source complet est disponible en téléchargement sur GitHub. Si vous rencontrez un problème ou si vous avez des questions lors de l’utilisation de l’API, n’hésitez pas à nous contacter via le Forum d’assistance produit gratuit.

Articles connexes

Nous vous recommandons également de visiter les liens suivants pour en savoir plus sur