245 lines
3.7 KiB
Markdown
245 lines
3.7 KiB
Markdown
+++
|
|
title = "Métodos"
|
|
weight = 2
|
|
+++
|
|
|
|
### new
|
|
|
|
Crear nuevo documento, la aplicación predeterminada es Calc.
|
|
|
|
```python
|
|
doc = app.docs.new()
|
|
app.debug(doc.type)
|
|
```
|
|
|
|
Para un nuevo documento `writer`.
|
|
|
|
```python
|
|
doc = app.docs.new('writer')
|
|
app.debug(doc.type)
|
|
```
|
|
|
|
Otros documentos.
|
|
|
|
```python
|
|
doc = app.docs.new('draw')
|
|
app.debug(doc.type)
|
|
|
|
doc = app.docs.new('impress')
|
|
app.debug(doc.type)
|
|
|
|
doc = app.docs.new('math')
|
|
app.debug(doc.type)
|
|
```
|
|
|
|
Crear con argumentos.
|
|
|
|
```python
|
|
propiedades = {'Hidden': True}
|
|
doc = app.docs.new('writer', propiedades)
|
|
mensaje = f'{doc.type} - {doc.title}'
|
|
app.msgbox(mensaje)
|
|
doc.visible = True
|
|
```
|
|
|
|
{{% notice tip %}}
|
|
No es necesario que el documento este visible para manipularse.
|
|
{{% /notice %}}
|
|
|
|
|
|
### open
|
|
|
|
Abrir archivos.
|
|
|
|
```python
|
|
ruta = '/home/mau/Mi_archivo.ods'
|
|
doc = app.docs.open(ruta)
|
|
```
|
|
|
|
{{% notice tip %}}
|
|
No es necesario pasar las rutas en formato URL.
|
|
{{% /notice %}}
|
|
|
|
|
|
Puede abrir cualquier archivo que sea soportado por LibreOffice.
|
|
|
|
```python
|
|
ruta = '/home/mau/ejemplo.xlsx'
|
|
doc = app.docs.open(ruta)
|
|
```
|
|
|
|
Abrir con argumentos.
|
|
|
|
```python
|
|
ruta = '/home/mau/ejemplo.ods'
|
|
argumentos = {'Password': 'siscaloburropanzon'}
|
|
doc = app.docs.open(ruta, argumentos)
|
|
```
|
|
|
|
|
|
### save
|
|
|
|
Guardar un nuevo documento.
|
|
|
|
```python
|
|
path = '/home/mau/nuevo_documento.ods'
|
|
doc = app.docs.new()
|
|
doc.save(path)
|
|
```
|
|
|
|
Cualquier archivo, previamente guardado, que sea modificado puede ser guardado con:
|
|
|
|
```python
|
|
doc.save()
|
|
```
|
|
|
|
Abrir un archivo existente y guardarlo con otro nombre.
|
|
|
|
```python
|
|
ruta = '/home/mau/ejemplo.ods'
|
|
doc = app.docs.open(ruta)
|
|
nueva_ruta = '/home/mau/otro_nombre.ods'
|
|
doc.save(nueva_ruta)
|
|
```
|
|
|
|
|
|
### close
|
|
|
|
Cerrar un archivo.
|
|
|
|
```python
|
|
doc = app.docs.new()
|
|
app.msgbox(doc.title)
|
|
doc.close()
|
|
```
|
|
|
|
|
|
### to_pdf
|
|
|
|
Exportar a PDF.
|
|
|
|
```python
|
|
doc = app.active
|
|
ruta = '/home/mau/ejemplo.pdf'
|
|
doc.to_pdf(ruta)
|
|
```
|
|
|
|
Si no se establece una ruta, se devuelve el PDF en memoria.
|
|
|
|
```python
|
|
doc = app.active
|
|
pdf = doc.to_pdf()
|
|
app.debug(pdf)
|
|
```
|
|
|
|
|
|
Mire las [opciones del filtro de exportación a PDF][1], puede pasarlas como un diccionario como segundo argumento de este método.
|
|
|
|
|
|
### export
|
|
|
|
Exportar a otros formatos.
|
|
|
|
```python
|
|
doc = app.docs.new()
|
|
ruta = '/home/mau/miarchivo.xlsx'
|
|
filtro = 'xlsx'
|
|
doc.export(ruta, filtro)
|
|
|
|
ruta = '/home/mau/miarchivo.xls'
|
|
filtro = 'xls'
|
|
doc.export(ruta, filtro)
|
|
|
|
doc = app.docs.new('writer')
|
|
ruta = '/home/mau/miarchivo.docx'
|
|
filtro = 'docx'
|
|
doc.export(ruta, filtro)
|
|
|
|
ruta = '/home/mau/miarchivo.doc'
|
|
filtro = 'doc'
|
|
doc.export(ruta, filtro)
|
|
|
|
ruta = '/home/mau/miarchivo.rtf'
|
|
filtro = 'rtf'
|
|
doc.export(ruta, filtro)
|
|
```
|
|
|
|
Exportar en memoria.
|
|
|
|
```python
|
|
doc = app.docs.new()
|
|
filtro = 'xlsx'
|
|
excel_doc = doc.export(filter_name=filtro)
|
|
```
|
|
|
|
|
|
### set_focus
|
|
|
|
Enviar el foco al documento.
|
|
|
|
```python
|
|
for doc in app.docs:
|
|
app.debug(doc.title)
|
|
doc.set_focus()
|
|
app.sleep(1)
|
|
```
|
|
|
|
|
|
### copy
|
|
|
|
Copiar la selección activa al portapapeles.
|
|
|
|
```python
|
|
doc = app.active
|
|
doc.copy()
|
|
```
|
|
|
|
|
|
### paste
|
|
|
|
Copiar el contenido del portapapeles, en la selección actual.
|
|
|
|
```python
|
|
doc = app.active
|
|
doc.paste()
|
|
```
|
|
|
|
|
|
### paste_special
|
|
|
|
Mostrar el cuadro de diálogo `Pegado Especial`.
|
|
|
|
{{% notice tip %}}
|
|
Solo se mostrará si existe contenido en el portapapeles.
|
|
{{% /notice %}}
|
|
|
|
```python
|
|
doc = app.active
|
|
doc.paste_special()
|
|
```
|
|
|
|
|
|
### paste_values
|
|
|
|
Pegar solo los valores.
|
|
|
|
```python
|
|
doc = app.active
|
|
doc.paste_values()
|
|
```
|
|
|
|
Si el destino no esta vacío, el usuario verá el cuadro de mensaje de confirmación.
|
|
|
|
|
|
### clear_undo
|
|
|
|
La mayoría de las acciones realizadas por código, quedan en el historial de acciones, por lo que el usuario puede deshacerlas. Para eviar esto se puede limpiar este historial.
|
|
|
|
```python
|
|
doc = app.active
|
|
doc.clear_undo()
|
|
```
|
|
|
|
|
|
[1]: https://wiki.documentfoundation.org/Macros/Python_Guide/PDF_export_filter_data
|