SVG naar PNG

SVG naar PNG online converteren | SVG naar PNG opslaan

Scalable Vector Graphics (SVG) definieert vectorgebaseerde graphics voor het web. SVG is een XML-gebaseerd vectorafbeeldingsformaat voor tweedimensionale graphics met ondersteuning voor interactiviteit en animatie. Dit formaat is populair voor het renderen van tweedimensionale afbeeldingen op internet, waar afbeeldingen kunnen worden geschaald naar elke gewenste grootte. Maar als we SVG moeten converteren naar PNG voor verliesloze compressie, waarbij geen detail en kwaliteit verloren gaat, dan is Aspose.Imaging Cloud een haalbare oplossing.

Dit artikel biedt gedetailleerde informatie over het online converteren van SVG naar PNG.

API voor beeldconversie

Aspose.Imaging Cloud is onze programmeeroplossing voor beeldverwerkingsvereisten. U kunt bewerkingen uitvoeren zoals het formaat wijzigen, bijsnijden, roteren, schalen, omdraaien, zoeken en afbeeldingen exporteren naar verschillende ondersteunde formaten. Om onze gebruikers verder te faciliteren, hebben we programmeertaalspecifieke SDK’s gemaakt en volgens de reikwijdte van dit artikel gaan we Aspose.Imaging Cloud SDK voor .NET gebruiken. Bezoek nu de volgende link voor meer informatie over Hoe Aspose.Cloud SDK’s te installeren.

SVG naar PNG converteren in C#

Volg de onderstaande instructies om een SVG-afbeelding die al beschikbaar is in de cloudopslag, te converteren naar PNG-formaat.

  • De eerste stap is het maken van een instantie van ImagingApi, waarbij u de ClientID- en ClientSecret-gegevens als argumenten doorgeeft.
  • Upload ten tweede de SVG-afbeelding naar cloudopslag met behulp van de UploadFile(..)-methode van ImagingApi.
  • Ten derde maakt u een instantie van de klasse ConvertImageRequest, waarbij u de naam van de invoer-SVG en het resulterende formaat als argumenten doorgeeft.
  • Roep nu de ConvertImage(..) methode aan om de conversiebewerking uit te voeren. De resulterende PNG wordt geretourneerd als een Stream-instantie.
  • Roep ten slotte de aangepaste methode aan met behulp van File.Create om het Stream-exemplaar op te slaan als een bestand op een lokale schijf.
// Voor complete voorbeelden, bezoek https://github.com/aspose-imaging-cloud/aspose-imaging-cloud-dotnet
// Haal clientreferenties op via https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// maak een object van DiagramApi
ImagingApi imagingApi = new ImagingApi(clientSecret,clientID, "https://api.aspose.cloud/");

// naam van invoer SVG-bestand
String inputFileName = "trashloader2.svg";
// resulterend bestandsformaat
String newFormat = "png";
// naam van het uitvoerbestand
String newFileName = "Converted.png";

try
{
    // laad het bestand van de lokale schijf
    using (var inputStream = System.IO.File.OpenRead(@"C:\Users\shahbnay\Downloads\" + inputFileName))
    {
        // bestand upload verzoek aanmaken    
        UploadFileRequest request = new UploadFileRequest(inputFileName, inputStream);
        // bestand uploaden naar standaard cloudopslag
        imagingApi.UploadFile(request);
                
        // maak een instantie voor Image Conversion
        var response = new ConvertImageRequest(inputFileName,newFormat);
        // start de beeldconversiebewerking
        var responseStream = imagingApi.ConvertImage(response);
                
        // sla het stream-exemplaar op als bestand op de lokale opslag
        saveToDisk(responseStream, @"C:\Users\shahbnay\Downloads\" + newFileName);
    }
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
        
static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}

Ter referentie kunnen de voorbeeldafbeeldingen die in bovenstaand voorbeeld zijn gebruikt, worden gedownload van trashloader2.svg en Converted.png.

SVG naar PNG conversie voorbeeld

Afbeelding 1: - Voorbeeld van SVG naar PNG-conversie.

SVG naar PNG met behulp van cURL-opdrachten

In deze sectie gaan we de conversie van SVG naar PNG uitvoeren met behulp van cURL-opdrachten. De eerste stap is het genereren van een JWT-toegangstoken op basis van clientreferenties. Voer de volgende opdracht uit om er een te genereren:

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"

Voer nu de volgende cURL-opdracht uit om SVG naar PNG te converteren. Het resultaat wordt als een responsstroom geretourneerd en kan op een lokale schijf worden opgeslagen.

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

Als u een SVG-afbeelding wilt converteren die is doorgegeven als multipart/form-data-inhoud met nulindex of als onbewerkte bodystream.

curl -X POST "https://api.aspose.cloud/v3.0/imaging/convert?format=png" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"imageData":{}} \
-o Converted.png

Conclusie

We hebben de mogelijkheden voor beeldconversie van Aspose.Imaging Cloud API besproken. De specifieke focus lag op de conversie van SVG naar PNG met behulp van C# .NET-codefragmenten. Tegelijkertijd hebben we de details besproken over hoe u SVG naar PNG kunt opslaan via cURL-opdrachten. Houd er rekening mee dat de API ook toegankelijk is via de Swagger-interface en dat u de API in de webbrowser kunt testen. De Cloud SDK’s worden echter ontwikkeld onder een MIT-licentie, dus een volledige broncode kan worden gedownload van GitHub.

Mocht u problemen ondervinden bij het gebruik van de API of heeft u vragen hierover, neem dan gerust contact met ons op via het gratis productondersteuningsforum.

Voor meer informatie raden wij u aan de volgende links te bezoeken: