PngOptions
PngOptions class
Optionen zum Erstellen des PNG-Dateiformats.
public class PngOptions : ImageOptionsBase
Konstrukteure
Name | Beschreibung |
---|---|
PngOptions() | Initialisiert eine neue Instanz vonPngOptions Klasse. |
PngOptions(PngOptions) | Initialisiert eine neue Instanz vonPngOptions Klasse. |
Eigenschaften
Name | Beschreibung |
---|---|
BitDepth { get; set; } | Die Bittiefe. |
BufferSizeHint { get; set; } | Ruft den Puffergrößenhinweis ab oder legt ihn fest, der als maximal zulässige Größe für alle internen Puffer definiert ist. |
ColorType { get; set; } | Ruft den Typ der Farbe ab oder legt ihn fest. |
CompressionLevel { get; set; } | Die PNG-Bildkomprimierungsstufe im Bereich von 0 bis 9, wobei 9 die maximale Komprimierung und 0 der Speichermodus ist. |
Disposed { get; } | Ruft einen Wert ab, der angibt, ob diese Instanz verworfen wird. |
FilterType { get; set; } | Ruft den beim Speichern der PNG-Datei verwendeten Filtertyp ab oder legt ihn fest. |
FullFrame { get; set; } | Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob [Vollbild]. |
MultiPageOptions { get; set; } | Die mehrseitigen Optionen |
virtual Palette { get; set; } | Ruft die Farbpalette ab oder legt sie fest. |
ProgressEventHandler { get; set; } | Ruft den Fortschrittsereignishandler ab oder legt ihn fest. |
Progressive { get; set; } | Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob dies der Fall istPngOptions ist progressiv. |
virtual ResolutionSettings { get; set; } | Ruft die Auflösungseinstellungen ab oder legt sie fest. |
Source { get; set; } | Ruft die Quelle zum Erstellen des Bildes ab oder legt sie fest. |
VectorRasterizationOptions { get; set; } | Ruft die Optionen für die Vektorrasterung ab oder legt sie fest. |
override XmpData { get; set; } | Ruft den XMP-Metadatencontainer ab oder legt ihn fest. |
Methoden
Name | Beschreibung |
---|---|
virtual Clone() | Klont diese Instanz. |
Dispose() | Verwirft die aktuelle Instanz. |
Felder
Name | Beschreibung |
---|---|
const DefaultCompressionLevel | Die Standardkomprimierungsstufe. |
Beispiele
Dieses Beispiel demonstriert die Verwendung verschiedener Klassen aus dem SaveOptions-Namespace für Exportzwecke. Ein Bild vom Typ Gif wird in eine Instanz von Image geladen und dann in mehrere Formate exportiert.
[C#]
string dir = "c:\\temp\\";
//Ein vorhandenes Bild (vom Typ Gif) in eine Instanz der Image-Klasse laden
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
{
//Export in das BMP-Dateiformat unter Verwendung der Standardoptionen
image.Save(dir + "output.bmp", new Aspose.Imaging.ImageOptions.BmpOptions());
// Mit den Standardoptionen in das JPEG-Dateiformat exportieren
image.Save(dir + "output.jpg", new Aspose.Imaging.ImageOptions.JpegOptions());
// Mit den Standardoptionen in das PNG-Dateiformat exportieren
image.Save(dir + "output.png", new Aspose.Imaging.ImageOptions.PngOptions());
// Mit den Standardoptionen in das TIFF-Dateiformat exportieren
image.Save(dir + "output.tif", new Aspose.Imaging.ImageOptions.TiffOptions(Aspose.Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default));
}
Das folgende Beispiel zeigt, wie ein mehrseitiges Vektorbild auf allgemeine Weise in das PNG-Format konvertiert wird, ohne auf einen bestimmten Bildtyp zu verweisen.
[C#]
string dir = "C:\\aspose.imaging\\net\\misc\\ImagingReleaseQATester\\Tests\\testdata\\2548";
string inputFilePath = System.IO.Path.Combine(dir, "Multipage.cdr");
string outputFilePath = System.IO.Path.Combine(dir, "Multipage.cdr.png");
Aspose.Imaging.ImageOptionsBase exportOptions = new Aspose.Imaging.ImageOptions.PngOptions();
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFilePath))
{
exportOptions.MultiPageOptions = null;
// Nur die ersten beiden Seiten exportieren. Tatsächlich wird nur eine Seite gerastert, da PNG kein mehrseitiges Format ist.
Aspose.Imaging.IMultipageImage multipageImage = image as Aspose.Imaging.IMultipageImage;
if (multipageImage != null && (multipageImage.Pages != null && multipageImage.PageCount > 2))
{
exportOptions.MultiPageOptions = new Aspose.Imaging.ImageOptions.MultiPageOptions(new Aspose.Imaging.IntRange(0, 2));
}
if (image is Aspose.Imaging.VectorImage)
{
exportOptions.VectorRasterizationOptions = (Aspose.Imaging.ImageOptions.VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Aspose.Imaging.Color.White, image.Width, image.Height });
exportOptions.VectorRasterizationOptions.TextRenderingHint = Aspose.Imaging.TextRenderingHint.SingleBitPerPixel;
exportOptions.VectorRasterizationOptions.SmoothingMode = Aspose.Imaging.SmoothingMode.None;
}
image.Save(outputFilePath, exportOptions);
}
Dieses Beispiel verwendet die Graphics-Klasse, um primitive Formen auf der Image-Oberfläche zu erstellen. Um den Vorgang zu demonstrieren, erstellt das Beispiel ein neues Image im PNG-Format und zeichnet primitive Formen auf der Image-Oberfläche unter Verwendung von Draw-Methoden, die von der Graphics-Klasse verfügbar gemacht werden
[C#]
//Erzeugt eine Instanz von FileStream
using (System.IO.FileStream stream = new System.IO.FileStream(@"C:\temp\output.png", System.IO.FileMode.Create))
{
//Eine Instanz von PngOptions erstellen und ihre verschiedenen Eigenschaften festlegen
Aspose.Imaging.ImageOptions.PngOptions pngOptions = new Aspose.Imaging.ImageOptions.PngOptions();
//Setzen Sie die Quelle für PngOptions
pngOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream);
//Eine Instanz von Image erstellen
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(pngOptions, 500, 500))
{
//Eine Instanz der Graphics-Klasse erstellen und initialisieren
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(image);
//Grafikoberfläche löschen
graphics.Clear(Aspose.Imaging.Color.Wheat);
//Zeichnen Sie einen Bogen, indem Sie das Stiftobjekt mit schwarzer Farbe angeben,
//ein Rechteck, das den Bogen, den Startwinkel und den Sweep-Winkel umgibt
graphics.DrawArc(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Black, 2), new Aspose.Imaging.Rectangle(200, 200, 100, 200), 0, 300);
//Zeichnen Sie einen Bezier, indem Sie das Stiftobjekt mit blauer Farbe und Koordinatenpunkten angeben.
graphics.DrawBezier(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Blue, 2), new Aspose.Imaging.Point(250, 100), new Aspose.Imaging.Point(300, 30), new Aspose.Imaging.Point(450, 100), new Aspose.Imaging.Point(235, 25));
//Zeichnen Sie eine Kurve, indem Sie das Stiftobjekt mit grüner Farbe und einem Array von Punkten angeben
graphics.DrawCurve(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Green, 2), new[] { new Aspose.Imaging.Point(100, 200), new Aspose.Imaging.Point(100, 350), new Aspose.Imaging.Point(200, 450) });
//Zeichne eine Ellipse mit dem Pen-Objekt und einem umgebenden Rectangle
graphics.DrawEllipse(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Yellow, 2), new Aspose.Imaging.Rectangle(300, 300, 100, 100));
//Zeichne eine Linie
graphics.DrawLine(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Violet, 2), new Aspose.Imaging.Point(100, 100), new Aspose.Imaging.Point(200, 200));
// Zeichne ein Kreissegment
graphics.DrawPie(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Silver, 2), new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(200, 20), new Aspose.Imaging.Size(200, 200)), 0, 45);
//Zeichnen Sie ein Polygon, indem Sie das Stiftobjekt mit roter Farbe und einem Array von Punkten angeben
graphics.DrawPolygon(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Red, 2), new[] { new Aspose.Imaging.Point(20, 100), new Aspose.Imaging.Point(20, 200), new Aspose.Imaging.Point(220, 20) });
//Zeichne ein Rechteck
graphics.DrawRectangle(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Orange, 2), new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(250, 250), new Aspose.Imaging.Size(100, 100)));
//Ein SolidBrush-Objekt erstellen und seine verschiedenen Eigenschaften festlegen
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush();
brush.Color = Color.Purple;
brush.Opacity = 100;
//Zeichne einen String mit dem SolidBrush-Objekt und der Schriftart an einem bestimmten Punkt
graphics.DrawString("This image is created by Aspose.Imaging API", new Aspose.Imaging.Font("Times New Roman", 16), brush, new Aspose.Imaging.PointF(50, 400));
// Alle Änderungen speichern.
image.Save();
}
}
Siehe auch
- class ImageOptionsBase
- namensraum Aspose.Imaging.ImageOptions
- Montage Aspose.Imaging