Wasserzeichen in Bildern werden normalerweise verwendet, um das Eigentum an den Inhalten zu beanspruchen. Andererseits werden Bilder mit Wasserzeichen versehen, um eine unbefugte Verwendung oder Fälschung zu vermeiden. In verschiedenen Fällen müssen Sie möglicherweise die Wasserzeichenfunktion in Ihren Web oder Desktopanwendungen automatisieren. Für solche Szenarien behandelt dieser Artikel das programmgesteuerte Hinzufügen von Wasserzeichen zu Bildern mithilfe von C#. Dies kann auch nützlich sein, wenn Sie eine Reihe von Bildern auf einmal mit einem Wasserzeichen versehen müssen. Fangen wir also an.
- C# API zum Hinzufügen von Wasserzeichen zu Bildern
- Wasserzeichen zu einem Bild in C# hinzufügen
- Diagonales Wasserzeichen zu Bildern in C# hinzufügen
- Erhalten Sie eine kostenlose API Lizenz
C# API zum Hinzufügen von Wasserzeichen zu Bildern
Um Wasserzeichen zu Bildern hinzuzufügen, verwenden wir Aspose.Imaging for .NET. Es ist eine leistungsstarke Bildverarbeitungs-API, die eine Vielzahl von Bildformaten unterstützt. Darüber hinaus erleichtert Ihnen die API die Manipulation der Bilder. Sie können entweder Binärdateien der API herunterladen oder sie mit NuGet installieren lassen.
PM> Install-Package Aspose.Imaging
Wasserzeichen zu einem Bild in C# hinzufügen
Im Folgenden finden Sie die Schritte zum Hinzufügen eines Wasserzeichens zu einem Bild mit C#.
- Laden Sie das Bild mit der Klasse Image.
- Erstellen Sie eine Instanz der Klasse Graphics und initialisieren Sie sie mit dem Objekt Image.
- Legen Sie die Schriftfamilie, -größe und -darstellung mit der Klasse Font fest.
- Erstellen Sie eine Instanz der Klasse SolidBrush und legen Sie ihre Eigenschaften wie Farbe usw. fest.
- Instanziieren Sie die Klasse StringFormat, um die Textausrichtung festzulegen.
- Fügen Sie dem Bild mit der methode Graphics.DrawString(String, Font, SolidBrush, 0, 0, StringFormat) ein Wasserzeichen hinzu.
- Speichern Sie das Bild mit der methode Image.Save(String).
Das folgende Codebeispiel zeigt, wie einem Bild in C# ein Wasserzeichen hinzugefügt wird.
// Laden Sie ein vorhandenes PNG Bild
using (Image image = Image.Load("image.png"))
{
// Deklarieren Sie ein String objekt mit Wasserzeichentext
string theString = "This is watermark";
// Erstellen und initialisieren Sie eine Instanz der Graphics Klasse und initialisieren Sie ein Objekt von SizeF, um die Bildgröße zu speichern
Graphics graphics = new Graphics(image);
SizeF sz = graphics.Image.Size;
// Erstellt eine Instanz von Font, initialisiert sie mit Font Face, Size und Style
Font font = new Font("Times New Roman", 20, FontStyle.Bold);
// Erstellen Sie eine Instanz von SolidBrush und legen Sie die verschiedenen Eigenschaften fest
SolidBrush brush = new SolidBrush();
brush.Color = Color.Red;
brush.Opacity = 0;
// Initialisieren Sie ein Objekt der StringFormat Klasse und legen Sie seine verschiedenen Eigenschaften fest
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
// Zeichnen Sie die Zeichenfolge auf Image Save Output to Disk
graphics.DrawString(theString, font, brush, 0, 0, format);
image.Save("watermarked.jpg");
}
Diagonales Wasserzeichen zu Bildern in C# hinzufügen
In verschiedenen Fällen werden Wasserzeichen diagonal auf die Bilder aufgebracht. Zu diesem Zweck können Sie mit Aspose.Imaging for .NET den Wasserzeichentext in einem bestimmten Winkel transformieren. Im Folgenden sind die Schritte zum Hinzufügen eines diagonalen Wasserzeichens zu einem Bild aufgeführt.
- Laden Sie das Bild mit der Klasse Image.
- Erstellen Sie eine Instanz der Klasse Graphics und initialisieren Sie sie mit dem Objekt Image.
- Legen Sie die Schriftfamilie, -größe und -darstellung mit der Klasse Font fest.
- Erstellen Sie eine Instanz der Klasse SolidBrush und legen Sie ihre Eigenschaften wie Farbe usw. fest.
- Instanziieren Sie die Klasse StringFormat, um die Textausrichtung festzulegen.
- Erstellen Sie eine Instanz der Klasse Matrix und legen Sie den Transformationswinkel fest.
- Weisen Sie das Matrix objekt der Eigenschaft Graphics.Transform zu.
- Fügen Sie Wasserzeichen mit der methode Graphics.DrawString(String, Font, SolidBrush, 0, 0, StringFormat) hinzu.
- Speichern Sie das Bild mit der methode Image.Save(String).
Das folgende Codebeispiel zeigt, wie Sie mithilfe von C# ein diagonales Wasserzeichen zu Bildern hinzufügen.
// Laden Sie ein vorhandenes PNG Bild
using (Image image = Image.Load("Image.png"))
{
// Deklarieren Sie ein String objekt mit Wasserzeichentext
string theString = "45 Degree Rotated Text";
// Erstellen und initialisieren Sie eine Instanz der Graphics Klasse und initialisieren Sie ein Objekt von SizeF, um die Bildgröße zu speichern
Graphics graphics = new Graphics(image);
SizeF sz = graphics.Image.Size;
// Erstellt eine Instanz von Font, initialisiert sie mit Font Face, Size und Style
Font font = new Font("Times New Roman", 20, FontStyle.Bold);
// Erstellen Sie eine Instanz von SolidBrush und legen Sie die verschiedenen Eigenschaften fest
SolidBrush brush = new SolidBrush();
brush.Color = Color.Red;
brush.Opacity = 0;
// Initialisieren Sie ein Objekt der StringFormat Klasse und legen Sie seine verschiedenen Eigenschaften fest
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
// Erstellen Sie ein Objekt der Matrix Klasse für die Transformation
Matrix matrix = new Matrix();
// Erst eine Translation, dann eine Rotation
matrix.Translate(sz.Width / 2, sz.Height / 2);
matrix.Rotate(-45.0f);
// Stellen Sie die Transformation durch Matrix ein
graphics.Transform = matrix;
// Zeichnen Sie die Zeichenfolge auf Image Save Output to Disk
graphics.DrawString(theString, font, brush, 0, 0, format);
image.Save("watermarked.png");
}
Holen Sie sich eine kostenlose API Lizenz
Falls Sie die API ohne Evaluierungseinschränkungen ausprobieren möchten, können Sie eine kostenlose temporäre Lizenz erhalten.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie mit C# Wasserzeichen zu Bildern hinzufügen. Außerdem haben Sie gesehen, wie Sie Wasserzeichentext in einen bestimmten Winkel umwandeln. Weitere Informationen zur C# Bildverarbeitungs-API finden Sie unter Dokumentation. Falls Sie Fragen oder Anregungen haben, kontaktieren Sie uns über unser Forum.