IMPRIMIR PICTUREBOX COM TEXTOS
Olá pessoal.
Tenho uma imagem na qual preciso colocar alguns textos e imprimir.
Achei um exemplo para inserir o texto no picturebox :
Dim g As Graphics = PictureBox1.CreateGraphics
Dim x As Integer = 100
Dim y As Integer = 150
g.DrawString([Ô]Hello.[Ô], New Font([Ô]Arial[Ô], 12), Brushes.Black, x, y)
Mas quando tento imprimir, apenas a imagem é impressa.
e.Graphics.DrawImage(PictureBox1.Image, e.MarginBounds.Left, e.MarginBounds.Top)
Alguém teria algum exemplo ou dica de como posso fazer isso ?
Grato,
Renê
Tenho uma imagem na qual preciso colocar alguns textos e imprimir.
Achei um exemplo para inserir o texto no picturebox :
Dim g As Graphics = PictureBox1.CreateGraphics
Dim x As Integer = 100
Dim y As Integer = 150
g.DrawString([Ô]Hello.[Ô], New Font([Ô]Arial[Ô], 12), Brushes.Black, x, y)
Mas quando tento imprimir, apenas a imagem é impressa.
e.Graphics.DrawImage(PictureBox1.Image, e.MarginBounds.Left, e.MarginBounds.Top)
Alguém teria algum exemplo ou dica de como posso fazer isso ?
Grato,
Renê
RENE9000 após estas alteações na imagem acredito que você tem de salvar antes de imprimir faz um teste. pois a imagem carregada não e a mesma da alterada.
Oi galera....
Encontrei uma forma de colocar um ou mais textos em uma imagem de forma bem eficiente.
E de fato, o Madmax estava certo, para efetivar a implementação, é necessário salvar uma nova cópia.
Agora uma outra questão, estou colocando o texto de forma fixa em um determinado ponto, mas existe alguma forma de centralizar esse texto relativamente ao tamanho do desenho ?
Abaixo o código que adaptei:
Dim image As Image
Dim graphics As Graphics
Dim font As Font
Dim point As PointF
image = Drawing.Image.FromFile([Ô]C:\imagem.jpg[Ô])
graphics = Drawing.Graphics.FromImage(image)
font = New Font([Ô]Times New Roman[Ô], 20.0F)
point = New PointF(1000, 650)
graphics.DrawString([Ô]Informamos que[Ô], font, Brushes.Black, point)
font = New Font([Ô]Times New Roman[Ô], 24.0F)
point = New PointF(1000, 800)
graphics.DrawString([Ô]Sr. José da Silva[Ô], font, Brushes.Black, point)
image.Save([Ô]C:\Imagem2.jpg[Ô])
Process.Start([Ô]C:\Imagem2.jpg[Ô])
Encontrei uma forma de colocar um ou mais textos em uma imagem de forma bem eficiente.
E de fato, o Madmax estava certo, para efetivar a implementação, é necessário salvar uma nova cópia.
Agora uma outra questão, estou colocando o texto de forma fixa em um determinado ponto, mas existe alguma forma de centralizar esse texto relativamente ao tamanho do desenho ?
Abaixo o código que adaptei:
Dim image As Image
Dim graphics As Graphics
Dim font As Font
Dim point As PointF
image = Drawing.Image.FromFile([Ô]C:\imagem.jpg[Ô])
graphics = Drawing.Graphics.FromImage(image)
font = New Font([Ô]Times New Roman[Ô], 20.0F)
point = New PointF(1000, 650)
graphics.DrawString([Ô]Informamos que[Ô], font, Brushes.Black, point)
font = New Font([Ô]Times New Roman[Ô], 24.0F)
point = New PointF(1000, 800)
graphics.DrawString([Ô]Sr. José da Silva[Ô], font, Brushes.Black, point)
image.Save([Ô]C:\Imagem2.jpg[Ô])
Process.Start([Ô]C:\Imagem2.jpg[Ô])
Tópico encerrado , respostas não são mais permitidas