示例#1
0
 private void crearElementosDocumentoPdf(
     Programa programa, List<Seccion> seccionesPdf, final DocumentoPdfItext documentoPdfItext) {
   try {
     if (!programaBusiness.tieneResolucion(programa.getIdPrograma())) {
       documentoPdfItext.getPageEvent().getHeaders().add(new ProductorEncabezadoEstatusPrograma());
     }
     documentoPdfItext.getDocument().open();
     crearTituloPrincipal(documentoPdfItext, programa);
     crearSecciones(programa, seccionesPdf, documentoPdfItext);
   } catch (DocumentException e) {
     throw new UaqException(MsgError.ERROR_PDF, e);
   }
 }
示例#2
0
 private void agregarComponenteBySeccion(
     final Programa programa,
     final DocumentoPdfItext documentoPdfItext,
     final ProductorCapituloPdf productorCapituloPdf,
     final Seccion seccion)
     throws DocumentException {
   documentoPdfItext.setTituloConIndice(productorCapituloPdf.getTituloConIndice(seccion));
   ProductorComponentePdf productorComponentePdf = crearProductorPdf(documentoPdfItext, seccion);
   productorComponentePdf.init(programa, seccion);
   for (Element element : productorComponentePdf.crear(programa, seccion)) {
     documentoPdfItext.getDocument().add(element);
   }
 }
示例#3
0
 private OutputStream generarStream(final Programa programa, final List<Seccion> seccionesPdf) {
   DocumentoPdfItext documentoPdfItext = getRyspeDocumentoPdfItext();
   crearElementosDocumentoPdf(programa, seccionesPdf, documentoPdfItext);
   OutputStream pdfOutputStream = documentoPdfItext.generar();
   if (isProgramaRechazado(programa.getIdPrograma())) {
     try {
       pdfOutputStream =
           marcarReporteProgramaRechazado(
               programa,
               new ByteArrayInputStream(((ByteArrayOutputStream) pdfOutputStream).toByteArray()));
     } catch (IOException | DocumentException e) {
       throw new UaqException(MsgError.ERROR_PDF, e);
     }
   }
   return pdfOutputStream;
 }
示例#4
0
 private void crearTituloPrincipal(
     final DocumentoPdfItext documentoPdfItext, final Programa programa) throws DocumentException {
   for (Element elementoTituloPrincipal :
       productorTituloPrincipal.crear(programa, new Seccion())) {
     documentoPdfItext.getDocument().add(elementoTituloPrincipal);
   }
 }
示例#5
0
 private Chapter crearSecciones(
     final Programa programa,
     final List<Seccion> seccionesPdf,
     final DocumentoPdfItext documentoPdfItext)
     throws DocumentException {
   Chapter capitulo = new Chapter(-1);
   ProductorCapituloPdf productorCapituloPdf = getProductorCapituloPdf();
   documentoPdfItext.getPageEvent().getFooters().add(new ProductorNumeroPaginaFooter());
   for (Seccion seccion : seccionesPdf) {
     agregarComponenteBySeccion(programa, documentoPdfItext, productorCapituloPdf, seccion);
   }
   return capitulo;
 }