Générer une vignette PSD en C#

Dans cet article de blog, nous allons vous montrer comment générer rapidement et efficacement une vignette PSD en C#. Nous vous guiderons pas à pas dans le processus de création de miniatures de fichiers PSD. Commençons!

Cet article couvrira les sujets suivants :

API C# Photoshop pour générer une vignette PSD

Pour générer des vignettes PSD, nous utiliserons l’API Aspose.PSD for .NET. Il s’agit d’une API puissante qui permet aux développeurs de travailler avec Adobe Photoshop PSD et les formats de fichier PSB dans leurs applications .NET. Il fournit un ensemble complet de fonctionnalités pour manipuler les fichiers PSD et PSB, y compris la lecture, l’écriture et l’édition de calques, de canaux, de masques et de texte. L’API prend également en charge le redimensionnement des images, le réglage des couleurs, les filtres et les transformations.

Veuillez soit télécharger la DLL de l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.PSD

Générer une vignette PSD à l’aide de C#

Nous pouvons facilement générer une vignette d’un fichier PSD en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez le fichier PSD en tant que PsdImage en utilisant la classe Image.
  2. Ensuite, parcourez les ressources PSD.
  3. Ensuite, vérifiez si la ressource est de type ThumbnailResource.
  4. Pendant ce temps, vérifiez si le ThumbnailFormat de ThumbnailResource est KJpegRgb.
  5. Ensuite, créez une nouvelle image en spécifiant la largeur et la hauteur.
  6. Après cela, appelez la méthode SavePixels().
  7. Enfin, enregistrez le fichier de sortie à l’aide de la méthode Save().

L’exemple de code suivant montre comment créer une vignette d’un fichier PSD en C#.

// Cet exemple de code montre comment générer une vignette d'un fichier PSD
// Chargez un fichier PSD en tant qu'image et castez-le en PsdImage
using (PsdImage image = (PsdImage)Image.Load("C:\\Files\\sample.psd"))
{
    int index = 0;
    // Itérer sur les ressources PSD
    foreach (var resource in image.ImageResources)
    {
        index++;
        // Vérifier si la ressource est de type miniature
        if (resource is ThumbnailResource)
        {
            // Récupérez ThumbnailResource et vérifiez le format de ThumbnailResource
            var thumbnail = (ThumbnailResource)resource;
            if (thumbnail.Format == ThumbnailFormat.KJpegRgb)
            {
                // Créez une nouvelle image en spécifiant la largeur et la hauteur, stockez les pixels de la vignette sur l'image nouvellement créée et enregistrez l'image
                PsdImage thumnailImage = new PsdImage(thumbnail.Width, thumbnail.Height);

                // Sauvegarder
                thumnailImage.SauvegarderPixels(thumnailImage.Bounds, thumbnail.ThumbnailData);
                thumnailImage.Sauvegarder("C:\\Files\\Thumbnail_" + index.ToString() + ".jpg", new JpegOptions());
            }
        }
    }
}
Générer une vignette PSD à l'aide de C#

Générer une vignette PSD à l’aide de C#

Bibliothèque Aspose.PSD - Obtenez une licence temporaire gratuite

Nous proposons une version d’évaluation gratuite qui peut être utilisée pour tester les fonctionnalités et les capacités de la bibliothèque. Vous pouvez obtenir une licence temporaire gratuite pour essayer Aspose.PSD for .NET sans limitation d’évaluation.

Comment générer une vignette PSD – Ressources d’apprentissage

Vous pouvez en savoir plus sur la génération de vignettes de fichiers PSD sans utiliser les plates-formes Adobe et explorer d’autres fonctionnalités de la bibliothèque Aspose.PSD à l’aide des ressources indiquées ci-dessous :

Conclusion

Dans cet article, nous avons appris à générer des vignettes de fichiers PSD en C#. Avec l’aide d’Aspose.PSD for .NET, les développeurs peuvent facilement générer des vignettes de haute qualité de fichiers PSD et PSB qui peuvent être affichées dans des explorateurs de fichiers, des galeries ou toute autre application nécessitant une fonctionnalité de prévisualisation d’image. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également