Controlla bene i vari overload del metodo costruttore per la classe Bitmap.Originariamente inviato da s0r42
adesso dovrei allargare i bordi dell'immagine senza deformarla
in pratica dovrei aggiungere un bordo da 20px all'immagine
ad esempio l'immagine originale è 100 ed io l'immagine finale devo farla diventare 120
Fondamentalmente, si tratta di inizializzare il contenitore principale spedificando le sue dimensioni.
Successivamente, vi si può aggiungere l'immagine di origine.
Esempio:
codice:public static void BuildImage(string sourcePath, string destPath) { System.Drawing.Image oldImage = System.Drawing.Image.FromFile(sourcePath); // Creo un nuovo oggetto Bitmap aggiungendo lo spazio per il bordo superiore Bitmap bitmap = new Bitmap(oldImage.Width, oldImage.Height + 20); Graphics graphic = Graphics.FromImage(bitmap); // Aggiungo l'immagine originale graphic.DrawImage(oldImage, 0, 20); // Creo il rettangolo che conterrà il testo graphic.FillRectangle(new SolidBrush(Color.White), 0, 0, bitmap.Width, 20); // Creo il testo all'interno del rettangolo graphic.DrawString("Sample Text", new Font(FontFamily.GenericSerif, 12), new SolidBrush(Color.Black), 0, 0); bitmap.Save(destPath); }

Rispondi quotando