| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 
 |  
 
public void Printpdf(Map<String, Object> model,
			Document document, PdfWriter writer, HttpServletRequest request,
			HttpServletResponse response, String link, String filename,  String mnt) throws Exception {
		{
		response.setContentType("application/pdf");
        try 
        {
 
            File fichier =new File(link,filename);
            document = new Document();
            PdfWriter.getInstance(document,  new FileOutputStream(fichier));
 
            Rectangle pagesize = new Rectangle(360f, 720f);
            document.setPageSize(pagesize);
			document.setMargins(10, 10, 10, 10);
 
            document.open();
 
 
            document.setPageSize(pagesize);
            document.setMargins(10, 10, 10, 10);
 
 
                document.newPage();
          	    document.setPageSize(pagesize);
                document.setMargins(10, 10, 10, 10);
                document.newPage();
 
 
                String image = request.getScheme() + "://"  + request.getHeader("Host")  + request.getContextPath()
                      + "/resources/img/logo.png";
 
                Image image1 = Image.getInstance(image);
                PdfPTable tableL = new PdfPTable(2);
                tableL.setWidthPercentage(100);
                tableL.getDefaultCell().setBorder(0);
                tableL.getDefaultCell().setPadding(0);
                tableL.addCell(image);
                tableL.addCell(image1);
                document.add(tableL);
 
 
                Paragraph mode = new Paragraph("Mon projet", FontFactory.getFont(FontFactory.HELVETICA, 14));
 
                PdfPTable table = new PdfPTable(new float[] { 55, 48 });
                table.setWidthPercentage(100);
                table.getDefaultCell().setPadding(0);
                table.getDefaultCell().setBorder(0);
                PdfPCell A = new PdfPCell(new Paragraph(mnt,FontFactory.getFont(FontFactory.HELVETICA, 20)));
                A.setBorder(Rectangle.BOTTOM | Rectangle.TOP);
                A.setHorizontalAlignment(Element.ALIGN_CENTER);
                table1.addCell(A);
                document.add(table);
 
            document.close();
 
            DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PAGEABLE;
            PrintRequestAttributeSet patts = new HashPrintRequestAttributeSet();
		      PrintService[] ps = PrintServiceLookup.lookupPrintServices(flavor, patts);
 
		      if (ps.length == 0) {  throw new IllegalStateException("Aucune imprimante"); }
		      else
		      {
		    	PrintService myService = PrintServiceLookup.lookupDefaultPrintService();
		    	if (myService == null) { throw new IllegalStateException("Aucune imprimante par défaut");  }
		    	else
		    	{
		    		FileInputStream fis = new FileInputStream(fichier);
		    		Doc pdfDoc = new SimpleDoc(fis, DocFlavor.INPUT_STREAM.AUTOSENSE, null);
		    		DocPrintJob printJob = myService.createPrintJob();
		    		printJob.print(pdfDoc, new HashPrintRequestAttributeSet());
      		    fis.close();  
 
      		    fichier.delete();
		    	}
		      }
 
 
        } 
        catch (DocumentException de) {  throw new IOException(de.getMessage());  }
 
		}
 
	} |