Crear gráficos y cuadros en PDF en Java

Los gráficos y cuadros se utilizan para representar visualmente los datos en archivos PDF. Además, puede usarlos para describir gráficamente el flujo de actividades u operaciones en un sistema, como diagramas de flujo. En este artículo, aprenderá cómo crear gráficos y tablas en archivos PDF mediante programación en Java. Cubriremos explícitamente cómo crear diferentes objetos gráficos en un archivo PDF.

API de Java para crear gráficos y tablas en PDF

Aspose.PDF for Java es una API sorprendente que proporciona una variedad de características para la generación y manipulación de PDF. Con la API, puede crear sin problemas archivos PDF de diseños simples y complejos. Usaremos esta API para crear gráficos y cuadros en archivos PDF. Puede descargar la API o instalarla usando las siguientes configuraciones de Maven.

Repository:
<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Dependency:
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

Crear un Arco en un PDF en Java

Los siguientes son los pasos para agregar un arco en PDF en Java.

  1. Cree un nuevo PDF o cargue uno existente usando la clase Document.
  2. Cree un objeto Gráfico con dimensiones.
  3. Configure BorderInfo para el objeto gráfico.
  4. Cree una instancia de la clase Arc y establezca sus dimensiones y otros parámetros.
  5. Agregue un arco a la colección de formas de Graph usando el método Graph.getShapes().add(Arc).
  6. Agrega un gráfico a la página usando el método Page.getParagraphs().add(Graph).
  7. Guarde el archivo PDF usando el método Document.save(String).

El siguiente ejemplo de código muestra cómo agregar arcos en un PDF en Java.

// Crear instancia de documento
Document pdfDocument = new Document();

// Agregar página a la colección de páginas del archivo PDF
Page page = pdfDocument.getPages().add();

// Crear objeto gráfico con ciertas dimensiones
Graph graph = new Graph(400, 400);

// Establecer borde para objeto de dibujo
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);

// Crear un arco
Arc arc1 = new Arc(100, 100, 95, 0, 90);
arc1.getGraphInfo().setColor(Color.getGreenYellow());
graph.getShapes().add(arc1);

Graph graph2 = new Graph(400, 400);

// Crear un arco relleno
Arc arc = new Arc(100, 100, 95, 0, 90);
arc.getGraphInfo().setFillColor(Color.getGreenYellow());
graph2.getShapes().add(arc);

Line line = new Line(new float[] { 195, 100, 100, 100, 100, 195 });
line.getGraphInfo().setFillColor(Color.getGreenYellow());
graph2.getShapes().add(line);

// Agregar objeto de gráfico a la colección de párrafos de la página
page.getParagraphs().add(graph);
page.getParagraphs().add(graph2);

// Guardar archivo PDF
pdfDocument.save("create-arc.pdf");

Los siguientes son los arcos que hemos generado utilizando el ejemplo de código anterior.

Crear un Arco en PDF en Java

Crear un círculo en un PDF en Java

Los siguientes son los pasos para agregar un círculo a un archivo PDF en Java.

  1. Cree un nuevo PDF o cargue uno existente usando la clase Document.
  2. Cree un objeto Graph con dimensiones.
  3. Configure BorderInfo para el objeto gráfico.
  4. Cree una instancia de la clase Círculo y establezca sus dimensiones.
  5. Agregue un círculo a la colección de formas de Graph usando el método Graph.getShapes().add(Circle).
  6. Agrega un gráfico a la página usando el método Page.getParagraphs().add(Graph).
  7. Guarde el archivo PDF utilizando el método Document.save(String).

El siguiente ejemplo de código muestra cómo agregar un círculo en PDF en Java.

// Crear instancia de documento
Document pdfDocument = new Document();

// Agregar página a la colección de páginas del archivo PDF
Page page = pdfDocument.getPages().add();

// Crear objeto gráfico con ciertas dimensiones
Graph graph = new Graph(400, 200);

// Establecer borde para objeto de dibujo
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);

// Crear círculo
Circle circle = new Circle(100,100,40);
circle.getGraphInfo().setColor(Color.getGreenYellow());       
circle.getGraphInfo().setFillColor(Color.getGreenYellow());

graph.getShapes().add(circle);

// Agregar objeto de gráfico a la colección de párrafos de la página
page.getParagraphs().add(graph);

// Guardar archivo PDF
pdfDocument.save("create-circle.pdf");

El siguiente es el círculo que hemos generado utilizando el ejemplo de código anterior.

Crear un Círculo en PDF en Java

Agregar una curva en un PDF en Java

Los siguientes son los pasos para agregar una curva en un archivo PDF en Java.

  1. Cree un nuevo PDF o cargue uno existente usando la clase Document.
  2. Cree un objeto Graph con dimensiones.
  3. Configure BorderInfo para el objeto gráfico.
  4. Cree una instancia de la clase Curva y establezca sus dimensiones.
  5. Agregue una curva a la colección de formas de Graph usando el método Graph.getShapes().add(Curve).
  6. Agrega un gráfico a la página usando el método Page.getParagraphs().add(Graph).
  7. Guarde el archivo PDF utilizando el método Document.save(String).

El siguiente ejemplo de código muestra cómo agregar curvas a un archivo PDF en Java.

// Crear instancia de documento
Document pdfDocument = new Document();

// Agregar página a la colección de páginas del archivo PDF
Page page = pdfDocument.getPages().add();

// Crear objeto gráfico con ciertas dimensiones
Graph graph = new Graph(400, 200);

// Establecer borde para objeto de dibujo
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);

// Crear una curva
Curve curve1 = new Curve(new float[] { 10, 10, 50, 60, 70, 10, 100, 120});

curve1.getGraphInfo().setColor(Color.getGreenYellow());
graph.getShapes().add(curve1);

// Crear objeto de dibujo con ciertas dimensiones
Graph graph2 = new Graph(400, 200);

// Crear curva rellena
Curve curve2 = new Curve(new float[] { 50, 30, 200, 60, 70, 10, 100, 120});
curve2.getGraphInfo().setFillColor(Color.getGreenYellow());
graph2.getShapes().add(curve2);

// Agregar objeto de gráfico a la colección de párrafos de la página
page.getParagraphs().add(graph);        
page.getParagraphs().add(graph2);

// Guardar archivo PDF
pdfDocument.save("create-curve.pdf");

Las siguientes son las curvas que hemos generado utilizando el ejemplo de código anterior.

Agregar una curva en PDF en Java

Agregar una línea en un PDF en Java

Los siguientes son los pasos para agregar una línea en un PDF usando Java.

  1. Cree un nuevo PDF o cargue uno existente usando la clase Document.
  2. Cree un objeto Gráfico con dimensiones.
  3. Configure BorderInfo para el objeto gráfico.
  4. Cree una instancia de la clase Line y establezca sus dimensiones.
  5. Establezca otras propiedades de la línea, como estilo, ancho, etc.
  6. Agregue una línea a la colección de formas de Graph usando el método Graph.getShapes().add(Line).
  7. Agrega un gráfico a la página usando el método Page.getParagraphs().add(Graph).
  8. Guarde el archivo PDF utilizando el método Document.save(String).

El siguiente ejemplo de código muestra cómo agregar líneas en PDF en Java.

// Crear instancia de documento
Document pdfDocument = new Document();

// Agregar página a la colección de páginas del archivo PDF
Page page = pdfDocument.getPages().add();

// Crear instancia de gráfico
Graph graph = new Graph(100, 400);

// Agregar objeto de gráfico a la colección de párrafos de instancia de página
page.getParagraphs().add(graph);

// Crear instancia de línea
Line line = new Line(new float[] { 300, 200, 200, 100 });

line.getGraphInfo().setLineWidth(5);

// Agregue un objeto rectangular a la colección de formas del objeto Graph
graph.getShapes().add(line);

// Crear línea discontinua
Line line2 = new Line(new float[] { 100, 100, 200, 100 });

// Establecer color para el objeto Línea
line2.getGraphInfo().setColor(Color.getRed());

// Establecer ancho de línea
line2.getGraphInfo().setLineWidth(5);

// Especifique una matriz de guiones para el objeto de línea
line2.getGraphInfo().setDashArray(new int[] { 0, 1, 0 });

// Establecer la fase del guión para la instancia de Línea
line2.getGraphInfo().setDashPhase(1);

// Agregar línea a la colección de formas del objeto de dibujo
graph.getShapes().add(line2);

// Guardar archivo PDF
pdfDocument.save("create-line.pdf");

Las siguientes son las líneas que hemos creado utilizando el ejemplo de código anterior.

Agregar una línea en PDF en Java

Crear un Rectángulo en PDF en Java

Al igual que con otros objetos gráficos, puede agregar un rectángulo al PDF. Además, puede rellenar el rectángulo con un color determinado, controlar el orden Z, agregar color degradado, etc. Los siguientes son los pasos para crear un rectángulo en un archivo PDF en Java.

  1. Cree un nuevo PDF o cargue uno existente usando la clase Document.
  2. Cree un objeto Gráfico con dimensiones.
  3. Configure BorderInfo para el objeto gráfico.
  4. Cree una instancia de la clase Rectangle y establezca sus dimensiones.
  5. Establezca otras propiedades del rectángulo, como el color de relleno, el degradado, etc.
  6. Agregue un rectángulo a la colección de formas de Graph usando el método Graph.getShapes().add(Rectangle).
  7. Agrega un gráfico a la página usando el método Page.getParagraphs().add(Graph).
  8. Guarde el archivo PDF utilizando el método Document.save(String).

El siguiente ejemplo de código muestra cómo agregar rectángulos en PDF en Java.

// Crear nuevo archivo PDF
Document pdfDocument = new Document();

// Agregar página a la colección de páginas del archivo PDF
Page page = pdfDocument.getPages().add();

// Crear instancia de gráfico
Graph graph = new Graph(100, 400);

// Agregar objeto de gráfico a la colección de párrafos de instancia de página
page.getParagraphs().add(graph);

// Crear instancia de Rectángulo
com.aspose.pdf.drawing.Rectangle rect = new com.aspose.pdf.drawing.Rectangle(300, 100, 200, 120);

// Especifique el color de relleno para el objeto Gráfico
rect.getGraphInfo().setFillColor(Color.getRed());

// Agregue un objeto rectangular a la colección de formas del objeto Graph
graph.getShapes().add(rect);

// Rellenar rectángulo con degradado
com.aspose.pdf.drawing.Rectangle rect2 = new com.aspose.pdf.drawing.Rectangle(0, 0, 300, 300);
graph.getShapes().add(rect2);

// Especifique el color de relleno de degradado para el objeto Gráfico y rellénelo
Color gradientFill = new com.aspose.pdf.Color();
rect2.getGraphInfo().setFillColor(gradientFill);

// Establecer gradiente
GradientAxialShading gradientAxialShading = new GradientAxialShading(Color.getRed(), Color.getBlue());
gradientAxialShading.setStart(new Point(0, 0));
gradientAxialShading.setEnd(new Point(300, 300));
gradientFill.setPatternColorSpace(gradientAxialShading);

// Guardar archivo PDF
pdfDocument.save("create-rectangle.pdf");

Los siguientes son los rectángulos que hemos creado utilizando el ejemplo de código anterior.

Crear un Rectángulo en PDF en Java

Crear una Elipse en PDF en Java

Por último, pero no menos importante, echemos un vistazo a cómo crear una elipse en PDF en Java.

  1. Cree un nuevo PDF o cargue uno existente usando la clase Document.
  2. Cree un objeto Gráfico con dimensiones.
  3. Configure BorderInfo para el objeto gráfico.
  4. Cree una instancia de la clase Elipse y establezca sus dimensiones.
  5. Establezca otras propiedades de la elipse, como el color de relleno, etc.
  6. Agregue elipse a la colección de formas de Graph usando el método Graph.getShapes().add(Ellipse).
  7. Agrega un gráfico a la página usando el método Page.getParagraphs().add(Graph).
  8. Guarde el archivo PDF utilizando el método Document.save(String).

El siguiente ejemplo de código muestra cómo agregar una elipse en un archivo PDF en Java.

// Crear instancia de documento
Document pdfDocument = new Document();

// Agregar página a la colección de páginas del archivo PDF
Page page = pdfDocument.getPages().add();

// Crear objeto gráfico con ciertas dimensiones
Graph graph = new Graph(400, 400);

// Establecer borde para objeto de dibujo
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);

// Crear elipse
Ellipse ellipse1 = new Ellipse(100, 100, 120, 60);
ellipse1.getGraphInfo().setColor(Color.getGreenYellow());
ellipse1.setText(new TextFragment("Ellipse"));
graph.getShapes().add(ellipse1);

// Crear elipse rellena
Ellipse ellipse2 = new Ellipse(200, 100, 120, 180);
ellipse2.getGraphInfo().setFillColor(Color.getGreenYellow());
graph.getShapes().add(ellipse2);

// Agregar objeto gráfico a la colección de párrafos de la página
page.getParagraphs().add(graph);

// Guardar archivo PDF
pdfDocument.save("create-ellipse.pdf");

Los siguientes son los puntos suspensivos que hemos creado utilizando el ejemplo de código anterior.

Crear una Elipse en PDF en Java

Obtenga una licencia gratis

Puede obtener una licencia temporal gratuita para usar Aspose.PDF for Java sin limitaciones de evaluación.

Conclusión

En este artículo, ha aprendido a crear diferentes objetos de tablas y gráficos en archivos PDF utilizando Java. Ha visto cómo agregar arcos, círculos, rectángulos, líneas, curvas y elipses en un PDF. Además, puede explorar más sobre la API PDF de Java utilizando la documentación. En caso de que tenga alguna pregunta o consulta, puede contactarnos a través de nuestro foro.

Ver también