aggiungi filigrana alle immagini C#

Le filigrane nelle immagini vengono solitamente utilizzate per rivendicare la proprietà del contenuto. D’altra parte, le immagini sono filigranate per evitare l’uso o la contraffazione non autorizzati. In vari casi, potrebbe essere necessario automatizzare la funzione di filigrana all’interno delle applicazioni Web o desktop. Per tali scenari, questo articolo illustra come aggiungere filigrana alle immagini a livello di codice usando C#. Questo potrebbe essere utile anche quando devi filigranare un batch di immagini in una volta sola. Quindi iniziamo.

API C# per aggiungere filigrana alle immagini

Per aggiungere filigrane alle immagini, utilizzeremo Aspose.Imaging for .NET. È una potente API di elaborazione delle immagini che supporta un’ampia gamma di formati di immagine. Inoltre, l’API semplifica la manipolazione delle immagini. Puoi scaricare binari dell’API o installarlo utilizzando NuGet.

PM> Install-Package Aspose.Imaging

Aggiungi filigrana a un’immagine in C#

Di seguito sono riportati i passaggi per aggiungere una filigrana a un’immagine usando C#.

L’esempio di codice seguente mostra come aggiungere una filigrana a un’immagine in C#.

// Carica un'immagine PNG esistente
using (Image image = Image.Load("image.png"))
{
    // Dichiara un oggetto String con il testo filigrana
    string theString = "This is watermark";

    // Crea e inizializza un'istanza della classe Graphics e inizializza un oggetto di SizeF per memorizzare la dimensione dell'immagine
    Graphics graphics = new Graphics(image);
    SizeF sz = graphics.Image.Size;

    // Crea un'istanza di Font, inizializzala con Font Face, Size e Style
    Font font = new Font("Times New Roman", 20, FontStyle.Bold);

    // Crea un'istanza di SolidBrush e imposta le sue varie proprietà
    SolidBrush brush = new SolidBrush();
    brush.Color = Color.Red;
    brush.Opacity = 0;

    // Inizializza un oggetto della classe StringFormat e imposta le sue varie proprietà
    StringFormat format = new StringFormat();
    format.Alignment = StringAlignment.Center;
    format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;

    // Disegna la stringa sull'immagine Salva l'output su disco
    graphics.DrawString(theString, font, brush, 0, 0, format);
    image.Save("watermarked.jpg");
}
Aggiungi filigrana all'immagine C#

Aggiungi filigrana diagonale alle immagini in C#

In vari casi, le filigrane vengono applicate alle immagini in diagonale. Per questo, Aspose.Imaging per .NET ti consente di trasformare il testo della filigrana su una certa angolazione. Di seguito sono riportati i passaggi per aggiungere una filigrana diagonale a un’immagine.

L’esempio di codice seguente mostra come aggiungere una filigrana diagonale alle immagini usando C#.

// Carica un'immagine PNG esistente
using (Image image = Image.Load("Image.png"))
{
    // Dichiara un oggetto String con il testo filigrana
    string theString = "45 Degree Rotated Text";

    // Crea e inizializza un'istanza della classe Graphics e inizializza un oggetto di SizeF per memorizzare la dimensione dell'immagine
    Graphics graphics = new Graphics(image);
    SizeF sz = graphics.Image.Size;

    // Crea un'istanza di Font, inizializzala con Font Face, Size e Style
    Font font = new Font("Times New Roman", 20, FontStyle.Bold);

    // Crea un'istanza di SolidBrush e imposta le sue varie proprietà
    SolidBrush brush = new SolidBrush();
    brush.Color = Color.Red;
    brush.Opacity = 0;

    // Inizializza un oggetto della classe StringFormat e imposta le sue varie proprietà
    StringFormat format = new StringFormat();
    format.Alignment = StringAlignment.Center;
    format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;

    // Crea un oggetto della classe Matrix per la trasformazione
    Matrix matrix = new Matrix();

    // Prima una traslazione poi una rotazione                
    matrix.Translate(sz.Width / 2, sz.Height / 2);
    matrix.Rotate(-45.0f);

    // Imposta la trasformazione tramite Matrix
    graphics.Transform = matrix;

    // Disegna la stringa sull'immagine Salva l'output su disco
    graphics.DrawString(theString, font, brush, 0, 0, format);
    image.Save("watermarked.png");
}
Aggiungi filigrana diagonale all'immagine C#

Ottieni una licenza API gratuita

Nel caso in cui desideri provare l’API senza limitazioni di valutazione, puoi ottenere una licenza temporanea gratuita.

Conclusione

In questo articolo, hai imparato come aggiungere filigrana alle immagini usando C#. Inoltre, hai visto come trasformare il testo della filigrana in un angolo particolare. Puoi esplorare di più sull’API di elaborazione delle immagini C# utilizzando documentazione. In caso di domande o domande, contattaci tramite il nostro forum.

Guarda anche