2010-05-03 31 views
5

Estoy dibujando imágenes en pdf usando el marco iText de Java. Necesito dibujar líneas de ancho especificado. Hay un método setLineWidth(float width) en la clase PdfContentByte que debería cambiarlo. Sin embargo, no importa qué valor pase como parámetro, las líneas dibujadas son siempre muy finas.¿Cómo cambiar el grosor de línea en iText?

Hay línea siguiente en javadoc de setLineWidth:

El ancho de línea especifica el espesor de la línea utilizada para contornear un trazado y se mide en unidades de espacio de usuario.

No sé lo que es "unidad espacial". Todo lo demás en iText parece medirse por puntos (alrededor de 1/72 de pulgada). No puedo encontrar ninguna referencia a lo que son esas "unidades espaciales" y cómo cambiarlas.

código:

to.setLineWidth(thickness); 
to.moveTo(x, y); 
to.lineTo(x + 100, y + 100); 

Variable to contiene instancia de PdfContentByte.

Respuesta

9

Resuelto. No hubo una llamada al método de trazo después de la línea para llamar. Es por eso que usó otro ancho de línea establecido justo antes de que se llamara el método Stoke. El código correcto es el siguiente:

to.setLineWidth(thickness); 
to.moveTo(x, y); 
to.lineTo(x + 100, y + 100); 
to.stroke(); 
Cuestiones relacionadas