Aspose.PSD voor .NET 20.5 - Release-opmerkingen
Sleutel | Samenvatting | Categorie |
---|---|---|
PSDNET-595 | Ondersteuning van laagmaskers voor laaggroepen | Functie |
PSDNET-201 | Ondersteuning voor voortgang van documentconversie | Functie |
PSDNET-275 | Ondersteuning van Nvrt Resource (Invert Adjustment Layer Resource) | Functie |
PSDNET-124 | Ondersteuning van het opslaan van PSD-afbeelding met Grayscale ColorMode met 16 bit per kanaal | Functie |
PSDNET-589 | Refactorisatie van voorbeelden op GitHub | Verbetering |
PSDNET-587 | Tekstuitlijning via ITextPortion werkt niet voor rechts-naar-links talen. Het uitvoerbestand is beschadigd. | Fout |
PSDNET-604 | Uitzondering bij het proberen te openen van een bepaald Psd-bestand met Lab Color en 8 bit/kanaal | Fout |
PSDNET-598 | Probleem opgelost bij het opslaan van PSD-afbeelding met Grayscale ColorMode 16 bit per kanaal naar 8 bit per kanaal Grayscale PSD-formaat | Fout |
PSDNET-599 | Probleem opgelost bij het opslaan van PSD-afbeelding met Grayscale ColorMode 16 bit per kanaal naar 16-bit per kanaal RGB PSD-formaat | Fout |
Wijzigingen in openbare API
Toegevoegde API’s:
- Geen
Verwijderde API’s:
- Geen
Gebruik voorbeelden:
PSDNET-595. Ondersteuning van laagmaskers voor laaggroepen
string srcBestand = "psdnet595.psd";
string uitvoerPng = "uitvoer.png";
string uitvoerPsd = "uitvoer.psd";
using (var invoer = (PsdImage)Image.Load(srcBestand))
{
invoer.Save(uitvoerPng, new PngOptions());
invoer.Save(uitvoerPsd);
}
PSDNET-201. Ondersteuning voor voortgang van documentconversie
string bronBestandsPad = "Apple.psd";
Stream uitvoerstroom = new MemoryStream();
ProgressEventHandler lokaleProgressEventHandler = delegate(ProgressEventHandlerInfo voortgangsInfo)
{
string boodschap = string.Format(
"{0} {1}: {2} van {3}",
voortgangsInfo.Beschrijving,
voortgangsInfo.GebeurtenisType,
voortgangsInfo.Waarde,
voortgangsInfo.MaxWaarde);
Console.WriteLine(boodschap);
};
Console.WriteLine("---------- Laden van Apple.psd ----------");
var laadOpties = new PsdLoadOptions() { ProgressEventHandler = lokaleProgressEventHandler };
using (PsdImage afbeelding = (PsdImage)Image.Load(bronBestandsPad, laadOpties))
{
Console.WriteLine("---------- Opslaan van Apple.psd naar PNG-formaat ----------");
afbeelding.Save(
uitvoerstroom,
new PngOptions()
{
ColorType = PngColorType.Truecolor, ProgressEventHandler = lokaleProgressEventHandler
});
Console.WriteLine("---------- Opslaan van Apple.psd naar PSD-formaat ----------");
afbeelding.Save(
uitvoerstroom,
new PsdOptions()
{
ColorMode = ColorModes.Rgb,
ChannelsCount = 4,
ProgressEventHandler = lokaleProgressEventHandler
});
}
PSDNET-275. Ondersteuning van Nvrt Resource (Invert Adjustment Layer Resource)
using (var psdAfbeelding = (PsdImage)Image.Load("InvertAdjustmentLayer.psd"))
{
foreach (var laag in psdAfbeelding.Layers)
{
if (laag is InvertAdjustmentLayer)
{
foreach (var laagResource in laag.Resources)
{
if (laagResource is NvrtResource)
{
// De NvrtResource wordt ondersteund.
var resource = (NvrtResource)laagResource;
break;
}
}
}
}
}
PSDNET-124. Probleem opgelost bij het opslaan van PSD-afbeelding met Grayscale ColorMode 16 bit per kanaal naar 8 bit per kanaal Grayscale PSD-formaat
void OpslaanNaarPsdDanLadenEnOpslaanNaarPng(
string bestand,
ColorModes kleurModus,
korte kanaalBitsTelling,
korte kanalenTelling,
CompressieMethode compressie,
int laagNummer)
{
string bestandPad = bestand + ".psd";
string achtervoegsel = kleurModus.ToString() + kanaalBitsTelling + "_" + kanalenTelling + "_" + compressie;
string exportPad = @"Uitvoer\" + bestand + achtervoegsel + ".psd";
PsdOptions psdOpties = new PsdOptions()
{
ColorMode = kleurModus,
ChannelBitsCount = kanaalBitsTelling,
ChannelsCount = kanalenTelling,
CompressionMethod = compressie
};
using (PsdImage afbeelding = (PsdImage)Image.Load(bestandPad))
{
RasterCachedImage raster = laagNummer >= 0 ? (RasterCachedImage)afbeelding.Layers[laagNummer] : afbeelding;
Aspose.PSD.Graphics graphics = new Graphics(raster);
int breedte = raster.Breedte;
int hoogte = raster.Hoogte;
Rechthoek rechthoek = nieuwe Rechthoek(
breedte / 3,
hoogte / 3,
breedte - (2 * (breedte / 3)) - 1,
hoogte - (2 * (hoogte / 3)) - 1);
graphics.TrekRechthoek(nieuwe Aspose.PSD.Pen(Kleur.DonkerGrijs, 1), rechthoek);
afbeelding.Save(exportPad, psdOpties);
}
string pngExportPad = Path.ChangeExtension(exportPad, "png");
using (PsdImage afbeelding = (PsdImage)Image.Load(exportPad))
{
// Hier mag geen uitzondering zijn.
afbeelding.Save(pngExportPad, new PngOptions() { ColorType = PngColorType.GrayscaleWithAlpha });
}
}
OpslaanNaarPsdDanLadenEnOpslaanNaarPng("grayscale5x5", ColorModes.Cmyk, 16, 5, CompressionMethod.RLE, 0);
OpslaanNaarPsdDanLadenEnOpslaanNaarPng("argb16bit_5x5", ColorModes.Grayscale, 16, 2, CompressionMethod.RLE, 0);
OpslaanNaarPsdDanLadenEnOpslaanNaarPng("argb16bit_5x5_geen_lagen", ColorModes.Grayscale, 16, 2, CompressionMethod.RLE, -1);
OpslaanNaarPsdDanLadenEnOpslaanNaarPng("argb8bit_5x5", ColorModes.Grayscale, 16, 2, CompressionMethod.RLE, 0);
OpslaanNaarPsdDanLadenEnOpslaanNaarPng("argb8bit_5x5_geen_lagen", ColorModes.Grayscale, 16, 2, CompressionMethod.RLE, -1);
OpslaanNaarPsdDanLadenEnOpslaanNaarPng("cmyk16bit_5x5_geen_lagen", ColorModes.Grayscale, 16, 2, CompressionMethod.RLE, -1);
OpslaanNaarPsdDanLadenEnOpslaanNaarPng("index8bit_5x5", ColorModes.Grayscale, 16, 2, CompressionMethod.RLE, -1);
PSDNET-587. Tekstuitlijning via ITextPortion werkt niet voor rechts-naar-links talen. Het uitvoerbestand is beschadigd.
string bronBestandsNaam = "bidi.psd";
string uitvoerBestandsNaam = "bidiUitvoer.psd";
using (PsdImage afbeelding = (PsdImage)Image.Load(bronBestandsNaam))
{
var laag = (TextLayer)afbeelding.Layers[2];
var delen = laag.TextData.Items;
delen[0].Paragraaf.Uitlijning = 2;
laag.TextData.UpdateLayerData();
afbeelding.Save(uitvoerBestandsNaam);
}
PSDNET-604. Uitzondering bij het proberen te openen van een bepaald Psd-bestand met Lab Color en 8 bit/kanaal
string bronBestand = "Untitled-1.psd";
string uitvoerBestandPsd = "uitvoer.psd";
using (var psdAfbeelding = (PsdImage)Image.Load(bronBestand))
{
psdAfbeelding.Save(uitvoerBestandPsd);
}
// LAB-bestand geladen en opgeslagen zonder uitzonderingen te gooien.
PSDNET-598. Probleem opgelost bij het opslaan van PSD-afbeelding met Grayscale ColorMode 16 bit per kanaal naar 8 bit per kanaal Grayscale PSD-formaat
string bronBestandsNaam = "grayscale16bit.psd";
string exportBestandsNaam = "grayscale16bit_uitvoer.psd";
PsdOptions psdOpties = new PsdOptions()
{
ColorMode = ColorModes.Grayscale,
ChannelBitsCount = 8,
ChannelsCount = 2
};
using (PsdImage afbeelding = (PsdImage)Image.Load(bronBestandsNaam))
{
RasterCachedImage raster = afbeelding.Layers[0];
Aspose.PSD.Graphics graphics = new Graphics(raster);
int breedte = raster.Breedte;
int hoogte = raster.Hoogte;
Rechthoek rechthoek = nieuwe Rechthoek(breedte / 3, hoogte / 3, breedte - (2 * (breedte / 3)) - 1, hoogte - (2 * (hoogte / 3)) - 1);
graphics.TrekRechthoek(nieuwe Aspose.PSD.Pen(Kleur.DonkerGrijs, 1), rechthoek);
afbeelding.Save(exportBestandsNaam, psdOpties);
}
string pngExportPad = Path.ChangeExtension(exportBestandsNaam, "png");
using (PsdImage afbeelding = (PsdImage)Image.Load(exportBestandsNaam))
{
// Hier mag geen uitzondering zijn.
afbeelding.Save(pngExportPad, new PngOptions() { ColorType = PngColorType.GrayscaleWithAlpha });
}
PSDNET-599. Probleem opgelost bij het opslaan van PSD-afbeelding met Grayscale ColorMode 16 bit per kanaal naar 16-bit per kanaal RGB PSD-formaat
string bronBestandsNaam = "grayscale16bit.psd";
string exportBestandsNaam = "grayscale16bit_uitvoer.psd";
PsdOptions psdOpties = new PsdOptions()
{
ColorMode = ColorModes.Rgb,
ChannelBitsCount = 8,
ChannelsCount = 4
};
using (PsdImage afbeelding = (PsdImage)Image.Load(bronBestandsNaam))
{
RasterCachedImage raster = afbeelding.Layers[0];
Aspose.PSD.Graphics graphics = new Graphics(raster);
int breedte = raster.Breedte;
int hoogte = raster.Hoogte;
Rechthoek rechthoek = nieuwe Rechthoek(breedte / 3, hoogte / 3, breedte - (2 * (breedte / 3)) - 1, hoogte - (2 * (hoogte / 3)) - 1);
graphics.TrekRechthoek(nieuwe Aspose.PSD.Pen(Kleur.DonkerGrijs, 1), rechthoek);
afbeelding.Save(exportBestandsNaam, psdOpties);
}
string pngExportPad = Path.ChangeExtension(exportBestandsNaam, "png");
using (PsdImage afbeelding = (PsdImage)Image.Load(exportBestandsNaam))
{
// Hier mag geen uitzondering zijn.
afbeelding.Save(pngExportPad, new PngOptions() { ColorType = PngColorType.GrayscaleWithAlpha });
}