leo2012 Posted July 10, 2016 at 01:09 AM Report #597607 Posted July 10, 2016 at 01:09 AM Olá a todos, existe um método replace para imagens? Exemplo: texto = texto.Replace("<foto>", PictureBox1.Image) Deixando claro que esse método não funciona, pois "<foto>" é uma string e "PictureBox1.Image" é um objeto, esse é um exemplo, tem algum método de fazer essa substituição? Código completo: Dim texto As String Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click texto = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\modelo.rtf") texto = fileReader.Replace("<nome>", TextBox1.Text) 'texto = texto.Replace("<foto>", PictureBox1.Image) - Não funciona SaveFileDialog1.ShowDialog() End Sub
Muryllo Posted July 10, 2016 at 09:00 PM Report #597609 Posted July 10, 2016 at 09:00 PM (edited) Eu não sei nem como esse programa deve conseguir inicializar sem travar a memória do computador. Estás a ler o conteúdo de todo o arquivo que por sinal é BINÁRIO para dentro de uma string que nem matriz é, tentas modificar uma imagem que está salva como binário em um arquivo RTF e espera que com um replace consiga fazer isso ? A menos que você conheça alguma DLL que consiga fazer esse replace da imagem para você, terá então que buscar na lógica através dos bytes da imagem que estão dentro do arquivo. Olha o que acontece com a suposta "<foto>" a que você se refere quando é colocada no rtf : Não me recordo quanto a forma com que os bytes da imagem que variam de 0 a 255 são convertidos para esse tipo de código, mas esses números que vê no print são o que compõe a imagem. Agora imagine, estás a por tudo isso concatenado dentro da variável 'texto'. É impossível substituir desta forma a imagem dentro do arquivo rtf desta forma, mas, terás que ir mais fundo que isso. Edited July 10, 2016 at 09:03 PM by Muryllo
leo2012 Posted July 11, 2016 at 09:42 PM Author Report #597620 Posted July 11, 2016 at 09:42 PM Isso é oque acontece quando abre o RTF no bloco de notas, mas da maneira que estou fazendo se abrir o rtf no Word aparece tudo certinho, substitui todas as strings que eu quero, sem travar. O problema é só esse, que não consigo inserir uma imagem nesse documento.
leo2012 Posted July 12, 2016 at 12:24 AM Author Report #597625 Posted July 12, 2016 at 12:24 AM Na verdade oque eu quero fazer é um relatório com os dados que estão nos textbox, consegui isso com o Crystal Report, mas como estou começando agora, também parei nessa parte da imagem, consigo exportar os dados mas a imagem não vai
Muryllo Posted July 15, 2016 at 06:28 PM Report #597683 Posted July 15, 2016 at 06:28 PM (edited) O que eu quis dizer é : Não dá para inserir uma 'imagem' dentro de um arquivo através de uma string. Como você acha que funciona ? O bloco de notas abre o arquivos como um string array(), aquilo que apareceu no bloco de notas é o que você estava carregando para a memória física do computador ao fazer : texto = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\modelo.rtf") Quanto a imagem, creio que não deva quebrar a cabeça com isso, deve existir já alguma biblioteca para inserir ou excluir uma imagem do arquivo rtf. Não sei se o próprio .net já implementa isso, tenho que pesquisar. Olha isso vê se te ajuda em algo http://www.scriptbrasil.com.br/forum/topic/88223-como-manipular-arquivos-doc-ou-rtf-no-c/ Edited July 15, 2016 at 06:32 PM by Muryllo
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now