Presentar un PDF desde un script en gvSIG

Hola a todos.

Ayer me preguntaron que se necesitaría para presentar un PDF desde un script de gvSIG. Le dedique unos minutitos y vi que la herramienta de HyperEnlace ya presentaba PDFs, así que pensé que no seria complicado usar esa funcionalidad suya para presentar desde un script mio un PDF.

Después de un poquito de prueba y error, acabe con el siguiente código:

from gvsig import *

#====================================================
#
# Codigo para visualizar un PDF
#
from org.gvsig.tools import ToolsLocator
from org.gvsig.tools.swing.api import ToolsSwingLocator
from java.io import File

def mostrar(ruta):
    tipo = "PDF_format"
    formatManagers = ToolsLocator.getExtensionPointManager().get("HyperLinkAction")
    pdfManager = formatManagers.get(tipo).create()
    panel = pdfManager.createPanel(File(ruta).toURI())    
    windowManager = ToolsSwingLocator.getWindowManager()
    windowManager.showWindow(panel,"Visor",windowManager.MODE.WINDOW)

#
# Fin codigo visualizacion PDF
#=============================================================================

def main(*args):
    mostrar("/tmp/midocumento.pdf")

Bueno aquí os lo dejo por si os sirve.

Si lo queréis usar, solo tenéis que pegar el código de la función mostrar con sus tres imports al inicio de vuestro sctipt y luego ya lo llamáis donde lo necesites igual que lo hago en la función main especificando la ruta a vuestro PDF.

Por cierto, requiere gvSIG 2.1.0 build 2217 o superior para funcionar.

Un saludo

Joaquin

About Joaquin del Cerro

Development and software arquitecture manager at gvSIG Team. gvSIG Association
This entry was posted in gvSIG Desktop, gvSIG development, scripting, spanish. Bookmark the permalink.

1 Response to Presentar un PDF desde un script en gvSIG

  1. Pingback: Scripting en gvSIG: Dialog con info de la entidad y abrir PDF | másquesig

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s