quarta-feira, 28 de janeiro de 2009

Possível causa para a mensagem "The document has no pages" do iText

Buenas moçada, tempão louco que não mantenho atualizado este blog, mas como todos, é sempre a velha desculpa esfarrapada de "falta de tempo".
Bem, pretendo utilizar este espaço mais vezes pra relatar a solução de alguns pequenos problemas que enfrento no cotidiano referente à desenvolvimento de software, mais precisamente na codificação ou programação.
É uma grande pena que no momento tenha que estar utilizando um ambiente não-livre e ferramentas da mesma forma para desenvolvimento: windows xp e visual web developer 2008 express edition.
Estou procurando, em paralelo, utilizar também php e java, para tanto até já tenho um ambiente virtualizado com VirtualBox e meu querido Debian Lenny.
Acontece, que atualmente, minhas maiores dores de cabeça foram com o ambiente "oficial" e já passo a esclarecer um deles.
Estou utilizando iTextSharp para gerar pdf em um sistema asp.net. Só para registrar tenho utilizado c# pela semalhança com java. Tudo tranquilo em meu ambiente de desenvolvimento (windows xp 32bits e servidor asp.net embutido do visual web developer) até que fiz o deploy em um servidor windows 2003 64 bits e iis 6 (em um post futuro falo mais sobre outra saga neste ambiente), aí começaram a ocorrer os famigerados "The document has no pages" sempre quando da execução do método .Close() do documento pdf. Sempre era gerado um arquivo pdf, no meu caso Notificacao.pdf, com 0 bytes. Bom, depois de tanto fuçar descobri que era um problema com a chamada FontFactory.GetFont(Font.HELVETICA), ou seja, alguns procuras no google indicavam que poderia ser problema com fontes e realmente eram. Passei a utiliar as chamadas como descrita abaixo:

Chunck chunk = new Chunk("Notificação de Débito de Celular", FontFactory.GetFont("Verdana", 18, iTextSharp.text.Font.BOLD));

Problema resolvido!

Até um novo post.

Nenhum comentário: