Notes de version Aspose.PSD pour Java 20.7
Clé | Résumé | Catégorie |
---|---|---|
PSDJAVA-231 | Prise en charge de l’ajout de l’effet de contour en cours d’exécution | Fonctionnalité |
PSDJAVA-249 | Prise en charge des ressources lnk2 / lnk3 (Ressources de la couche d’objet intelligent) | Fonctionnalité |
PSDJAVA-247 | Modification du message d’exception lors de la tentative d’ouverture de formats non pris en charge en tant qu’image | Amélioration |
PSDJAVA-235 | Si nous enregistrons un fichier PSD après la création d’un nouveau groupe de calques, nous obtenons un avertissement de Photoshop lors de l’ouverture du fichier. | Bogue |
PSDJAVA-236 | Échec de l’enregistrement de LayerMask | Bogue |
PSDJAVA-237 | Le masque d’écrêtage ne s’applique pas au dossier | Bogue |
PSDJAVA-238 | Impossible d’ouvrir le fichier avec Aspose.PSD pour Java | Bogue |
PSDJAVA-239 | Exception d’échec de l’enregistrement de l’image lors de la conversion PSD en PDF | Bogue |
PSDJAVA-240 | L’opération de rognage rend le chemin de détourage invalide dans l’image PSD | Bogue |
PSDJAVA-241 | Exception NullReference lors de l’essai d’enregistrement d’un fichier PSD spécifique avec l’effet d’ombre | Bogue |
PSDJAVA-243 | Aspose.PSD renvoie true sur Image.CanLoad(pdfStream) | Bogue |
PSDJAVA-244 | Échec du rendu des calques dans le PNG généré | Bogue |
PSDJAVA-245 | Exception lors de l’accès aux TextData | Bogue |
PSDJAVA-246 | ImageSaveException lors de l’enregistrement du PSD | Bogue |
Changements d’API publics
APIs ajoutées :
- F:com.aspose.psd.fileformats.psd.layers.layereffects.StrokePosition.Center
- F:com.aspose.psd.fileformats.psd.layers.layereffects.StrokePosition.Inside
- F:com.aspose.psd.fileformats.psd.layers.layereffects.StrokePosition.Outside
- F:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.Lnk3Resource.TypeToolKey
- M:com.aspose.psd.fileformats.psd.PsdImage.addExposureAdjustmentLayer
- M:com.aspose.psd.fileformats.psd.layers.layereffects.BlendingOptions.addStroke(int)
- M:com.aspose.psd.fileformats.psd.layers.layereffects.StrokeEffect.getOverprint
- M:com.aspose.psd.fileformats.psd.layers.layereffects.StrokeEffect.getPosition
- M:com.aspose.psd.fileformats.psd.layers.layereffects.StrokeEffect.getSize
- M:com.aspose.psd.fileformats.psd.layers.layereffects.StrokeEffect.setOverprint(boolean)
- M:com.aspose.psd.fileformats.psd.layers.layereffects.StrokeEffect.setPosition(short)
- M:com.aspose.psd.fileformats.psd.layers.layereffects.StrokeEffect.setSize(int)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.LiFdDataSource.getData
- M:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.LiFdDataSource.setData(byte[])
- M:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.Lnk2Resource.#ctor
- M:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.Lnk2Resource.get_Item(int)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.Lnk3Resource.#ctor
- M:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.Lnk3Resource.getKey
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.getPaths
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.getVersion
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.isDisabled
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.isInverted
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.isNotLinked
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.setDisabled(boolean)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.setInverted(boolean)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.setNotLinked(boolean)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.setPaths(com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathRecord[])
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData.setVersion(int)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.#ctor
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.#ctor(byte[])
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.getLength
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.getPaths
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.getVersion
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.isDisabled
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.isInverted
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.isNotLinked
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.setDisabled(boolean)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.setInverted(boolean)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.setNotLinked(boolean)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.setPaths(com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathRecord[])
- M:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData.setVersion(int)
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.#ctor(byte[])
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.getDataSize
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.getMinimalVersion
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.getPaths
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.getVersion
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.isDisabled
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.isInverted
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.isNotLinked
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.saveData(com.aspose.psd.StreamContainer)
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.setDisabled(boolean)
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.setInverted(boolean)
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.setNotLinked(boolean)
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.setPaths(com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathRecord[])
- M:com.aspose.psd.fileformats.psd.resources.WorkingPathResource.setVersion(int)
- T:com.aspose.psd.fileformats.psd.layers.layereffects.StrokePosition
- T:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.Lnk3Resource
- T:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.IVectorPathData
- T:com.aspose.psd.fileformats.psd.layers.layerresources.vectorpaths.VectorPathData
- T:com.aspose.psd.fileformats.psd.resources.WorkingPathResource
APIs supprimées :
- F:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.LinkDataSource.DescriptorVersion
- F:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.LinkDataSource.UnexpectedLinkResourceTypeValue
- F:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.LinkDataSource.ZeroChar
- M:com.aspose.psd.fileformats.psd.PsdImage.addExposureLayer(float,float,float)
- M:com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.Lnk2Resource.#ctor(com.aspose.psd.fileformats.psd.layers.layerresources.linkresources.LinkDataSource[])
Exemples d’utilisation:
PSDJAVA-231. Prise en charge de l’ajout de l’effet de contour en cours d’exécution
// Cet exemple montre comment ajouter un effet de contour (bordure) à des calques existants d'un fichier PSD en Java.
// Il existe trois types de contour : couleur, dégradé et motif. Chacun des types a
// trois façons (positions) d'afficher la bordure : intérieur, au centre et à l'extérieur.
// Cet exemple illustre l'utilisation de tous ces cas.
String srcPsdPath = "StrokeEffectsSource.psd";
String dstPngPath = "output.png";
PsdLoadOptions psdLoadOptions = new PsdLoadOptions();
psdLoadOptions.setLoadEffectsResource(true);
PsdImage psdImage = (PsdImage)Image.load(srcPsdPath, psdLoadOptions);
try
{
StrokeEffect strokeEffect;
IColorFillSettings colorFillSettings;
IGradientFillSettings gradientFillSettings;
IPatternFillSettings patternFillSettings;
// 1. Ajoute un remplissage de couleur, en position Intérieure
strokeEffect = psdImage.getLayers()[1].getBlendingOptions().addStroke(FillType.Color);
strokeEffect.setSize(7);
strokeEffect.setPosition(StrokePosition.Inside);
colorFillSettings = (IColorFillSettings)strokeEffect.getFillSettings();
colorFillSettings.setColor(Color.getGreen());
// 2. Ajoute un remplissage de couleur, en position Extérieure
strokeEffect = psdImage.getLayers()[2].getBlendingOptions().addStroke(FillType.Color);
strokeEffect.setSize(7);
strokeEffect.setPosition(StrokePosition.Outside);
colorFillSettings = (IColorFillSettings)strokeEffect.getFillSettings();
colorFillSettings.setColor(Color.getGreen());
// 3. Ajoute un remplissage de couleur, en position Centrale
strokeEffect = psdImage.getLayers()[3].getBlendingOptions().addStroke(FillType.Color);
strokeEffect.setSize(7);
strokeEffect.setPosition(StrokePosition.Center);
colorFillSettings = (IColorFillSettings)strokeEffect.getFillSettings();
colorFillSettings.setColor(Color.getGreen());
// ... (Le reste de l'exemple a été tronqué)
psdImage.save(dstPngPath, new PngOptions());
}
finally
{
psdImage.dispose();
}
PSDJAVA-249. Prise en charge des ressources lnk2 / lnk3 (Ressources de la couche d’objet intelligent)
// Cet exemple montre comment travailler avec les ressources d'objet intelligent (principalement Lnk2Resource).
// Le programme charge plusieurs documents Photoshop et exporte leurs objets intelligents vers
// des formats de fichiers raster. De plus, le code démontre l'utilisation des méthodes publiques de Lnk2Resource.
// ... (L'exemple entier a été tronqué)
PSDJAVA-247. Modification du message d’exception lors de la tentative d’ouverture de formats non pris en charge en tant qu’image
// Cet exemple montre qu'une exception avec un nouveau message plus descriptif est levée lors du chargement
// d'images raster de la manière qui n'est pas prise en charge (les images raster ne peuvent être chargées que comme calques).
// ... (L'exemple entier a été tronqué)
PSDJAVA-235. Si nous enregistrons un fichier PSD après la création d’un nouveau groupe de calques, nous obtenons un avertissement de Photoshop lors de l’ouverture du fichier.
// Cet exemple montre qu'il n'y a pas d'exception lors de l'enregistrement d'un fichier PSD généré
// contenant des groupes de calques internes.
// ... (L'exemple entier a été tronqué)
PSDJAVA-236. Échec de l’enregistrement de LayerMask
// Cet exemple démontre la possibilité de sauvegarder et de rendre des masques de calque pour
// des groupes de calques lorsque des calques sont ajoutés à partir d'une autre image PSD.
// ... (L'exemple entier a été tronqué)
PSDJAVA-237. Le masque d’écrêtage ne s’applique pas au dossier
// Cet exemple vérifie que les masques d'écrêtage liés aux groupes de calques sont exportés
// correctement pour un fichier PSD prédéfini.
// ... (L'exemple entier a été tronqué)
PSDJAVA-238. Impossible d’ouvrir le fichier avec Aspose.PSD pour Java
// Cet exemple charge et enregistre un fichier PSD particulier sans générer d'exception.
// ... (L'exemple entier a été tronqué)
PSDJAVA-239. Exception d’échec de l’enregistrement de l’image lors de la conversion PSD en PDF
// Cet exemple exporte un fichier PSD particulier au format de fichier PDF avec le mode lecture seule activé
// ou non pour s'assurer qu'aucune erreur n'est lancée et que le fichier de sortie est correct.
// ... (L'exemple entier a été tronqué)
PSDJAVA-240. L’opération de rognage rend le chemin de détourage invalide dans l’image PSD
// Cet exemple démontre que l'opération de rognage ne rend pas un chemin de détourage invalide.
// Le programme charge un fichier PSD particulier puis le rogne et l'enregistre. Ensuite, le programme
// ouvre le fichier enregistré et vérifie que l'opération de rognage s'est déroulée comme prévu.
// ... (L'exemple entier a été tronqué)
PSDJAVA-241. Exception NullReference lors de l’essai d’enregistrement d’un fichier PSD spécifique avec l’effet d’ombre
// Cet exemple démontre qu'il n'y a pas d'exception lors de l'enregistrement d'un fichier PSD spécifique.
// ... (L'exemple entier a été tronqué)
PSDJAVA-243. Aspose.PSD renvoie true sur Image.CanLoad(pdfStream)
// Cet exemple vérifie que la propriété Image.canLoad a été corrigée et renvoie "false" pour
// les fichiers non pris en charge. Le programme parcourt simplement une liste de fichiers prédéfinis pris en charge et non pris en charge.
// ... (L'exemple entier a été tronqué)
PSDJAVA-244. Échec du rendu des calques dans le PNG généré
// Cet exemple vérifie qu'un fichier PSD particulier est exporté correctement après aplatissement.
// ... (L'exemple entier a été tronqué)
PSDJAVA-245. Exception lors de l’accès aux TextData
// Cet exemple vérifie qu'il n'y a pas d'exception lors de l'accès à des données textuelles particulières.
// ... (L'exemple entier a été tronqué)
PSDJAVA-246. ImageSaveException lors de l’enregistrement du PSD
// Cet exemple vérifie qu'il n'y a pas d'exception lors de l'enregistrement d'un fichier PSD particulier.
// ... (L'exemple entier a été tronqué)
// Cet exemple vérifie qu'un fichier PSD particulier est exporté correctement après aplatissement.
String srcPsdPath = "sccnn_2020053000075715XUHD.psd";
String dstPngPath = "sccnn_2020053000075715XUHD_output.png";
PngOptions pngOptions = new PngOptions();
pngOptions.setColorType(PngColorType.TruecolorWithAlpha);
PsdImage psdImage = (PsdImage)Image.load(srcPsdPath);
try
{
// Fusionner tous les calques et exporter le calque résultant en tant qu'image
psdImage.flattenImage();
psdImage.save(dstPngPath, pngOptions);
}
finally
{
psdImage.dispose();
}
PSDJAVA-245. Exception lors de l’accès aux TextData
// Cet exemple vérifie qu'il n'y a pas d'exception lors de l'accès à des données textuelles particulières.
String srcPsdPath = "A.psd";
PsdImage image = (PsdImage)Image.load(srcPsdPath);
try
{
// Accéder et modifier les données textuelles sans exception
TextLayer textLayer = (TextLayer)image.getLayers()[1];
String text = textLayer.getText(); // pas d'exception ici...
IText textData = textLayer.getTextData(); // pas d'exception ici...
textLayer.updateText("abc"); // pas d'exception ici...
}
finally
{
image.dispose();
}
PSDJAVA-246. ImageSaveException lors de l’enregistrement du PSD
// Cet exemple vérifie qu'il n'y a pas d'exception lors de l'enregistrement d'un fichier PSD particulier.
String srcPsdPath = "snowflake-ui-kit.psd";
String dstPsdPath = "snowflake-ui-kit-output.psd";
PsdImage image = (PsdImage)Image.load(srcPsdPath);
try
{
image.save(dstPsdPath, new PsdOptions(image));
}
finally
{
image.dispose();
}