diff --git a/.idea/misc.xml b/.idea/misc.xml index 7c2b79b..63522fd 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -5,6 +5,7 @@ <option name="originalFiles"> <list> <option value="$PROJECT_DIR$/pom.xml" /> + <option value="$PROJECT_DIR$/pom.xml" /> </list> </option> </component> diff --git a/.idea/vcs.xml b/.idea/vcs.xml index 35eb1dd..8306744 100644 --- a/.idea/vcs.xml +++ b/.idea/vcs.xml @@ -2,5 +2,6 @@ <project version="4"> <component name="VcsDirectoryMappings"> <mapping directory="" vcs="Git" /> + <mapping directory="$PROJECT_DIR$" vcs="Git" /> </component> </project> \ No newline at end of file diff --git a/src/main/java/org/example/saladeconciertos/PDFGenerator.java b/src/main/java/org/example/saladeconciertos/PDFGenerator.java index a16adf9..7e3aa93 100644 --- a/src/main/java/org/example/saladeconciertos/PDFGenerator.java +++ b/src/main/java/org/example/saladeconciertos/PDFGenerator.java @@ -43,21 +43,25 @@ public class PDFGenerator { // Configurar la fuente y el tamaño para el contenido del reporte contentStream.setFont(font, 12); contentStream.beginText(); - contentStream.newLineAtOffset(50, 680); + float textY = 680; + contentStream.newLineAtOffset(50, textY); // Dividir el texto en líneas y escribir cada línea por separado String[] lines = ticketDetails.split("\n"); for (String line : lines) { contentStream.showText(line); + textY -= 15; contentStream.newLineAtOffset(0, -15); // Mover hacia abajo para la siguiente línea } contentStream.endText(); + float imageHeight = 150; // Altura de la imagen + float imageY = textY - 50 - imageHeight; // 50 unidades de margen + altura de la imagen // Agregar la imagen del código QR (si existe) if (qrImagePath != null && !qrImagePath.isEmpty()) { PDImageXObject qrImage = PDImageXObject.createFromFile(qrImagePath, document); - contentStream.drawImage(qrImage, 50, 50, 150, 150); // Ajusta la posición y el tamaño de la imagen + contentStream.drawImage(qrImage, 50, imageY, 150, 150); // Ajusta la posición y el tamaño de la imagen } } diff --git a/src/main/java/org/example/saladeconciertos/VentaBoletos.java b/src/main/java/org/example/saladeconciertos/VentaBoletos.java index e6bef1b..2ffa4fd 100644 --- a/src/main/java/org/example/saladeconciertos/VentaBoletos.java +++ b/src/main/java/org/example/saladeconciertos/VentaBoletos.java @@ -99,9 +99,9 @@ public class VentaBoletos extends Application { titleLabel.getStyleClass().add("title"); // Agregar el logo de la aplicación - ImageView logo = new ImageView(new Image(getClass().getResourceAsStream("/logo.png"))); - logo.setFitWidth(100); - logo.setFitHeight(100); + ImageView logo = new ImageView(new Image(getClass().getResourceAsStream("/escenario.png"))); + logo.setFitWidth(500); + logo.setFitHeight(130); // Crear y configurar el label de bienvenida Label welcomeLabel = new Label("Seleccione sus asientos"); @@ -282,5 +282,8 @@ public class VentaBoletos extends Application { public static void main(String[] args) { launch(args); + System.setProperty("org.apache.pdfbox.rendering.UsePureJavaCMYK", "true"); + System.setProperty("org.apache.pdfbox.rendering.UsePureJavaRendering", "true"); + System.setProperty("org.apache.pdfbox.base.disableFontCache", "true"); } } \ No newline at end of file diff --git a/src/main/resources/escenario.png b/src/main/resources/escenario.png new file mode 100644 index 0000000..41d2f31 Binary files /dev/null and b/src/main/resources/escenario.png differ