Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Gustavo Moura

Gerador de Legendas

Recommended Posts

Gustavo Moura

Fala pessoal entao eu fiz um Gerador de memes ou legendas só que na hora de salvar eu nao consigo fazer com que a label salve junto com a picture box

é possivel isso ou n?

Sem%2Bt%25C3%25ADtulo.png

Download do programa Link

Share this post


Link to post
Share on other sites
ribeiro55

Possível é, mas não como imaginas.

Terás de desenhar as strings diretamente na imagem. Podes usar a GDI+ para o efeito.

Tens alguns exemplos na Wiki da comunidade, mas deixo-te aqui um exemplo bem básico:

       Dim texto As String = "P@P é que está a dar!"
       'isto é só para ir buscar uma imagem qualquer (a tua neste caso)
       Dim WC As New Net.WebClient()
       Dim ms As New IO.MemoryStream(WC.DownloadData("https://4.bp.blogspot.com/-gsD1qEf0GVo/V0XhDNsOW6I/AAAAAAAAAK0/daBOm9e1qHUTbhqTboi8s8Pbbc-QeWQMACKgB/s1600/Sem%2Bt%25C3%25ADtulo.png"))

       'definimos o texto a escrever
       Dim texto As String = "P@P é que está a dar!"
       'criamos um Bitmap com a informação da tua imagem
       Dim imagem As New Bitmap(ms)
       'preparamos uma superfície GDI com a imagem como base
       Dim g As Graphics = Graphics.FromImage(imagem)
       g.CompositingQuality = Drawing2D.CompositingQuality.HighQuality
       'definimos a font e a cor do brush
       Dim f As New Font("Arial", 14)
       Dim b As New SolidBrush(Color.Red)
       'medimos a string final, com aquela font, para saber o tamanho que irá ocupar
       Dim tamanho As SizeF = g.MeasureString(texto, f, imagem.Width)
       'calculamos a posição, com base no tamanho da imagem base e no tamanho que a string vai ocupar
       Dim posicao = New PointF((imagem.Width / 2) - (tamanho.Width / 2), imagem.Height - tamanho.Height - 10)
       'desenhamos a string na imagem
       g.DrawString(texto, f, b, posicao)
       'e gravamos a coisa
       imagem.Save("c:\teste.bmp")


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.