Aspose.PSD für .NET 18.10 - Versionshinweise
Contents
[
Hide
]
Schlüssel | Zusammenfassung | Kategorie |
---|---|---|
PSDNET-14 | Hinzufügen der Unterstützung für Mischmodi neben Normal | Funktion |
PSDNET-69 | Hinzufügen der Unterstützung für den Farbüberlagerungseffekt | Funktion |
PSDNET-70 | Hinzufügen der Unterstützung für den Schlagschatten-Effekt | Funktion |
PSDNET-71 | Rendering für den Export des Farbüberlagerungseffekts | Funktion |
PSDNET-72 | Rendering für den Export des Schlagschatten-Effekts | Funktion |
PSDNET-74 | Unterstützung für das Hinzufügen von Ebeneneffekten zur Laufzeit | Funktion |
PSDNET-73 | Optimierung der Ladeleistung von Ressourcen, die osType-Strukturen enthalten | Fehler |
PSDNET-79 | Refactoring und Behebung von Speicherlecks in LayerAndMaskInfo | Verbesserung |
Beispiele zur Verwendung:
PSDNET-14 Hinzufügen der Unterstützung für Mischmodi neben Normal
var files = new string[]
{
"Normal",
"Dissolve",
"Darken",
"Multiply",
"ColorBurn",
"LinearBurn",
"DarkerColor",
"Lighten",
"Screen",
"ColorDodge",
"LinearDodgeAdd",
"LightenColor",
"Overlay",
"SoftLight",
"HardLight",
"VividLight",
"LinearLight",
"PinLight",
"HardMix",
"Difference",
"Exclusion",
"Subtract",
"Divide",
"Hue",
"Saturation",
"Color",
"Luminosity",
};
foreach (var fileName in files)
{
using (var im = LoadFile(fileName + ".psd"))
{
// Export nach PNG
var saveOptions = new PngOptions();
saveOptions.ColorType = PngColorType.TruecolorWithAlpha;
var pngExportPath100 = "BlendMode" + fileName + "_Test100.png";
im.Save(pngExportPath100, saveOptions);
// Deckkraft auf 50% setzen
im.Layers[1].Opacity = 127;
var pngExportPath50 = "BlendMode" + fileName + "_Test50.png";
im.Save(pngExportPath50, saveOptions);
}
}
PSDNET-69 Hinzufügen der Unterstützung für den Farbüberlagerungseffekt
// Farbüberlagerungseffekt bearbeiten
string sourceFileName = "ColorOverlay.psd";
string psdPathAfterChange = "ColorOverlayChanged.psd";
using (var im = LoadFile(sourceFileName))
{
var colorOverlay = (Farbüberlagerung)(im.Layers[1].BlendingOptions.Effects[0]);
Assert.AreEqual(Color.Red, colorOverlay.Farbe);
Assert.AreEqual(153, colorOverlay.Deckkraft);
colorOverlay.Farbe = Color.Green;
colorOverlay.Deckkraft = 128;
im.Save(psdPathAfterChange);
}
PSDNET-70 Hinzufügen der Unterstützung für den Schlagschatten-Effekt
// Schlagschatten-Effekt bearbeiten
string sourceFileName = "Shadow.psd";
string psdPathAfterChange = "ShadowChanged.psd";
using (var im = LoadFile(sourceFileName))
{
var schattenEffekt = (SchlagschattenEffekt)(im.Layers[1].BlendingOptions.Effects[0]);
Assert.AreEqual(Color.Schwarz, shadowEffect.Color);
Assert.AreEqual(255, shadowEffect.Deckkraft);
Assert.AreEqual(3, schattenEffekt.Entfernung);
Assert.AreEqual(7, schattenEffekt.Größe);
Assert.AreEqual(true, schattenEffekt.GlobalLightVerwenden);
Assert.AreEqual(90, schattenEffekt.Winkel);
Assert.AreEqual(0, schattenEffekt.Ausbreitung);
Assert.AreEqual(0, schattenEffekt.Rauschen);
shadowEffect.Color = Color.Grün;
shadowEffect.Deckkraft = 128;
shadowEffect.Entfernung = 11;
shadowEffect.GlobalLightVerwenden = false;
shadowEffect.Größe = 9;
shadowEffect.Winkel = 45;
shadowEffect.Ausbreitung = 3;
shadowEffect.Rauschen = 50;
im.Save(psdPathAfterChange);
}
PSDNET-71 Rendering für Export des Farbüberlagerungseffekts
// Farbüberlagerungseffekt bearbeiten
string sourceFileName = "ColorOverlay.psd";
string pngExportPath = "ColorOverlay.png";
using (var im = LoadFile(sourceFileName))
{
var colorOverlay = (Farbüberlagerungseffekt)(im.Layers[1].BlendingOptions.Effects[0]);
Assert.AreEqual(Color.Red, colorOverlay.Farbe);
Assert.AreEqual(153, colorOverlay.Deckkraft);
// PNG speichern
var saveOptions = new PngOptions();
saveOptions.ColorType = PngColorType.TruecolorWithAlpha;
im.Save(pngExportPath, saveOptions);
}
PSDNET-72 Rendering für Export des Schlagschatten-Effekts
// Schlagschatten exportieren
string sourceFileName = "Shadow.psd";
string pngExportPath = "Shadow.png";
using (var im = LoadFile(sourceFileName))
{
var shadowEffect = (SchlagschattenEffekt)(im.Layers[1].BlendingOptions.Effects[0]);
Assert.AreEqual(Color.Schwarz, shadowEffect.Color);
Assert.AreEqual(255, shadowEffect.Deckkraft);
Assert.AreEqual(3, shadowEffect.Entfernung);
Assert.AreEqual(7, shadowEffect.Größe);
Assert.AreEqual(true, shadowEffect.GlobalLightVerwenden);
Assert.AreEqual(90, shadowEffect.Winkel);
Assert.AreEqual(0, shadowEffect.Ausbreitung);
Assert.AreEqual(0, shadowEffect.Rauschen);
// PNG speichern
var saveOptions = new PngOptions();
saveOptions.ColorType = PngColorType.TruecolorWithAlpha;
im.Save(pngExportPath, saveOptions);
}
PSDNET-74 Unterstützung für das Hinzufügen von Ebeneneffekten zur Laufzeit
// Hinzufügen von Farbüberlagerungseffekt zur Laufzeit
string sourceFileName = "ThreeRegularLayersWithLayerEffect.psd";
string psdExportPath = "ThreeRegularLayersWithLayerEffectChanged.psd";
string pngExportPath = "ThreeRegularLayersWithLayerEffectChanged.psd";
var loadOptions = new PsdLoadOptions()
{
LoadEffectsResource = true
};
var testFolder = String.Empty;
var im = (PsdImage)Image.Load(testPath, loadOptions)
using (im)
{
var effect = im.Layers[1].BlendingOptions.AddColorOverlay();
effect.Deckkraft = 128;
effect.Farbe = Color.Grün;
effect.Mischmodus = Normal;
var effect = im.Layers[1].BlendingOptions.AddDropShadow();
effect.Farbe = Color.Rot;
effect.Deckkraft = 128;
effect.Mischmodus = Normal;
// PSD speichern
im.Save(psdExportPath);
// PNG speichern
var saveOptions = new PngOptions();
im.Save(pngExportPath, saveOptions);
}