Vi ser eller skapar många bilder för visuell information. Ibland behöver du lägga till eller rita text på en bild på ett sådant sätt att ingen annan kan ändra den texten. Bildvattenstämpel är ett av de vanligaste exemplen. Likaså kan märkning eller granskning av bilder också kräva ritning av text. Låt oss utforska de ytterligare användningsområdena för att rita text på bilder:
- Lägg till, infoga eller rita formaterad text på bild – C# API-installation
- Rita text som vattenstämpel på befintlig bild programmerat med C#
- Rita text på ny bild från början Programmatiskt i C#
Lägg till, infoga eller rita formaterad text på bild – C# API-installation
Aspose.Drawing for .NET API är ett 2D-grafikbibliotek som är kompatibelt med System.Drawing-paketet. Det stöder rendering av rektanglar, kurvor, linjer, text och annan grafik på bilderna. Det är inte beroende av något tredje parts bibliotek och kan därför användas i vilken miljö som helst. Till exempel kan den också användas för att rendera grafik i Linux eller Azure Functions V2 där System.Drawing-biblioteket inte stöds. Du kan installera Aspose.Drawing för .NET API genom att ladda ner det från avsnittet Nedladdningar eller via följande installationskommando:
PM> Install-Package Aspose.Drawing
Rita text som vattenstämpel på befintlig bild programmerat med C#
Textvattenstämpel på bild används ofta för att visa ägande, tillhörighet eller syfte med bilden. Du kan lägga till eller rita text som vattenstämpel på en befintlig bild med följande steg:
- Ladda befintlig ingångsbild
- Initiera klassobjektet Graphics
- Ställ in textformatering och text
- Rita text
- Spara utdatabild
Följande kod visar hur man ritar text som vattenstämpel på befintlig bild programmatiskt med C#:
// Ladda befintlig ingångsbild
Bitmap bitmap = new Bitmap(dataDir + @"Test.png");
// Initiera grafikklassobjekt
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
Brush brush = new SolidBrush(Color.FromKnownColor(KnownColor.Black));
// Deklarera pensel medan du anger färg
Pen pen = new Pen(Color.FromKnownColor(KnownColor.Blue), 1);
// Ställ in texttypsnitt
Font arial = new Font("Arial", 20, FontStyle.Regular);
// Ställ in text
string text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";
Rectangle rectangle = new Rectangle(100, 100, 800, 600);
graphics.DrawRectangle(pen, rectangle);
// Rita text
graphics.DrawString(text, arial, brush, rectangle);
// Spara utdatabild
bitmap.Save(RunExamples.GetDataDir() + @"TextFonts\DrawText_out.png");
Rita text på ny bild från början Programmatiskt i C#
Du kan behöva rita lite text i bildformat för olika ändamål. Som att du kanske vill hindra andra från att ändra eller kopiera textinnehåll. Du måste följa följande steg för att rita text på en ny bild:
- Initiera ny bild från början
- Initiera klassobjektet Brush
- Ställ in teckensnitt, storlek, etc.
- Rita text on the image
- Spara utdatabild
Kodavsnittet nedan visar hur man ritar text på en ny bild från början programmatiskt med C#-språket:
// Initiera ny bild från början
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
graphics.Clear(Color.FromKnownColor(KnownColor.White));
// Initiera Brush-klassobjekt
Brush brush = new SolidBrush(Color.FromKnownColor(KnownColor.Black));
Pen pen = new Pen(Color.FromKnownColor(KnownColor.Blue), 1);
// Ställ in teckensnitt, storlek, etc.
Font arial = new Font("Arial", 20, FontStyle.Regular);
string text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";
Rectangle rectangle = new Rectangle(100, 100, 800, 600);
graphics.DrawRectangle(pen, rectangle);
// Rita text på bilden
graphics.DrawString(text, arial, brush, rectangle);
// Spara utdatabild
bitmap.Save(RunExamples.GetDataDir() + @"TextFonts\DrawText_out.png");
Slutsats
I den här artikeln har vi lärt oss hur man lägger till eller ritar text på bilder. Du kan rita textvattenstämpel i befintliga såväl som nya bilder från grunden utan att behöva installera någon applikation från tredje part. Dessutom kan du bearbeta många bildformat inklusive JPG, PNG, BMP, Icon, Tiff, etc. API:et erbjuder flera funktioner för att bearbeta ritningar och grafik enligt dina krav. Du kan besöka Exempelprojektet som vi har designat som ett skyltfönster för olika scenarier. Vänligen kontakta oss när som helst via Free Support Forums om du har några problem. Skål!
Se även
Info: Aspose utvecklade nyligen en GRATIS Text to GIF Converter.