Aspose.Slides para JasperReports

Aspose.Slides for JasperReports

Aspose.Slides for JasperReports añade exportadores de PowerPoint a JasperReports Library y JasperReports Server, de modo que las aplicaciones Java y los servidores de informes pueden guardar informes completados como presentaciones sin Microsoft PowerPoint.

Exporta un informe completado a PPT y PPTX, una diapositiva por página de informe, y también a PDF y HTML.



Tu primera exportación

Estos pasos compilan un informe de una línea, lo rellenan y lo exportan a PPTX con JasperReports 6.16.0 desde Maven Central. Necesitas JDK 11 o posterior y Apache Maven.

  1. Descarga el ZIP desde la página de descarga y descomprímelo. Su carpeta lib tiene una subcarpeta por cada rango de versiones de JasperReports, y cada una contiene el jar correspondiente a ese rango. Para JasperReports 6.16.0, copia lib/JasperReports 6.5.0 - 6.16.0 (JDK 1.6)/aspose.slides.jasperreports.library-26.6.jar en una carpeta de proyecto vacía.

  2. El jar viene dentro del ZIP y no desde un repositorio Maven, por lo que debes instalarlo en tu repositorio Maven local. Ejecuta este comando en la carpeta del proyecto:

mvn install:install-file "-Dfile=aspose.slides.jasperreports.library-26.6.jar" "-DgroupId=com.aspose" "-DartifactId=aspose-slides-jasperreports" "-Dversion=26.6" "-Dpackaging=jar"
  1. Guarda este pom.xml en la carpeta del proyecto. Añade JasperReports 6.16.0 y el jar que instalaste, y especifica la clase a ejecutar. JasperReports 6.16.0 declara una compilación parcheada de iText que no está en Maven Central, por lo que el archivo la excluye; los exportadores de Aspose no la necesitan.
<project xmlns="http://maven.apache.org/POM/4.0.0">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>hello-jasper-export</artifactId>
    <version>1.0</version>

    <properties>
        <maven.compiler.release>11</maven.compiler.release>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <exec.mainClass>HelloExport</exec.mainClass>
    </properties>

    <dependencies>
        <dependency>
            <groupId>net.sf.jasperreports</groupId>
            <artifactId>jasperreports</artifactId>
            <version>6.16.0</version>
            <exclusions>
                <exclusion>
                    <groupId>com.lowagie</groupId>
                    <artifactId>itext</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.aspose</groupId>
            <artifactId>aspose-slides-jasperreports</artifactId>
            <version>26.6</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.15.0</version>
            </plugin>
        </plugins>
    </build>
</project>
  1. Guarda este diseño de informe como hello.jrxml en la carpeta del proyecto. Imprime una línea de texto en la banda de título:
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd"
        name="Hello" pageWidth="595" pageHeight="842" columnWidth="555"
        leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
    <title>
        <band height="50">
            <staticText>
                <reportElement x="0" y="0" width="555" height="40"/>
                <textElement>
                    <font size="24"/>
                </textElement>
                <text><![CDATA[Hello from JasperReports!]]></text>
            </staticText>
        </band>
    </title>
</jasperReport>
  1. Guarda este código como src/main/java/HelloExport.java. Compila el diseño, lo rellena con un registro vacío y exporta el resultado con ASPptxExporter:
import java.util.HashMap;

import com.aspose.slides.jasperreports.ASPptxExporter;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;

public class HelloExport {
    public static void main(String[] args) throws Exception {
        // Compila el diseño del informe y lo rellena con un registro vacío.
        JasperReport report = JasperCompileManager.compileReport("hello.jrxml");
        JasperPrint jasperPrint = JasperFillManager.fillReport(report, new HashMap<String, Object>(), new JREmptyDataSource());

        // Exporta el informe completado a PPTX.
        ASPptxExporter exporter = new ASPptxExporter();
        exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
        exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, "hello.pptx");
        exporter.exportReport();
    }
}
  1. Ejecuta este comando en la carpeta del proyecto:
mvn compile exec:java

El programa guarda hello.pptx en la carpeta del proyecto, con una diapositiva que contiene el texto del informe. El compilador indica que el código usa una API obsoleta: los exportadores toman su entrada y salida a través de JRExporterParameter, y no aceptan la configuración más reciente setExporterInput y setExporterOutput. En Linux, fontconfig y al menos una fuente deben estar instalados, de lo contrario el rellenado del informe falla. Sin una licencia, cada diapositiva lleva una marca de agua de evaluación en su centro — consulta Licencias. Para exportar a PPT, PDF o HTML, consulta Exportación a PPT, PPTX, PDF y HTML.