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