Ajouter un filigrane au PSD en C#

L’application Photoshop populaire d’Adobe utilise PSD (Document Photoshop) comme format de fichier image natif. Il est couramment utilisé pour créer des logos, des brochures et d’autres images où le fichier PSD contient plusieurs couches. Nous pouvons facilement protéger la conception en ajoutant le filigrane de texte ou d’image à un fichier PSD par programme. Dans cet article, nous allons apprendre à ajouter un filigrane à un PSD en C#.

Cet article couvrira les sujets suivants :

  1. API C# Photoshop pour ajouter un filigrane au PSD
  2. Ajouter un filigrane de texte au PSD
  3. Créer un filigrane diagonal dans PSD
  4. Ajouter un filigrane d’image au PSD

API C# Photoshop pour ajouter un filigrane au PSD

Pour ajouter un filigrane de texte ou d’image dans un fichier PSD, nous utiliserons l’API Aspose.PSD pour .NET. Il s’agit d’une API de manipulation de format de fichier Adobe Photoshop facile à utiliser. Il permet le chargement et la lecture de fichiers PSD et PSB dans des applications .NET. L’API nous permet de mettre à jour les propriétés des calques, d’ajouter des filigranes, d’effectuer une compression, une rotation, une mise à l’échelle ou un rendu PSD et plusieurs autres formats de fichiers pris en charge sans avoir besoin d’installer Adobe Photoshop.

La classe PsdImage de l’API permet de charger, d’éditer et d’enregistrer des fichiers PSD. La classe Graphics représente les graphiques dans l’image. Nous avons la méthode DrawString(string, Font, Brush, RectangleF, StringFormat) de cette classe qui dessine la chaîne de texte spécifiée dans le rectangle spécifié avec les objets brosse et police spécifiés. La classe Layer représente la couche PSD. La méthode DrawImage(Point, RasterImage) de cette classe dessine l’image sur le calque. Nous pouvons enregistrer le PSD à l’emplacement de fichier spécifié à l’aide de la méthode Save(string, ImageOptionsBase).

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

PM> Install-Package Aspose.PSD

Ajouter un filigrane de texte au PSD à l’aide de C#

Nous pouvons ajouter n’importe quel texte en filigrane à 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, créez une instance de la classe Graphics.
  3. Ensuite, définissez un objet de classe Font pour dessiner la largeur du filigrane.
  4. Ensuite, créez une instance de la classe SolidBrush avec la couleur.
  5. Ensuite, spécifiez l’alignement des chaînes.
  6. Après cela, appelez la méthode DrawString().
  7. Enfin, enregistrez le fichier de sortie à l’aide de la méthode Save().

L’exemple de code suivant montre comment ajouter un filigrane de texte à un fichier PSD en C#.

// Cet exemple de code montre comment ajouter un filigrane de texte à un fichier PSD
// Charger un fichier PSD en tant qu'image et le convertir en PsdImage
PsdImage psdImage = (PsdImage)Image.Load(@"C:\Files\SimplePSD.psd");

// Créez un objet graphique pour effectuer des opérations de dessin.
Graphics graphics = new Graphics(psdImage);

// Créez une police avec laquelle dessiner un filigrane.
Font font = new Font("Arial", 25.0f);

// Créez un pinceau uni avec une couleur alpha proche de 0 pour utiliser l'effet de filigrane.
SolidBrush brush = new SolidBrush(Color.FromArgb(80, 128, 128, 128));

// Spécifiez l'alignement de la chaîne pour placer le filigrane au centre de l'image.
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;
sf.LineAlignment = StringAlignment.Center;

// Dessinez un filigrane à l'aide d'une police, d'un pinceau partiellement transparent et d'une matrice de rotation au centre de l'image.
graphics.DrawString("Sample Watermark Text", font, brush, new RectangleF(0, 0, psdImage.Width, psdImage.Height), sf);

// Exportez l'image au format de fichier PNG.
psdImage.Save(@"C:\Files\AddWatermark_output.png", new PngOptions());
Ajouter un filigrane de texte au PSD à l'aide de C#

Ajouter un filigrane de texte au PSD à l’aide de C#

Nous pouvons également enregistrer la sortie sous forme de fichier PSD à l’aide de l’exemple de code suivant :

psdImage.Save(@"C:\Files\AddWatermark_output.psd", new PsdOptions());

Créer un filigrane diagonal dans PSD à l’aide de C#

Nous pouvons ajouter un filigrane de texte diagonal à 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, créez une instance de la classe Graphics.
  3. Ensuite, définissez un objet de classe Font pour dessiner la largeur du filigrane.
  4. Pendant ce temps, créez une instance de la classe SolidBrush avec la couleur.
  5. Ensuite, spécifiez la matrice de transformation pour faire pivoter le filigrane.
  6. Plus tard, spécifiez l’alignement des chaînes.
  7. Après cela, appelez la méthode DrawString().
  8. Enfin, enregistrez le fichier de sortie à l’aide de la méthode Save().

L’exemple de code suivant montre comment ajouter un filigrane de texte diagonal à un fichier PSD en C#.

// Cet exemple de code montre comment ajouter un filigrane de texte diagonal à un fichier PSD
// Charger un fichier PSD en tant qu'image et le convertir en PsdImage
PsdImage psdImage = (PsdImage)Image.Load(@"C:\Files\SimplePSD.psd");

// Créer un objet graphique pour effectuer des opérations de dessin
Graphics graphics = new Graphics(psdImage);

// Créer une police pour dessiner un filigrane avec
Font font = new Font("Arial", 25.0f);

// Créez un pinceau solide avec une couleur alpha proche de 0 pour utiliser l'effet de filigrane
SolidBrush brush = new SolidBrush(Color.FromArgb(80, 128, 128, 128));

// Spécifiez la matrice de transformation pour faire pivoter le filigrane
graphics.Transform = new Matrix();
graphics.Transform.RotateAt(45, new PointF(psdImage.Width / 2, psdImage.Height / 2));

// Spécifiez l'alignement de la chaîne pour placer le filigrane au centre de l'image
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;

// Dessinez un filigrane à l'aide d'une police, un pinceau partiellement transparent au centre de l'image
graphics.DrawString("Sample Watermark Text", font, brush, new RectangleF(0, psdImage.Height / 2, psdImage.Width, psdImage.Height / 2), sf);

// Exporter l'image au format de fichier PNG
psdImage.Save(@"C:\Files\AddDiagnolWatermark_output.png", new PngOptions());
Créer un filigrane diagonal dans PSD à l'aide de C#

Créer un filigrane diagonal dans PSD à l’aide de C#

Ajouter un filigrane d’image au PSD à l’aide de C#

Nous pouvons également ajouter une image en filigrane à 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, créez une instance de la classe Layer.
  3. Ensuite, définissez la hauteur, la largeur et l’opacité du calque.
  4. Ensuite, appelez la méthode AddLayer() pour ajouter la couche à PSD.
  5. Après cela, chargez une image de filigrane dans un calque.
  6. Ensuite, ajoutez un filigrane d’image au calque.
  7. Après cela, appelez la méthode DrawImage(). Il prend l’emplacement et la couche d’image du filigrane comme arguments.
  8. Enfin, enregistrez le fichier de sortie à l’aide de la méthode Save().

L’exemple de code suivant montre comment ajouter un filigrane d’image à un fichier PSD en C#.

// Cet exemple de code montre comment ajouter un filigrane d'image à un fichier PSD
// Charger un fichier PSD dans l'objet PsdImage
PsdImage psdImage = (PsdImage)Image.Load(@"C:\Files\SimplePSD.psd");

// Ajouter un nouveau calque de filigrane
var baseLayer = new Layer();
baseLayer.Top = 200;
baseLayer.Bottom = 600;
baseLayer.Right = 600;
baseLayer.Opacity = 50;

// Ajouter une couche au fichier PSD
psdImage.AddLayer(baseLayer);

// Charger une image de filigrane dans un calque
FileStream ImageWatermarkFile = new FileStream(@"C:\Files\aspose_logo.png", FileMode.Open);
Layer ImageWatermarkLayer = new Layer(ImageWatermarkFile);

// Ajouter un filigrane d'image au calque de base
baseLayer.DrawImage(new Point(0, 200), ImageWatermarkLayer);

// Enregistrer le fichier PSD filigrané final
psdImage.Save(@"C:\Files\ImageWatermarkedPSD.png", new PngOptions());
Ajouter un filigrane d'image au PSD à l'aide de C#

Ajouter un filigrane d’image au PSD à l’aide de C#

Obtenez une licence temporaire gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer Aspose.PSD pour .NET sans limitations d’évaluation.

Conclusion

Dans cet article, nous avons appris à :

  • ajouter un nouveau calque à une image PSD ;
  • ajouter du texte ou une image en filigrane au PSD ;
  • enregistrer PSD en tant qu’image PNG ou PSD en utilisant C#.

Outre l’ajout d’un filigrane à PSD en C#, vous pouvez en savoir plus sur Aspose.PSD pour .NET à l’aide de documentation et explorer différentes fonctionnalités prises en charge par l’API. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également