Konvertieren Sie JPG in PNG

JPEG und PNG gehören zu den beliebten Rasterbildformaten und sind beliebt für ihre Methoden der verlustbehafteten Komprimierung. Sie haben die Möglichkeit, die Komprimierungsstufe anzupassen, um das gewünschte Qualitätsniveau zu erreichen und gleichzeitig die Speichergröße zu reduzieren. Manchmal akzeptiert Ihr System jedoch nur ein bestimmtes Format, sodass Sie Ihren vorhandenen Bildsatz laden und in der gewünschten Ausgabe speichern müssen. Anstatt herkömmliche Anwendungen mit eingeschränkten Funktionen zu verwenden und Eingabedateien manuell bereitzustellen, sind Programmier-APIs aufgrund ihrer Flexibilität und der Fähigkeit, alle Operationen in einem Batch-Format auszuführen, einen Schritt voraus.

Bildverarbeitungs-API

Aspose.Imaging für .NET ist eine erstaunliche Programmier-API, die die Möglichkeit bietet, unterstützte Dateiformate zu erstellen, zu manipulieren und zu konvertieren. Es funktioniert unabhängig von anderen Grafikanwendungen und erfordert keine Installation eines Bildeditors auf dem Computer. Es kann mit ASP.NET-Webanwendungen oder Windows-Desktopanwendungen verwendet werden. Aspose.Imaging for .NET ist in der Suite Conholdate.Total for .NET gebündelt. Wenn Sie also ein Abonnement für Conholdate.Total for .NET erworben haben, können Sie definitiv alle Bildverarbeitungsvorgänge mit der API Aspose.Imaging for .NET durchführen.

Um die API nutzen zu können, ist der erste Schritt ihre Installation. Sie können einen der Schritte befolgen, um die Installation durchzuführen.

  • Laden Sie DLL-Dateien herunter und referenzieren Sie sie manuell in Ihrem Projekt
  • Öffnen Sie den NuGet-Paketmanager, suchen Sie nach Aspose.Imaging und installieren Sie es.
  • Führen Sie den folgenden Befehl in der NuGet-Paket-Manager-Konsole aus
Install-Package Aspose.Imaging

Konvertieren Sie JPG in PNG in C#

Die API ist robust genug, um das Format des Eingabebilds zu identifizieren, und Sie müssen nur das Quellbild entweder in Form einer Stream-Instanz oder durch Angabe des Pfads zur Datei auf dem lokalen System angeben. In den folgenden Schritten erklären wir, wie Sie ein JPEG-Bild laden und die Ausgabe im PNG-Format speichern.

  1. Zunächst müssen wir eine Instanz des Objekts Aspose.Imaging.License erstellen. Rufen Sie SetLicense(…) auf und geben Sie den Pfad der Datei Conholdate.Total.NET.lic als Argument an
  2. Erstellen Sie zweitens ein Objekt der Klasse Image, das eine Basisklasse aller Bildtypen ist, und übergeben Sie das Ergebnis der Aspose.Imaging.Image.Load(..)-Methode, die den Steam- oder String-Pfad eines Bildes übernimmt Datei zu laden
  3. Erstellen Sie eine Instanz der PngOptions-Klasse
  4. Rufen Sie schließlich die Methode Save(String) der Klasse Image auf und übergeben Sie den Speicherort, an dem Sie die resultierende PNG-Datei speichern möchten
// Erstellen Sie ein Objekt, um die Lizenz zu initiieren
Aspose.Imaging.License license = new Aspose.Imaging.License();

// Geben Sie den Pfad der Lizenzdatei an
license.SetLicense("/Documents/Conholdate.Total.NET.lic");

// Laden Sie ein vorhandenes Bild (vom Typ JPEG) in eine Instanz der Image-Klasse
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load("/Documents/samsung_galaxy.jpg"))
{
  // Erstellen Sie ein Objekt der PngOptions-Klasse
  Aspose.Imaging.ImageOptions.PngOptions options = new Aspose.Imaging.ImageOptions.PngOptions();
  
  // Speichern Sie das resultierende Bild und übergeben Sie PngOptions als Argument
  image.Save(dataDir + "_output.png", options);
}

Die PngOptions-Klasse bietet auch verschiedene Eigenschaften und im folgenden Beispiel haben wir angegeben, dass der Farbtyp des resultierenden Bildes als Graustufen generiert wird. Außerdem wird die Komprimierungsstufe für ein resultierendes Bild mit 4 angegeben. Bitte beachten Sie, dass die CompressionLevel-Eigenschaft Werte zwischen 0 und 9 akzeptiert, wobei 9 die maximale Komprimierung und 0 der Standardwert ist.

// PngOptions-Objekt erstellen
Aspose.Imaging.ImageOptions.PngOptions options = new Aspose.Imaging.ImageOptions.PngOptions();

// Legen Sie den Farbtyp des resultierenden Bildes als GrayScale fest
options.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Grayscale;

// Stellen Sie die Komprimierungsstufe für die resultierende Datei auf 4 ein
options.CompressionLevel = 4;

Die Quelldatei und das resultierende Graustufenbild können über die folgenden Links heruntergeladen werden

JPG-zu-PDF-Konvertierung in C#

Aspose.Imaging für .NET ist ebenfalls in der Lage, JPG-Bilder in PDF (Portable Document Format) zu konvertieren. Während der Konvertierung erhalten Sie auch die Möglichkeit, DocumentInfo sowie PDF/A-Compliance-Details festzulegen. Die folgenden Schritte erläutern das Laden von Rasterbildern und deren Konvertierung in das PDF-Format.

  1. Der erste Schritt besteht darin, eine Instanz der Klasse License zu erstellen.
  2. Rufen Sie zweitens die Methode SetLicense(…) auf und geben Sie den Pfad der Datei Conholdate.Total.NET.lic an. Die Lizenz wird initialisiert, um alle Einschränkungen zu beseitigen, die in der Evaluierungsversion vorhanden sind
  3. Erstellen Sie drittens ein Objekt der Klasse Image, das eine Basisklasse aller Bildtypen ist, und übergeben Sie die Ausgabe der Methode Aspose.Imaging.Image.Load(..).
  4. Erstellen Sie nun eine Instanz der Klasse PdfOptions.
  5. Um PDF-Dokumentinformationen wie Autor, Titel, Betreff usw. festzulegen, erstellen Sie ein Objekt der Klasse PdfDocumentInfo und übergeben Sie seinen Wert an das Objekt PdfDocumentInfo der Klasse PdfOptions.
  6. Um nun die PDF-Datei mit PDF/A-Konformitätsinformationen zu speichern, erstellen Sie bitte eine Instanz der PdfCoreOptions-Klasse und verknüpfen Sie sie mit der PdfCoreOptions-Eigenschaft des PdfOptions-Objekts
  7. Rufen Sie schließlich die Methode Save(String) der Klasse Image auf, um das Ausgabe-PDF-Dokument zu generieren
// Erstellen Sie ein Objekt, um die Lizenz zu initiieren
Aspose.Imaging.License license = new Aspose.Imaging.License();

// Geben Sie den Pfad der Lizenzdatei an
license.SetLicense("/Documents/Conholdate.Total.NET.lic");

// Laden Sie ein vorhandenes Bild (vom Typ JPEG ) in eine Instanz der Image-Klasse
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dataDir+"samsung_galaxy.jpg"))
{
  // Erstellen Sie eine Instanz der PdfOptions-Klasse
  Aspose.Imaging.ImageOptions.PdfOptions pdfOptions = new Aspose.Imaging.ImageOptions.PdfOptions();
  
  // Erstellen Sie ein PdfDocumentInfo-Objekt und übergeben Sie es an die PdfOptions-Instanz
  pdfOptions.PdfDocumentInfo = new Aspose.Imaging.FileFormats.Pdf.PdfDocumentInfo
  {
    // Stellen Sie den Autorennamen für die resultierende Datei ein
    Author = "Nayyer Shahbaz",
    Title = "JPEG converted to PDF",
    Subject = "Aspose.Imaging for .NET"
  };
  
  // Legen Sie die PDF-Konformität als PDF/A-1a fest
  pdfOptions.PdfCoreOptions = new Aspose.Imaging.FileFormats.Pdf.PdfCoreOptions()
  {
    PdfCompliance = Aspose.Imaging.PdfComplianceVersion.PdfA1b
  };
  
  // Speichern Sie das resultierende PDF-Dokument
  image.Save(dataDir + "_output.pdf", pdfOptions);
}

Die im obigen Beispiel verwendeten Beispieldateien können über die folgenden Links heruntergeladen werden

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz anfordern, um die API ohne Evaluierungseinschränkungen zu testen.

Fazit

In diesem Artikel haben wir die verschiedenen Fähigkeiten von Aspose.Imaging for .NET speziell zum Konvertieren von JPG in das PNG-Format sowie deren Wiedergabe in das PDF-Format besprochen. Bitte beachten Sie, dass Aspose.Imaging for .NET im Vergleich zu dem, was oben besprochen wurde, viel leistungsfähiger ist und eine Fülle von Optionen bietet. Es ermöglicht Ihren .NET-Anwendungen das Zeichnen sowie die grundlegende bis fortgeschrittene Verarbeitung von Raster- und Vektorbildern.

Darüber hinaus bietet Aspose.Imaging for .NET robuste Bildkomprimierung und hohe Verarbeitungsgeschwindigkeit durch nativen Byte-Zugriff und eine Reihe effizienter Algorithmen. Es manipuliert, exportiert und konvertiert nicht nur Bilder, sondern ermöglicht auch das dynamische Zeichnen von Objekten mithilfe der Pixelmanipulation und des Grafikpfads. Weitere Informationen finden Sie in der Produkt-Dokumentation und falls Sie bei der Verwendung der API auf ein Problem stoßen, wenden Sie sich bitte über das Produkt-Support-Forum an uns.

Siehe auch