Página 1 de 1

Salto de línea en PDF

NotaPublicado: 2019-11-29 08:53 @411
por alvilazaro
¡Hola a todos!

Tengo una consulta... estoy generando un pdf con un campo llamado detalle, su maxlength es de 260 caracteres.
Pero al imprimir el pdf, nunca hace el salto de línea y no se puede ver todo lo que yo escribí dentro del campo detalle.

El código es el siguiente:

my $detx = $page->text;
$detx->textlabel(80, 280 ,$fnt, 12 , $detalle_voucher, -align=>'left');

¡Muchas gracias!

Re: Salto de línea en PDF

NotaPublicado: 2019-11-29 14:11 @633
por explorer
No sabemos con qué módulo estás creando el PDF.

No recuerdo algún módulo que permita poner un salto de línea. Más bien, hay que calcular la posición en pantalla de la siguiente línea y pintarla.

Re: Salto de línea en PDF

NotaPublicado: 2019-12-02 09:24 @433
por alvilazaro
¡Hola, explorer!

Yo tengo la variable $detalle_voucher que viene de un campo texto, que tiene una limitación de 200 caracteres.

¿Cómo podría hacer para que cada 50 caracteres, haga un salto de línea para que quede prolijo a la hora de imprimirlo en pantalla (en este caso en PDF)?

¡Gracias de ante mano!

Re: Salto de línea en PDF

NotaPublicado: 2019-12-02 10:46 @490
por explorer
Cuando respondas a la pregunta anterior.

Re: Salto de línea en PDF

NotaPublicado: 2019-12-02 12:12 @550
por alvilazaro
Estoy usando PDF::API2.

Re: Salto de línea en PDF

NotaPublicado: 2019-12-02 13:08 @589
por explorer
En teoría debería usarse el método text(), tal como se comenta en la sección Text-Showing del manual de PDF::API2::Content, pero no como lo estás usando tú. Sería algo así:

my $pdf = PDF::API2->new();
my $page = $pdf->page();

# Add a new content object
my $content = $page->text();

$width = $content->text($detalle_voucher);

pero antes debes indicar el tamaño de la línea o tamaño de la separación de líneas, usando los métodos distance(), cr() y nl(), como se comenta en la sección Text-Positioning del mismo manual.

Pero también se puede hacer con el método section(). Aquí tienes un par de ejemplos. También se comenta ahí que no funcionan los caracteres de nueva línea con el método textlabel().

La distribución PDF::API2 trae algunos ejemplos. Hay un script para pasar de texto a pdf, usando solo el método text() e indicando antes la separación entre línea (leading).

Re: Salto de línea en PDF

NotaPublicado: 2019-12-03 13:35 @607
por alvilazaro
¡Muchas gracias, explorer! Excelente como siempre.