Neste artigo vou explicar como
gerar um arquivo PDF utilizando c#. Vamos utilizar uma classe free chamada
REPORTS.NET (http://csharp-source.net/open-source/pdf-libraries/report.net).
Essa classe é opensource e pode ser baixada do site: http://report.sourceforge.net/.
Primeiro vamos iniciar um novo projeto:

Primeiro vamos selecionar a opção
Visual C# da área Project types e no Templates, escolheremos a opção Windows
Application.
O nome dele será GERA_PDF, após
dar o nome ao projeto vamos clicar em OK !
Depois temos que incluir a classe
nas referências do projeto. Primeiro selecionamos a aba SOLUTION EXPLORER e
depois vamos clicar o botão direito do mouse na opção REFERENCES e selecionar
ADD REFERENCES.
OBS: Nesta opção podemos incluir
diversas classes no nosso projeto, podemos também incluir uma classe do Visual
Basic, assim podemos utilizar algumas funções que o VB possui.

Será exibida a janela do Add
Reference, nela você terá que ir para a aba BROWSE, para poder navegar entre as
pastas do seu computador e selecionar o arquivo baixado pelo site.
Após selecionar o arquivo
desejado, clique no botão OK.

Vamos agora para o formulário do
projeto, vamos montar um layout para que o usuário informe algumas informações
para que o arquivo seja gerado. Abaixo segue um modelo!

Depois de montar a tela do
programa, vamos para o código do aplicativo. Primeiramente precisamos incluir a
classe no inicio da pagina de código do formulário. Para acessar a pagina de
código do formulário, você pode clicar duas vezes na área do formulário ou
clicar o botão direito do mouse e selecionar VIEW CODE.
Precisamos inserir a linha que
está na cor vermelha:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using
Root.Reports;
Agora vamos codificar o botão
[GERAR ARQUIVO], para isso temos que voltar para o design do formulário, clique
o botão direito do mouse e selecione VIEW DESIGNER. Após isso clique duas vezes
no botão para abrir o método btnGerar_Click().
Segue abaixo como o evento do
botão deve ficar:
private void btnGerar_Click(object
sender, EventArgs e)
{
// Variavel do Nome e caminho do
arquivo
string vArq = "";
// Abre janela para usuário escolher a
pasta onde o arquivo será gerado
FolderBrowserDialog vSalvar = new
FolderBrowserDialog();
// Verifica se o usuário clicou em ok
ou cancelar na janela de seleção da pasta
if (vSalvar.ShowDialog() ==
DialogResult.Cancel)
return; // Cancela todo processo
// Insere na variavel o caminho
selecionado pelo usuário e concatena com o nome do arquivo
vArq = vSalvar.SelectedPath +
"\\" + txtNomeArquivo.Text.Trim() + ".pdf";
try
{
// Cria um objeto PDF
Report vPdf = new Report(new PdfFormatter());
// Define a fonte que sera usada no relatório PDF
FontDef vDef = new FontDef(vPdf, FontDef.StandardFont.TimesRoman);
FontProp vDrop = new FontProp(vDef, 10);
// Cria uma Nova Pagina
Page vPage = new Page(vPdf);
// Escreve no Arquivo
vPage.AddCB_MM(5, new RepString(vDrop, txtTextoArquivo.Text)); //
Centraliza
// Salvar Arquivo no disco
vPdf.Save(vArq);
MessageBox.Show("Arquivo Gerado com sucesso !",
"Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show("Erro ao Gerar arquivo !!",
"Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
Exemplo
do aplicação funcionando.
1 –
Informar o Nome do arquivo
2 –
Digitar o Texto que será gravado no arquivo
3 –
Clicar em gerar

Após
isso será exibida a janela para selecionar onde o arquivo será gerado, e ao
clicar em ok será exibida uma mensagem avisando se tudo ocorreu bem ou se deu
algum tipo de erro.
Segue o exemplo do arquivo gerado pelo sistema:
