Adicionar texto às imagens é uma ótima maneira de adicionar contexto, marca ou até mesmo um pouco de diversão. Ele pode ser usado para criar memes, postagens em mídias sociais, materiais de marketing e muito mais. Nesta postagem do blog, aprenderemos como adicionar texto a imagens em C#. Orientaremos você passo a passo sobre como escrever em fotos ou outras imagens no formato JPG ou PNG. Então vamos começar!
Este artigo cobre os seguintes tópicos:
- API C# para adicionar texto a imagens
- Adicionar texto a imagens JPG
- Adicionar texto a imagens PNG
- Adicionar legenda às fotos
- Escrever texto na imagem online
- Adicionar texto à imagem – Recursos de aprendizagem
API C# para adicionar texto a imagens
Usaremos Aspose.Drawing for .NET para adicionar texto às imagens. É uma biblioteca gráfica 2D poderosa e versátil que permite aos desenvolvedores criar e manipular gráficos em uma ampla variedade de aplicações. Aspose.Drawing for .NET oferece suporte a uma ampla gama de operações de manipulação de imagens, como corte, redimensionamento, rotação, inversão e marca d’água. É uma ótima opção para desenvolvedores que precisam de uma biblioteca gráfica multiplataforma e de alto desempenho para seus aplicativos .NET.
Por favor baixe a DLL da API ou instale-a usando NuGet.
PM> Install-Package Aspose.Drawing
Adicionar texto à imagem JPG em C#
Podemos adicionar texto a imagens JPG seguindo as etapas abaixo:
- Carregue uma imagem JPG usando a classe Bitmap.
- Crie um novo objeto Graphics a partir do objeto Bitmap usando o método FromImage().
- Inicialize um objeto da classe SolidBrush com a cor de texto especificada.
- Defina um objeto de classe Font com a família de fonte, estilo e tamanho desejado para o texto.
- Opcionalmente, inicialize um objeto Rectangle.
- Depois disso, chame o método DrawString() com o texto para mostrar os objetos das classes Font, Brush e Rectangle como argumentos.
- Finalmente, salve a imagem de saída usando o método Save().
O exemplo de código a seguir mostra como adicionar texto a uma imagem JPG em C#.
// Carregue a imagem
Bitmap bitmap = new Bitmap("C:\\Files\\Sample_JPG.jpg");
Graphics graphics = Graphics.FromImage(bitmap);
// Definir cor do texto
Brush brush = new SolidBrush(Color.DarkBlue);
// Definir fonte do texto
Font arial = new Font("Arial", 25, FontStyle.Regular);
// Texto a ser exibido
string text = "Hello, this is a sample text!";
// Definir retângulo
Rectangle rectangle = new Rectangle(100, 100, 450, 100);
// Desenhe texto na imagem
graphics.DrawString(text, arial, brush, rectangle);
// Salve o arquivo de saída
bitmap.Save("C:\\Files\\DrawTextOnJpg.jpg");
Adicionar texto à imagem PNG em C#
Da mesma forma, podemos adicionar texto a imagens PNG seguindo as etapas mencionadas anteriormente. No entanto, precisamos carregar uma imagem PNG na primeira etapa.
O exemplo de código a seguir mostra como adicionar texto a uma imagem PNG em C#.
// Carregue a imagem
Bitmap bitmap = new Bitmap("C:\\Files\\Sample_PNG.png");
Graphics graphics = Graphics.FromImage(bitmap);
// Definir cor do texto
Brush brush = new SolidBrush(Color.Red);
// Definir fonte do texto
Font arial = new Font("Arial", 30, FontStyle.Regular);
// Texto a ser exibido
string text = "Hello, this is a sample text!";
// Definir retângulo
Rectangle rectangle = new Rectangle(400, 1500, 1600, 150);
// Especifique a borda do retângulo
Pen pen = new Pen(Color.White, 2);
// Desenhar retângulo
graphics.DrawRectangle(pen, rectangle);
// Desenhe texto na imagem
graphics.DrawString(text, arial, brush, rectangle);
// Salve o arquivo de saída
bitmap.Save("C:\\Files\\DrawText.png");
Adicionar legenda às fotos - Adicionar texto à foto
Também podemos adicionar uma legenda às fotos seguindo as etapas abaixo:
- Carregue uma imagem fotográfica usando a classe Bitmap.
- Crie um novo bitmap com o tamanho da imagem carregada com adição de um retângulo para legenda.
- Crie um novo objeto Graphics a partir do objeto Bitmap usando o método FromImage().
- Desenhe a imagem carregada na imagem recém-criada usando o método DrawImage().
- Desenhe um retângulo preenchido para a caixa de legenda.
- Especifique o formato da string de texto usando a classe StringFormat.
- Defina o texto, sua cor e fonte
- Depois disso, chame o método DrawString() com o texto para mostrar os objetos das classes Font, Brush e Rectangle como argumentos.
- Finalmente, salve a imagem de saída usando o método Save().
O exemplo de código a seguir mostra como adicionar uma legenda a uma foto em C#.
// Carregue a imagem
Bitmap bitmap = new Bitmap("C:\\Files\\tower.jpg");
var imageHeight = bitmap.Height;
var imageWidth = bitmap.Width;
var textHeight = 50;
// Crie um novo bitmap com o tamanho da imagem carregada + retângulo para legenda
Bitmap img = new Bitmap(imageWidth, imageHeight + textHeight, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(img);
// Desenhe a imagem carregada na imagem recém-criada
graphics.DrawImage(bitmap, 0, 0);
// Desenhe um retângulo para a caixa de legenda
Rectangle rectangle = new Rectangle(0, imageHeight, imageWidth, textHeight);
Brush fillColor = new SolidBrush(Color.White);
Pen pen = new Pen(Color.White, 2);
graphics.DrawRectangle(pen, rectangle);
graphics.FillRectangle(fillColor, rectangle);
// Especifique o formato da string de texto
StringFormat stringFormat = new StringFormat();
stringFormat.Alignment = StringAlignment.Center;
stringFormat.LineAlignment = StringAlignment.Center;
// Cor do texto
Brush textColor = new SolidBrush(Color.Black);
// Fonte do texto
Font arial = new Font("Arial", 18, FontStyle.Regular);
// Texto a ser exibido
string text = "Hello, this is a sample text!";
// Desenhar texto
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
graphics.DrawString(text, arial, textColor, rectangle, stringFormat);
// Salve a saída
img.Save("C:\\Files\\DrawTextOnPhoto.jpg");
Obtenha licença gratuita
Você pode obter uma licença temporária gratuita para experimentar o Aspose.Drawing for .NET sem limitações de avaliação.
Escreva texto na imagem online
Você também pode experimentar um aplicativo da web gratuito adicionar texto à imagem online. Sua interface amigável torna fácil e simples escrever texto em imagens sem instalar nenhum software extra, criar uma conta ou assinar nada.
Adicionar texto à imagem – recursos de aprendizagem gratuitos
Você pode aprender mais sobre como adicionar texto a imagens e exibir gráficos vetoriais em imagens raster, além de vários outros recursos da biblioteca, usando os recursos abaixo:
- Guia do desenvolvedor Aspose.Drawing
- Aplicativos on-line gratuitos
- Referência da API
- Guias de instruções e artigos
Conclusão
Nesta postagem do blog, mostramos como adicionar texto a imagens em C#. Abordamos o básico, bem como algumas técnicas mais avançadas para escrever texto em fotos e imagens de forma programática. Além disso, introduzimos uma ferramenta online gratuita para adicionar texto a imagens em qualquer lugar. Em caso de qualquer ambigüidade, sinta-se à vontade para nos contatar em nosso fórum de suporte gratuito.