2012-06-28 44 views
16

¿Cómo se incluye un hipervínculo (URL) en un PDF que enlaza con un sitio externo?Crear un hipervínculo externo de URL con JasperReports

Usando una cadena simple como "http://www.stackoverflow.com", se genera automáticamente un enlace. Pero, ¿cómo puedo usar una URL como <a href="http://www.stackoverflow.com">Click here</a>?

Si utilizo esta cadena HTML, Jaspers crea un enlace pero también muestra el código.

Uso de JasperReports 4.0.4 y iReport 4.5.1.

Respuesta

25

Para convertir un textField en un hipervínculo a una URL externa, debe agregar el atributo hyperlinkType="Reference" al elemento y agregarle una etiqueta <hyperlinkReferenceExpression>. La expresión de referencia es donde pones la URL.

Por ejemplo:

<textField hyperlinkType="Reference" hyperlinkTarget="Blank"> 
    <reportElement x="5" y="5" width="200" height="15"/> 
    <textElement/> 
    <textFieldExpression class="java.lang.String"><![CDATA["Click Here!"]]></textFieldExpression> 
    <hyperlinkReferenceExpression><![CDATA["http://www.google.com"]]></hyperlinkReferenceExpression> 
</textField> 

El atributo hyperlinkTarget se comporta de la misma manera que el atributo target en HTML.

Tenga en cuenta que solo los campos de texto, las imágenes y los gráficos se pueden hipervínculo de esta manera.

Para una explicación más detallada y más ejemplos, vea this jasperforge page.

1

Por alguna razón, el ejemplo proporcionado no funcionó. Usé wayback machine y encontré el siguiente fragmento que funcionó:

<textField hyperlinkType="Reference"> 
    <reportElement x="5" y="95" width="300" height="15"/> 
    <textFieldExpression class="java.lang.String">" >> Click here to go to www.google.com"</textFieldExpression> 
    <hyperlinkReferenceExpression>"http://www.google.com 
</hyperlinkReferenceExpression> 
    </textField> 
Cuestiones relacionadas