Open pholiveirasf opened 3 years ago
@pholiveirasf Instala este pacote: https://www.nuget.org/packages/System.Drawing.Common/
@carloscds BOM DIA!
Fiz a instalação, o erro foi resolvido.. no entanto.. nao gera o pdf estou enviando c# , e enviando assim:
retorno = boletoproxy.GerarBoletos(nomex, ref mensagemErro); Assert.AreEqual(true, retorno, "GerarBoletos: " + mensagemErro);
o retorno esta vindo como "true" ....
o que mais eu poderia fazer?
grato pela atençao
@pholiveirasf O que você esta usando para gerar o PDF ?
Carlos, desculpe a "ignorancia".. pois é a primeira vez tento usar a ferramenta...
eu chamo esta funcao, e eu entendi que ele geraria o pdf no local indicado no parametro "nomeArquivo"...
public virtual bool GerarBoletos(string nomeArquivo, ref string mensagemErro) { mensagemErro = ""; try { if (!setupOk) { mensagemErro = "Realize o setup da cobrança antes de executar este método."; return false; } if (string.IsNullOrWhiteSpace(nomeArquivo)) { mensagemErro = "Nome do arquivo não informado." + Environment.NewLine; return false; } if (quantidadeBoletos == 0) { mensagemErro = "Nenhum boleto encontrado." + Environment.NewLine; return false; } var extensaoArquivo = nomeArquivo.Substring(nomeArquivo.Length - 3).ToUpper(); if (extensaoArquivo != "HTM" && extensaoArquivo != "PDF") { mensagemErro = "Tipo do arquivo inválido: HTM ou PDF" + Environment.NewLine; return false; } var html = new StringBuilder(); foreach (Boleto boletoTmp in boletos) { BoletoBancario imprimeBoleto = new BoletoBancario { Boleto = boletoTmp, OcultarInstrucoes = false, MostrarComprovanteEntrega = true, MostrarEnderecoBeneficiario = true }; { html.Append("<div style=\"page-break-after: always;\">"); html.Append(imprimeBoleto.MontaHtmlEmbedded()); html.Append("
@pholiveirasf O projeto gera um HTML e você gera um PDF a partir dele.
bom dia @pholiveirasf
Da uma olhada no app teste BoletoNetCore.QuestPDF.AppTeste nos fontes do projeto.
Ele gera o PDF diretamente.
grato a todos... @marcianobandeira mais uma vez obrigado...
Como proceder o uso , adicionei na referencia do meu projeto o "BoletoNetCore.QuesPdf".. , deixo o "BoletoNetCore" também referenciado ?
como o "BoletoNetCore.QuesPdf"?
GRATO!
opss.. complementando... "como instanciar o "BoletoNetCore.QuesPdf"?"..
grato!! abç!
opss.. complementando... "como instanciar o "BoletoNetCore.QuesPdf"?"..
grato!! abç!
Vc pode tentar usando o código de exemplo no arquivo de testes do QuestPdf
O exemplo lá é uma Console Application que simula um boleto do Sicredi (mas funcionaria pra qualquer tipo de boleto, desde que vc aponte pro boleto correto)
Veja nessas linhas que aqui ocorre a chamada da geração de boletos, e a gravação do arquivo. Eu comentei algumas linhas pra demonstrar um pouco mais da funcionalidade
var boletos = Utils.GerarBoletos(banco, 4, "N", 10); // Use aqui a sua função de gerar boletos. Aqui usaram a deles.
var bytes = boletos.ImprimirCarnePdf(); //Aqui é onde o QuestPdf está sendo chamado. É um extension method pra classe Boletos. Vc precisará da referência dos dois projetos: Do Quest, e do BoletoNetCore.
Console.WriteLine("Pdf gerado, salvando arquivo...");
var fileName = Path.Combine(currentDir, "carne.pdf");
File.WriteAllBytes(fileName, bytes);
Console.WriteLine("Pdf gerado com sucesso: " + fileName);
Baixa o fonte e tenta executar esse projeto de teste do QuestPdf.AppTeste
, vai te dar uma clareada no processo.
parabens @marcianobandeira ficou muito bom , vou até implementar em meu projeto pois quero retornar o pdf diretamente pro front end pra download, sem salvar no servidor
obrigado @jonatanfelipesiqueira
Caros amigos.. estou tentando gerar o boleto e esta retornando o seguinte errro:
Não foi possível carregar arquivo ou assembly 'System.Drawing.Common, Version=4.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' ou uma de suas dependências. O sistema não pode encontrar o arquivo especificado.
tentei add a referencia, mas nao resolveu...
alguem ja passou por isso?