Trabajar con orientaciones de página y propiedades de paginación: módulo Python .docx

Requisito previo: trabajar con el módulo .docx

Los documentos de Word contienen texto con formato envuelto en tres niveles de objeto. Los objetos de ejecución de nivel más bajo, los objetos de párrafo de nivel medio y los objetos de documento de nivel más alto. Por lo tanto, no podemos trabajar con estos documentos usando editores de texto normales. Pero podemos manipular estos documentos de Word en python usando el módulo python-docx. El comando Pip para instalar este módulo es:

pip install python-docx

El módulo Python docx permite a los usuarios manipular documentos ya sea manipulando el existente o creando un nuevo documento vacío y manipulándolo. Es una herramienta poderosa ya que te ayuda a manipular el documento en gran medida.

Orientaciones de página

Para cambiar la orientación del documento de word hacemos uso del WD_ORIENT del módulo docx.enum.section . Y para llamar o establecer la orientación de la sección, usaremos el método de orientación de la clase de sección .

Sintaxis:

section.orientation = WD_ORIENT.[Orientation Type]

Hay dos tipos de orientaciones posibles.

No Señor.

Tipo de orientación

Descripción

1.

Retrato

Se utiliza para establecer la orientación a retrato.

2.

Paisaje

Se utiliza para establecer la orientación a paisaje.

Nota:

  • El retrato es la orientación predeterminada.
  • Los métodos de orientación solo se pueden usar en secciones, por lo que para usar uno, primero debe seleccionar una sección del documento de Word.

Ejemplo 1: Imprimir la orientación predeterminada del documento de Word.

Python3

# Import docx NOT python-docx
import docx
 
# Create an instance of a word document
doc = docx.Document()
 
# Selecting a section of the document
section = doc.sections[0]
 
# Printing the default orientation.
print("Default Orientation:", section.orientation)

Producción:

Default Orientation: PORTRAIT (0)

 

Ejemplo 2: Cambio de la orientación al paisaje por defecto.

Python3

# Import docx NOT python-docx
import docx
from docx.enum.section import WD_ORIENT
 
# Create an instance of a word document
doc = docx.Document()
 
# Selecting a section of the document
section = doc.sections[0]
 
# Printing the default orientation.
print("Default Orientation:",
      section.orientation)
 
# Changing the orientation to landscape
section.orientation = WD_ORIENT.LANDSCAPE
 
# Printing the new orientation.
print("New Orientation:",
      section.orientation)

Producción:

Default Orientation: PORTRAIT (0)
New Orientation: LANDSCAPE (1)

Propiedades de paginación

Las propiedades de paginación son las propiedades o estilos que controlan el comportamiento de los párrafos cerca de los límites de la página. Hay cuatro estilos de la función add_paragraph() en el módulo .docx que se incluye en esta categoría.

Sintaxis:

doc.add_paragraph(String s, style=None)

Parámetros:

  • String s: es la string de datos que se agregará como un párrafo. Esta string puede contener el carácter de nueva línea ‘ \n ‘, tabulaciones ‘ \t ‘ o un carácter de retorno de carro ‘ \r ‘.
  • Estilo: Se utiliza para establecer el estilo.

Los estilos que se incluyen en las propiedades de paginación son:

No Señor.

Nombre de estilo

Descripción

1.

mantenerse juntos

Mantiene el contenido del párrafo en una página.

2.

seguir_con_el_siguiente

Mantiene el contenido de un párrafo con otro párrafo posterior.

3.

página_descanso_antes

Mover un párrafo a una página nueva debido a un salto de página.

4.

viuda_control

Mantiene la primera y última línea del párrafo junto con el resto del párrafo. 

Nota: Los cuatro estilos se pueden configurar como verdadero, falso o ninguno. Verdadero significa «activado», Falso significa «desactivado» y Ninguno significa que la propiedad se hereda de la jerarquía de estilo.

Ejemplo 3: uso de keep_together en un párrafo de un documento de Word.

Python3

# Import docx NOT python-docx
import docx
 
# Create an instance of a word document
doc = docx.Document()
 
# Add a Title to the document
doc.add_heading('GeeksForGeeks', 0)
 
# Adding paragraph
para = doc.add_paragraph('GeeksforGeeks is a Computer Science portal for geeks.')
 
# Setting keep_together as True
para.keep_together = True
 
# Now save the document to a location
doc.save('gfg.docx')

Producción:

 

Ejemplo 4: uso de keep_with_next en un párrafo de un documento de Word.

Python3

# Import docx NOT python-docx
import docx
 
# Create an instance of a word document
doc = docx.Document()
 
# Add a Title to the document
doc.add_heading('GeeksForGeeks', 0)
 
# Adding paragraph
para = doc.add_paragraph('GeeksforGeeks is a Computer Science portal for geeks.')
 
# Setting keep_with_next as True
para.keep_with_next = True
 
# Now save the document to a location
doc.save('gfg.docx')

Producción:

 

Ejemplo 5: Usar page_break_before en un párrafo en un documento de Word.

Python3

# Import docx NOT python-docx
import docx
 
# Create an instance of a word document
doc = docx.Document()
 
# Add a Title to the document
doc.add_heading('GeeksForGeeks', 0)
 
# Adding paragraph
para = doc.add_paragraph('GeeksforGeeks is a Computer Science portal for geeks.')
 
# Setting page_break_before as True
para.page_break_before = True
 
# Now save the document to a location
doc.save('gfg.docx')

Producción:

Ejemplo 6: uso de control_viuda en un párrafo de un documento de Word.

Python3

# Import docx NOT python-docx
import docx
 
# Create an instance of a word document
doc = docx.Document()
 
# Add a Title to the document
doc.add_heading('GeeksForGeeks', 0)
 
# Adding paragraph
para = doc.add_paragraph('GeeksforGeeks is a Computer Science portal for geeks.')
 
# Setting widow_control as True
para.widow_control = True
 
# Now save the document to a location
doc.save('gfg.docx')

Producción:

Publicación traducida automáticamente

Artículo escrito por aditya_taparia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *