Joint Photographic Experts Group (JPG/JPEG) og Portable Network Graphics (PNG) er to populære rasterbilledformater, der bruges over internettet. I modsætning til JPEG, som er afhængig af DCT-komprimering, bruger PNG LZW-komprimering, som er den samme som bruges af GIF- og TIFF-formater. Den største fordel ved PNG frem for JPEG er, at komprimeringen er tabsfri, hvilket betyder, at der ikke er noget tab i kvalitet, hver gang den åbnes og gemmes igen. PNG håndterer også detaljerede billeder med høj kontrast godt. I denne artikel vil vi diskutere trinene til, hvordan man konverterer JPG-billeder til PNG-format ved hjælp af .NET REST API.
Billedbehandling API
Aspose.Imaging Cloud er et af vores førende produkter til billedformatbehandling. Det giver dig mulighed for at beskære, spejlvende, skalere, rotere, søge, konvertere og eksportere eksisterende billedformater til Understøttede filformater. REST-arkitekturen gør det muligt for udviklerne at implementere forskellige billedbehandlingsfunktioner i deres cloud-baserede løsninger. For yderligere at lette vores kunder har vi udviklet Aspose.Imaging Cloud SDK til .NET oven på Aspose.Imaging REST API, så du får al avanceret billedmanipulation i dine C# .NET applikationer.
Installation
For at bruge SDK’et skal vi først installere det over systemet. Den er tilgængelig til download via NuGet og GitHub. Udfør venligst følgende kommando i terminalen for at installere SDK’et via NuGet:
nuget install Aspose.Imaging-Cloud
Eller udfør følgende kommando i NuGet Package Manager:
PM> Install-Package Aspose.Imaging-Cloud
Visual Studio tilgang
En anden tilgang er installationen direkte i Visual Studio:
- Åbn Solution Explorer.
- Udvid projektet og højreklik på mappen Pakker i din løsning.
- Vælg Administrer NuGet-pakker… mulighed
- Klik på fanen Gennemse og søg efter “Aspose.Imaging-Cloud”.
- Klik på afkrydsningsfeltet ud for Aspose.Imaging-Cloud-pakken, vælg den relevante version i højre fane, og klik på knappen Tilføj pakke.
Aspose.Cloud abonnement
Alle vores API’er er kun tilgængelige for autoriserede personer, så dataintegriteten og privatlivets fred bevares. Ydermere er filerne, der er gemt i skylageret, knyttet til den konto, der abonneres på via Aspose.Cloud dashboard. Derfor er det første skridt at oprette en gratis abonnementskonto ved at besøge Aspose.Cloud dashboard. Hvis du har GitHub eller Google-konto, skal du blot tilmelde dig. Ellers skal du klikke på knappen Opret en ny konto og angive de nødvendige oplysninger. Log nu ind på dashboardet ved hjælp af legitimationsoplysninger og udvid applikationssektionen fra dashboardet, og rul ned mod sektionen Klientlegitimationsoplysninger for at se Client ID og Client Secret detaljer.
JPG til PNG i C#
Følg trinene nedenfor for at udføre JPG-formatkonverteringen til PNG i C# .NET-applikationen.
- Opret ImagingApi-objekt, mens du sender Client ID og Client Secret detaljer som argumenter
- For det andet skal du læse JPEG-billedet fra det lokale drev og sende det som et argument til UploadFileRequest-objektet
- For det tredje skal du kalde UploadFile(…)-metoden for ImagingApi for at uploade filen til skylageret
- Opret nu en forekomst af ConvertImageRequest-klassen, som tager billednavn og resulterende outputformat som argumenter
- Kald derefter ConvertImage(…)-metoden for ImagingApi-klassen for at starte konverteringsoperationen
- Gem endelig output fra stream til lokalt drev ved hjælp af File.Create (den brugerdefinerede metode er delt nedenfor).
// Få ClientID fra https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// oprette en instans af ImagingApi
ImagingApi imagingApi= new ImagingApi( clientSecret,clientID,"https://api.aspose.cloud/");
// stien til input JPEG-billede
string imageFile = "jpg-to-png.jpeg";
// output filformat
string format = "png";
// resulterende filnavn
string resultantFile = "converted.png";
// indlæse filen fra det lokale drev
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var uploadFileRequest = new UploadFileRequest(imageFile, file);
// Upload originalt dokument til Cloud Storage
imagingApi.UploadFile(uploadFileRequest);
}
try
{
// Opret ImageRequest
var request = new ConvertImageRequest(imageFile, format, null, null);
// starte konverteringen
Stream updatedImage = imagingApi.ConvertImage(request);
// udskriv succesmeddelelse, hvis konverteringen er vellykket
if (request != null && request.Equals("OK"))
{
Console.WriteLine("JPG successfully converted to PNG !");
Console.ReadKey();
}
// kald metoden for at gemme output over systemdrev
saveToDisk(updatedImage, "/Users/nshahbaz/Desktop/"+resultantFile);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// brugerdefineret metode til at gemme steam-objekt som filforekomst
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
cURL kommando til JPEG til PNG konvertering
REST-arkitekturen i Cloud API’er gør det muligt for os at få adgang til dem selv gennem kommandolinjeterminaler. Men på grund af sikkerhedsbegrænsninger skal du først generere et JSON Web Token (JWT) baseret på ClientID og ClientSecret detaljer hentet fra Aspose.Cloud dashboard. Udfør venligst følgende kommando i terminalen for at generere JWT-tokenet.
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"
Når vi har JWT-tokenet, er næste trin at kalde ConvertImage API for at udføre JPG til PNG-konverteringsoperationen.
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
Anmod om URL
https://api.aspose.cloud/v3.0/imaging/jpg-to-png.jpeg/convert?format=png
Konklusion
Vi har udforsket Aspose.Imaging Cloud API til konvertering af JPEG-billeder til PNG-format. Vi har lært processerne til at konvertere filer ved hjælp af C# .NET kode samt konverteringen ved hjælp af cURL kommandoerne. Bemærk også, at Cloud SDK distribueres under en MIT-licens, og dens komplette kildekode er tilgængelig til download via GitHub. Hvis du støder på problemer eller har spørgsmål, mens du bruger API’en, er du velkommen til at kontakte via Free product support forum.
Relaterede artikler
Vi anbefaler også, at du besøger følgende links for at lære mere om