Class 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. |
virtual DefaultReplacementFont { get; set; } | Ruft die Standard-Ersatzschriftart ab oder legt sie fest (Schriftart, die zum Zeichnen von Text beim Exportieren in Raster verwendet wird, wenn die vorhandene Layer-Schriftart in der PSD-Datei nicht im System angezeigt wird). Um den richtigen Namen der Standardschriftart zu übernehmen, kann das nächste Code-Snippet verwendet werden : System.Drawing.Text.InstalledFontCollection col = new System.Drawing.Text.InstalledFontCollection(); System.Drawing.FontFamily[] Familie = col.Families; string defaultFontName = Familie[0].Name; PsdLoadOptions psdLoadOptions = new PsdLoadOptions() { DefaultReplacementFont = defaultFontName }); |
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
Das folgende Beispiel zeigt, wie Sie AI-Dateien in das PSD- und PNG-Format in Aspose.PSD exportieren können
[C#]
string sourceFileName = "form_8.ai";
string outputFileName = "form_8_export";
using (AiImage image = (AiImage)Image.Load(sourceFileName))
{
image.Save(outputFileName + ".psd", new PsdOptions());
image.Save(outputFileName + ".png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
}
Dieses Beispiel demonstriert die Verwendung verschiedener Klassen aus dem SaveOptions-Namespace für Exportzwecke. Ein Bild vom Typ Psd wird in eine Instanz von Image geladen und dann in mehrere Formate exportiert.
[C#]
//Ein vorhandenes Bild in eine Instanz der Image-Klasse laden
using (Aspose.PSD.Image image = Aspose.PSD.Image.Load(@"C:\temp\image.psd"))
{
//Export in das BMP-Dateiformat unter Verwendung der Standardoptionen
image.Save(@"C:\temp\output.bmp", new Aspose.PSD.ImageOptions.BmpOptions());
// Mit den Standardoptionen in das JPEG-Dateiformat exportieren
image.Save(@"C:\temp\output.jpeg", new Aspose.PSD.ImageOptions.JpegOptions());
// Mit den Standardoptionen in das Dateiformat JPEG 2000 exportieren
image.Save(@"C:\temp\output.jp2", new Aspose.PSD.ImageOptions.Jpeg2000Options());
// Mit den Standardoptionen in das PNG-Dateiformat exportieren
image.Save(@"C:\temp\output.png", new Aspose.PSD.ImageOptions.PngOptions());
// Mit den Standardoptionen in das TIFF-Dateiformat exportieren
image.Save(@"c:\temp\output.tiff", new Aspose.PSD.ImageOptions.TiffOptions(Aspose.PSD.FileFormats.Tiff.Enums.TiffExpectedFormat.Default));
}
Das folgende Beispiel zeigt, wie Sie den PassThrough-Ebenenmischmodus in Aspose.PSD verwenden können
[C#]
string sourceFileName = "Apple.psd";
string outputFileName = "OutputApple";
using (PsdImage image = (PsdImage)Image.Load(sourceFileName))
{
if (image.Layers.Length < 23)
{
throw new Exception("There is not 23rd layer.");
}
var layer = image.Layers[23] as LayerGroup;
if (layer == null)
{
throw new Exception("The 23rd layer is not a layer group.");
}
if (layer.Name != "AdjustmentGroup")
{
throw new Exception("The 23rd layer name is not 'AdjustmentGroup'.");
}
if (layer.BlendModeKey != BlendMode.PassThrough)
{
throw new Exception("AdjustmentGroup layer should have 'pass through' blend mode.");
}
image.Save(outputFileName + ".psd", new PsdOptions(image));
image.Save(outputFileName + ".png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
layer.BlendModeKey = BlendMode.Normal;
image.Save(outputFileName + "Normal.psd", new PsdOptions(image));
image.Save(outputFileName + "Normal.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
}
Das folgende Beispiel zeigt, dass der Dokumentkonvertierungsfortschritt korrekt und ohne Ausnahme funktioniert.
[C#]
string sourceFilePath = "Apple.psd";
Stream outputStream = new MemoryStream();
Aspose.PSD.ProgressEventHandler localProgressEventHandler = delegate(ProgressEventHandlerInfo progressInfo)
{
string message = string.Format(
"{0} {1}: {2} out of {3}",
progressInfo.Description,
progressInfo.EventType,
progressInfo.Value,
progressInfo.MaxValue);
Console.WriteLine(message);
};
Console.WriteLine("---------- Loading Apple.psd ----------");
var loadOptions = new PsdLoadOptions() { ProgressEventHandler = localProgressEventHandler };
using (PsdImage image = (PsdImage)Image.Load(sourceFilePath, loadOptions))
{
Console.WriteLine("---------- Saving Apple.psd to PNG format ----------");
image.Save(
outputStream,
new PngOptions()
{
ColorType = PngColorType.Truecolor,
ProgressEventHandler = localProgressEventHandler
});
Console.WriteLine("---------- Saving Apple.psd to PSD format ----------");
image.Save(
outputStream,
new PsdOptions()
{
ColorMode = ColorModes.Rgb,
ChannelsCount = 4,
ProgressEventHandler = localProgressEventHandler
});
}
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 Bild im PSD-Format und zeichnet primitive Formen auf der Bildoberfläche mit Draw-Methoden, die von der Graphics-Klasse verfügbar gemacht werden, und exportiert es dann in das PSD-Dateiformat.
[C#]
//Eine Instanz von Image erstellen
using (Aspose.PSD.Image image = new Aspose.PSD.FileFormats.Psd.PsdImage(500, 500))
{
//Eine Instanz der Graphics-Klasse erstellen und initialisieren
Aspose.PSD.Graphics graphics = new Aspose.PSD.Graphics(image);
//Grafikoberfläche löschen
graphics.Clear(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 Pen(Color.Black, 2), new Rectangle(200, 200, 100, 200), 0, 300);
//Zeichnen Sie einen Bezier, indem Sie das Stiftobjekt mit blauer Farbe und Koordinatenpunkten angeben.
graphics.DrawBezier(new Pen(Color.Blue, 2), new Point(250, 100), new Point(300, 30), new Point(450, 100), new Point(235, 25));
//Zeichnen Sie eine Kurve, indem Sie das Stiftobjekt mit grüner Farbe und einem Array von Punkten angeben
graphics.DrawCurve(new Pen(Color.Green, 2), new[] { new Point(100, 200), new Point(100, 350), new Point(200, 450) });
//Zeichne eine Ellipse mit dem Pen-Objekt und einem umgebenden Rectangle
graphics.DrawEllipse(new Pen(Color.Yellow, 2), new Rectangle(300, 300, 100, 100));
//Zeichne eine Linie
graphics.DrawLine(new Pen(Color.Violet, 2), new Point(100, 100), new Point(200, 200));
// Zeichne ein Kreissegment
graphics.DrawPie(new Pen(Color.Silver, 2), new Rectangle(new Point(200, 20), new 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 Pen(Color.Red, 2), new[] { new Point(20, 100), new Point(20, 200), new Point(220, 20) });
//Zeichne ein Rechteck
graphics.DrawRectangle(new Pen(Color.Orange, 2), new Rectangle(new Point(250, 250), new Size(100, 100)));
//Ein SolidBrush-Objekt erstellen und seine verschiedenen Eigenschaften festlegen
Aspose.PSD.Brushes.SolidBrush brush = new Aspose.PSD.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.PSD API", new Font("Times New Roman", 16), brush, new PointF(50, 400));
//Eine Instanz von PngOptions erstellen und ihre verschiedenen Eigenschaften festlegen
Aspose.PSD.ImageOptions.PngOptions pngOptions = new Aspose.PSD.ImageOptions.PngOptions();
// Alle Änderungen speichern.
image.Save("C:\\temp\\output.png", pngOptions);
}
Siehe auch
- class ImageOptionsBase
- namensraum Aspose.PSD.ImageOptions
- Montage Aspose.PSD