Aspose.PSD pro .NET 20.2 - Poznámky k vydání
Contents
[
Hide
]
Tato stránka obsahuje poznámky k vydání pro Aspose.PSD pro .NET 20.2
Klíč | Souhrn | Kategorie |
---|---|---|
PSDNET-206 | Zlepšení možnosti zobrazování textu různých barev ve vrstvě textu | Funkce |
PSDNET-369 | Podpora clbl prostředků (Vrstvový prostředek obsahuje informace o prvcích oříznutí míchání) | Funkce |
PSDNET-274 | Podpora blwh prostředku (Prostředek obsahuje data o vrstvě úpravy černobílé) | Funkce |
PSDNET-230 | Schopnost exportovat skupinu vrstev do formátů Jpeg/Png/Tiff/Gif/Bmp/Jpeg2000/Psd/Psb/Pdf | Funkce |
PSDNET-372 | Podpora lspf Prostředku (Obsahuje nastavení ochrany vrstvy) | Funkce |
PSDNET-370 | Podpora infx prostředku (Obsahuje data o míchání vnitřních prvků) | Funkce |
PSDNET-251 | Refaktoring tříd PsdImage a Layer pro změnu chování transformace (Správné změny velikosti/otočení/řezání pro vrstvy masky, pokud transformujeme pouze jednu vrstvu samostatně) | Vylepšení |
PSDNET-276 | V některých nastaveních globalizace nemůže být otevřen obraz rastrového obrázku AI | Chyba |
PSDNET-194 | Po provedení operace FlipRotate na vrstvě se stane obrázek PSD nepřečitelný | Chyba |
PSDNET-177. | System.ArgumentException během načítání souboru PSD | Chyba |
PSDNET-249 | Po použití metody transformace pouze u vrstvy má uložená vrstva nesprávné hranice nebo masku | Chyba |
Veřejné změny API
Přidaná API:
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerMaskDataFull.UserMaskRectangle
- M:Aspose.PSD.FileFormats.Ai.AiDataSection.ReleaseManagedResources
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerGroup.Šířka
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerGroup.Výška
- T:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.Rods
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.Yellows
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.Greens
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.Cyan
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.Blue
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.Magenta
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.PoužitíTint
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.BwPresetKind
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.BlackAndWhitePresetFileName
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.TintColor
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.TintColorRed
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.TintColorGreen
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.BlackWhiteAdjustmentLayer.TintColorBlue
- T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.#ctor
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Uložit(Aspose.PSD.StreamContainer,System.Int32)
- F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.TypeToolKey
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Key
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Délka
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.PsdVerze
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Červená
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Žlutá
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Zelená
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Kyan
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Modrá
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.Fialová
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.PoužitíTint
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.BwPresetKind
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.BlackAndWhitePresetFileName
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.BlwhResource.TintColor
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.Lr16Resource.#ctor
- P:Aspose.PSD.Xmp.Types.Derived.RenditionClass.DefinovanéHodnoty
- T:Aspose.PSD.AggregateException
- M:Aspose.PSD.CmykBarva.Equals(System.Object)
- T:Aspose.PSD.CompositeException
- T:Aspose.PSD.CoreExceptions.IndexOutOFRangeException
- M:Aspose.PSD.CoreExceptions.IndexOutOFRangeException.#ctor(System.String)
- M:Aspose.PSD.CoreExceptions.IndexOutOFRangeException.#ctor(System.String,System.Exception)
- F:Aspose.PSD.FileFormat.Otg
- T:Aspose.PSD.FileFormats.Jpeg2000.Jpeg2000CustomException
- T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.#ctor(System.Int32)
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.#ctor(System.Byte[])
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.Key
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.Délka
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.PsdVerze
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.JeDataUkládánaDiskrétně
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.ZískatÚdajeKanálu(System.Int32)
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.GetActiveManager
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.Uložit(Aspose.PSD.StreamContainer,System.Int32)
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.GetCurveManager
- F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.CurvResource.TypeToolKey
- T:Aspose.PSD.ImageOptions.TiffOptionsUtils
- M:Aspose.PSD.ImageOptions.TiffOptionsUtils.#ctor
- M:Aspose.PSD.ImageOptions.TiffOptionsUtils.GetValidTagsCount(Aspose.PSD.FileFormats.Tiff.TiffDataType[])
- P:Aspose.PSD.ImageOptionsBase.PokrokEventHandler
- P:Aspose.PSD.LoadOptions.PokrokEventHandler
- M:Aspose.PSD.Matrix.#ctor(Aspose.PSD.Matrix)
- M:Aspose.PSD.Metered.Equals(System.Object)
- T:Aspose.PSD.PokrokEventHandler
- T:Aspose.PSD.ProgressManagement.Typudálosti
- F:Aspose.PSD.ProgressManagement.Typudálosti.RelativníPokrok
- F:Aspose.PSD.ProgressManagement.Typudálosti.Změnapodmínek
- F:Aspose.PSD.ProgressManagement.Typudálosti.Inicializace
- F:Aspose.PSD.ProgressManagement.Typudálosti.Předzpracování
- F:Aspose.PSD.ProgressManagement.Typudálosti.Zpracování
- F:Aspose.PSD.ProgressManagement.Typudálosti.Závěr
- T:Aspose.PSD.ProgressManagement.PokrokEventHandlerInfo
- P:Aspose.PSD.ProgressManagement.PokrokEventHandlerInfo.Popis
- P:Aspose.PSD.ProgressManagement.PokrokEventHandlerInfo.TypUdálosti
- P:Aspose.PSD.ProgressManagement.PokrokEventHandlerInfo.MaxHodnota
- P:Aspose.PSD.ProgressManagement.PokrokEventHandlerInfo.Hodnota
- M:Aspose.PSD.RasterImage.getZákladníÚhel
- M:Aspose.PSD.RasterImage.NormalizeAngle
- M:Aspose.PSD.RasterImage.NormalizeAngle(System.Boolean,Aspose.PSD.Barva)
Odstraněné API:
- M:Aspose.PSD.FileFormats.Ai.AiDataSection.Dispose
- P:Aspose.PSD.FileFormats.Ai.AiRasterImageSection.ImageRectangle
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.Lr16Resource.#ctor(System.Int32)
- F:Aspose.PSD.Xmp.Types.Derived.RenditionClass.DefinovanéHodnoty
Příklady použití:
PSDNET-206. Zlepšení možnosti zobrazování textu různých barev ve vrstvě textu
using (var psdImage = (PsdImage)Image.Load("text_ethalon_different_colors.psd"))
{
var txtLayer = (TextLayer)psdImage.Layers[1];
txtLayer.TextData.UpdateLayerData();
psdImage.Save("output.png", new PngOptions());
}
PSDNET-369. Podpora clbl prostředků (Vrstvový prostředek obsahuje informace o prvcích oříznutí míchání)
void AssertIsTrue(bool condition, string message)
{
if (!condition)
{
throw new FormatException(message);
}
}
string sourceFileName = "SampleForResource.psd";
string destinationFileName = "Output" + sourceFileName;
ClblResource GetClblResource(PsdImage im)
{
foreach (var layer in im.Layers)
{
foreach (var layerResource in layer.Resources)
{
if (layerResource is ClblResource)
{
return (ClblResource)layerResource;
}
}
}
throw new Exception("The specified ClblResource not found");
}
using (PsdImage im = (PsdImage)Image.Load(sourceFileName))
{
var resource = GetClblResource(im);
AssertIsTrue(resource.BlendClippedElements, "The ClblResource.BlendClippedElements should be true");
// Test editing and saving
resource.BlendClippedElements = false;
im.Save(destinationFileName);
}
using (PsdImage im = (PsdImage)Image.Load(destinationFileName))
{
var resource = GetClblResource(im);
AssertIsTrue(!resource.BlendClippedElements, "The ClblResource.BlendClippedElements should change to false");
}
PSDNET-274. Podpora blwh prostředku (Prostředek obsahuje data o vrstvě úpravy černobílé)
const string ActualPropertyValueIsWrongMessage = "Očekávaná hodnota vlastnosti se neshoduje s aktuální hodnotou";
void AssertIsTrue(bool condition, string message)
{
if (!condition)
{
throw new FormatException(message);
}
}
void ExampleSupportOfBlwhResource(
string sourceFileName,
int reds,
int yellows,
int greens,
int cyans,
int blues,
int magentas,
bool useTint,
int bwPresetKind,
string bwPresetFileName,
double tintColorRed,
double tintColorGreen,
double tintColorBlue,
int tintColor,
int newTintColor)
{
string destinationFileName = "Output" + sourceFileName;
bool isRequiredResourceFound = false;
using (PsdImage im = (PsdImage)Image.Load(sourceFileName))
{
foreach (var layer in im.Layers)
{
foreach (var layerResource in layer.Resources)
{
if (layerResource is BlwhResource)
{
var blwhResource = (BlwhResource)layerResource;
var blwhLayer = (BlackWhiteAdjustmentLayer)layer;
isRequiredResourceFound = true;
AssertIsTrue(blwhResource.Reds == reds, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Yellows == yellows, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Greens == greens, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Cyans == cyans, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Blues == blues, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Magentas == magentas, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.UseTint == useTint, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.TintColor == tintColor, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BwPresetKind == bwPresetKind, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BlackAndWhitePresetFileName == bwPresetFileName, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorRed - tintColorRed) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorGreen - tintColorGreen) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorBlue - tintColorBlue) < 1e-6, ActualPropertyValueIsWrongMessage);
// Test editing and saving
blwhResource.Reds = reds - 15;
blwhResource.Yellows = yellows - 15;
blwhResource.Greens = greens + 15;
blwhResource.Cyans = cyans + 15;
blwhResource.Blues = blues - 15;
blwhResource.Magentas = magentas - 15;
blwhResource.UseTint = !useTint;
blwhResource.BwPresetKind = 4;
blwhResource.BlackAndWhitePresetFileName = "bwPresetFileName";
blwhLayer.TintColorRed = tintColorRed - 60;
blwhLayer.TintColorGreen = tintColorGreen - 60;
blwhLayer.TintColorBlue = tintColorBlue - 60;
im.Save(destinationFileName);
break;
}
}
}
}
AssertIsTrue(isRequiredResourceFound, "The specified BlwhResource not found");
isRequiredResourceFound = false;
using (PsdImage im = (PsdImage)Image.Load(destinationFileName))
{
foreach (var layer in im.Layers)
{
foreach (var layerResource in layer.Resources)
{
if (layerResource is BlwhResource)
{
var blwhResource = (BlwhResource)layerResource;
var blwhLayer = (BlackWhiteAdjustmentLayer)layer;
isRequiredResourceFound = true;
AssertIsTrue(blwhResource.Reds == reds - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Yellows == yellows - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Greens == greens + 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Cyans == cyans + 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Blues == blues - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Magentas == magentas - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.UseTint == !useTint, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.TintColor == newTintColor, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BwPresetKind == 4, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BlackAndWhitePresetFileName == "bwPresetFileName", ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorRed - tintColorRed + 60) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorGreen - tintColorGreen + 60) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorBlue - tintColorBlue + 60) < 1e-6, ActualPropertyValueIsWrongMessage);
break;
}
}
}
}
AssertIsTrue(isRequiredResourceFound, "The specified BlwhResource not found");
}
ExampleSupportOfBlwhResource(
"BlackWhiteAdjustmentLayerStripesMask.psd",
0x28,
0x3c,
0x28,
0x3c,
0x14,
0x50,
false,
1,
"\0",
225.00045776367188,
211.00067138671875,
179.00115966796875,
-1977421,
-5925001);
ExampleSupportOfBlwhResource(
"BlackWhiteAdjustmentLayerStripesMask2.psd",
0x80,
0x40,
0x20,
0x10,
0x08,
0x04,
true,
4,
"\0",
239.996337890625,
127.998046875,
63.9990234375,
-1015744,
-4963324);
Console.WriteLine("Aktualizace BlwhResource funguje jak bylo očekáváno. Stiskněte libovolnou klávesu.");
PSDNET-230. Schopnost exportovat skupinu vrstev do formátů Jpeg/Png/Tiff/Gif/Bmp/Jpeg2000/Psd/Psb/Pdf
using (var psdImage = (PsdImage)Image.Load("1.psd"))
{
// složka s pozadím
LayerGroup bg_folder = (LayerGroup)psdImage.Layers[0];
// složka s obsahem
LayerGroup content_folder = (LayerGroup)psdImage.Layers[4];
bg_folder.Save("background.png", new PngOptions());
content_folder.Save("content.png", new PngOptions());
}