Generación dinámica de diplomas

Estoy trabajando en un sitio de capacitación en línea. Cuando el usuario termine el curso, me gustaría generar un diploma descargable para ellos. Podrían imprimirlo y colgarlo en la pared. Debe ser gráficamente atractivo y contener sus datos personales. La solución perfecta para mí sería:

  • El diseñador gráfico crea un diploma en Photoshop o una herramienta similar con marcadores de posición para los datos del usuario
  • La aplicación toma este archivo
  • Rellena marcadores de posición con datos de usuario
  • Genera un archivo en algún formato fácil de imprimir (¿PNG? ¿PDF? No estoy seguro...)

Mi aplicación web está escrita en Java. ¿Conoces alguna herramienta adecuada para eso?

DOC|DOCX|ODT -> La combinación de correo PDF es un enfoque razonable. El diseño se puede hacer usando Word/Libre Office y usar algo como JODReports o Docmosis para manipular de Java a PDF.
Sin embargo, esto no será seguro. Podrías hacer algo como una firma digital en los metadatos, pero eso es por seguridad de la información.

Respuestas (3)

Usando LaTeX

Puede diseñar el diploma con LaTeX y completar los campos dinámicos mediante programación. Luego, podría hacer una llamada al sistema a pdflatex desde Java y generar el diploma. Esta solución es poderosa y fácil, pero probablemente solo si conoce LaTeX. Sin embargo, hay una comunidad de stackexchange: https://tex.stackexchange.com/

Si puede integrar PHP en su aplicación web, o adaptar esto a Java...

Siga los tutoriales en este enlace http://koivi.com/fill-pdf-form-fields y podrá crear una excelente solución para llenar dinámicamente formularios PDF que se pueden enviar por correo electrónico o descargar. Su diseñador gráfico debería poder crear casi todo lo que desee y guardarlo como PDF.

¡He usado esto con tremendo éxito!

¡Buena suerte!

He hecho esto, creando un formulario PDF en OpenOffice, luego generando datos FDF a partir de eso, luego creando dinámicamente PDF sobre la marcha, luego estampando algunas imágenes en él (marca de agua, código QR para verificación, etc.)

imagenmagia

ImageMagick es una biblioteca de manipulación de imágenes que funciona desde la línea de comandos. Ni siquiera necesita Java, pero podría usar Java para ejecutar el programa.

ImageImagick admite todo tipo de formatos de imagen , incluidos PNG y JPG.

También es capaz de dibujar texto en las imágenes.

Java llano

Java tiene la clase BufferedImage . Llame a getGraphics() y luego use drawString() para escribir texto en la imagen.