Prawn::Errors::CannotFit (Resolvido)
Estou começando a desenvolver um módulo de relatórios em meu projeto Rails para impressão de memorando e o principal problema que encontrava é a quebra de linha automática nas tabelas ou grids, usava o RGhost do Shairon, mas infelizmente isso não era possível.
Li algo sobre o Prawn e achei interessante, peguei um exemplo e bingo, ele fazia essa quebra de linha automática, então comecei a fazer outros testes como tamanho da string que cada célula suportaria, achei o que procurava mais problema rsrsr, não entendia o porquê , mas a partir de um certo número de caracteres ela lançado uma exceção que gerava esse erro (Prawn::Errors::CannotFit) descobrir que o problema era na coluna que era achatada e o Prawn não entendia até onde ele poderia renderizar o texto, algo do gênero isso me ajudou a encontrar uma solução "dizer" ao Prawn até onde ele deveria ir, ou seja fixar uma largura para as minhas colunas.
Simples assim:
[ruby]
pdf.table( itens_memo,
:headers =>["Item", "Quant","Compra","Serviço"],
:font_size =>10,
:vertical_padding =>2,
:horizontal_padding => 5,
:column_widths =>{ 0 => 40, 1 =>40, 2 => 230, 3 =>230},
:border_style=>:grid
)
[/ruby]