none
Criar PDF RRS feed

  • Pergunta

  • Bom dia, mandaram-me fazer um ficheiro executável, em que o utilizador pode inserir imagens, informações,... já fiz isso tudo, já tenho o executável, porém falta-me um botão que diz "Criar PDF", ou seja é suposto aparecer esse ficheiro com as informações em PDF, para que depois possa ser publicado,... Já vi de tudo, usei iTextSharp, e só consigo fazer com que mostre uma frase...
    quinta-feira, 8 de junho de 2017 08:26

Respostas

Todas as Respostas

  • Bom dia, AnaMB

    A única coisa que falta então é algo para criar o pdf, isso? Quando você diz que mostra só uma frase, é no pdf? Isso?
    O que você precisa que apareça no PDF?


    • Marcado como Resposta AnaMB quinta-feira, 8 de junho de 2017 16:18
    • Não Marcado como Resposta AnaMB quinta-feira, 8 de junho de 2017 16:18
    • Editado Filipe Baqueta de Castro quinta-feira, 8 de junho de 2017 16:22
    quinta-feira, 8 de junho de 2017 12:38
  • Eu preciso que mostre todo o "ficheiro" que fiz no form, exatamente igual porém também com as informações que depois de executado o usuário preenche, é só isso que preciso que apareça no PDF. Já tentei e diz que o arquivo foi danificado, algo assim...
    quinta-feira, 8 de junho de 2017 16:16
  • Certo... Pode postar o código aqui? Para te ajudarmos.
    quinta-feira, 8 de junho de 2017 16:22
  • using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.IO;
    using iTextSharp.text;
    using iTextSharp.text.pdf;

    namespace Ficheiro
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                FontDialog fontDlg = new FontDialog();
                textBox2.Show();

                if (fontDlg.ShowDialog() == DialogResult.OK)
                {
                    this.textBox2.Font = fontDlg.Font;
                    button2.Show();
                    button3.Show();
                    MessageBox.Show("Atenção, depois que clicar no botão mudar, não poderá mudar novamente.");
                }

            }

            private void Form1_Load(object sender, EventArgs e)
            {
                textBox2.Hide();
                button2.Hide();
                button3.Hide();
                button5.Hide();
                button7.Hide();
            }

            private void button2_Click(object sender, EventArgs e)
            {

                label1.Font = textBox2.Font;

                if (label1.Font == textBox2.Font)
                {
                    label1.Text = textBox2.Text;
                    textBox2.Hide();
                    button1.Hide();
                    button2.Hide();
                    button3.Hide();
                }       
            }

            private void button3_Click(object sender, EventArgs e)
            {
                 label1.Font = textBox2.Font;

                if (label1.Font == textBox2.Font)
                {
                    label1.Text = textBox2.Text;
                }

            }

            private void button4_Click(object sender, EventArgs e)
            {
                FontDialog fontDlg2 = new FontDialog();
                if (fontDlg2.ShowDialog() == DialogResult.OK)
                {
                    this.textBox1.Font = fontDlg2.Font;
                    button5.Show();
                    MessageBox.Show("Atenção, depois que clicar no botão atualizar, não poderá mudar a fonte novamente.");
                }

            }

            private void button5_Click(object sender, EventArgs e)
            {
                button4.Hide();
                button5.Hide();
            }

            private void button6_Click(object sender, EventArgs e)
            {
                OpenFileDialog trocarimagem = new OpenFileDialog();
                trocarimagem.Filter = "Image files (*.jpg, *.jpeg, *.jpe, *.jfif, *.png) | *.jpg; *.jpeg; *.jpe; *.jfif; *.png";

                if (trocarimagem.ShowDialog() == DialogResult.OK)
                {
                    pictureBox2.ImageLocation = trocarimagem.FileName;
                    button7.Show();
                    MessageBox.Show("Atenção, depois que clicar no botão mudar não poderá mudar novamente a imagem.");
                }
            }

            private void button7_Click(object sender, EventArgs e)
            {
                button6.Hide();
                button7.Hide();

            }

            private void button8_Click(object sender, EventArgs e)
            {
                GerarPDF(@"c:\Users\ana-m\Desktop\teste.pdf");   
            }

            private void GerarPDF (string pCaminhoArquivoPDF)
            {
                Document documento = new Document();
                PdfWriter.GetInstance(documento, new FileStream(pCaminhoArquivoPDF, FileMode.Create));

                try
                {       
                    Paragraph p = new Paragraph(textBox1.Text);
                    documento.Open();
                    documento.Add(p);
                    documento.Close();
                }
                  catch (Exception e)
                {
                    MessageBox.Show(e.StackTrace);
                }
            }

                            
    quinta-feira, 8 de junho de 2017 16:27
  • AnaMB.

    De uma olhada nesses links: 

    http://csharp.net-informations.com/file/create-pdf.htm

    Você pode tentar implementar usando o PDFsharp também.

    Aqui você vai aprender como usar:

    https://stackoverflow.com/questions/1831794/how-to-add-pdfsharp-lib-in-c

    • Marcado como Resposta AnaMB quinta-feira, 8 de junho de 2017 16:54
    quinta-feira, 8 de junho de 2017 16:46
  • Muito obrigada pela sua ajuda, amanhã vou tentar usar o PDFsharp, e digo se funcionou ou não!
    quinta-feira, 8 de junho de 2017 16:54
  • Beleza, qualquer coisa to a disposição!
    quinta-feira, 8 de junho de 2017 16:57