febrero 17, 2014

ReportLab: Platypus - Sobre los párrafos (14)

Paragraph(text, style, bulletText=None)

Evidentemente text es el texto a escribir. Algo importante y a destacar es que permite el uso de texto Python entre las triples comillas simples (''' y '''). bulletText provee al texto un punto y aparte por defecto para el párrafo. El tipo de letra y otras propiedades del texto se configuran en el argumento style, que es una instancia de la clase ParagraphStyle, y que pueden obtenerse y usarse de la siguiente forma:

from reportlab.lib.styles import ParagraphStyle, getSampleStyleSheet
estilo=getSampleStyleSheet()
estilo.add(ParagraphStyle(name = "ejemplo",  alignment=TA_CENTER, fontSize=20,
           fontName="Helvetica-BoldOblique"))

Los argumentos principales de la clase ParagraphStyle son:

class ParagraphStyle(PropertySet):
defaults = {
'fontName':'Times-Roman',  # Nombre de la fuente
'fontSize':10,  # Tamaño de fuente
'leading':12,  # Espaciado entre lineas
'leftIndent':0,  # Identación a la izquierda
'rightIndent':0,  # Identación a la derecha
'firstLineIndent':0,  # Primera linea identada
'alignment':TA_LEFT,  # Alineación
'spaceBefore':0,  # Espacio antes del párrafo (excepto en el top de un frame)
'spaceAfter':0,  # Espacio después del párrafo (excepto en botton de un frame)
'textColor': black,  # Color de Texto
'backColor':None,  # Color de fondo
'borderWidth': 0,  # Ancho de borde
'borderPadding': 0,  # Padding desde el borde
'borderColor': None,  # Color de Borde
'borderRadius': None,  # Radio de las intersecciones del borde
'bulletFontName':'Symbol',  # Nombre de la Fuente de la viñeta
'bulletFontSize':10,  # Tamaño de la viñeta
'bulletIndent':0,  # Identación de la viñeta
 }

Veamos un ejemplo en el que se muestra el uso de los atributos de párrafo, así como manejo de etiquetas de marcado XML, inserción de lista númeradas, plantillas de enumeración, viñetas y más. Para ello, puedes descargar el ejemplo.


1 comentario:

  1. La explicación empieza al reves. No se explica para que sirve este ParagraphStyle, dentro de que y/o con que herramientas fuciona, cual es la salida final, etc. Ademas el ejemplo incial es muy burdo, para que decir el ejemplo que se muetra dando clic al link, es innecesariamente extenso y no esta destinado a enseñar. ¿Sabias que el aprendizaje es gradual de lo mas simple a lo mas complejo?

    ResponderEliminar