Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package ppro.contoller; import com.lowagie.text.BadElementException; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.Image; import com.lowagie.text.PageSize; import com.lowagie.text.Phrase; import com.lowagie.text.pdf.PdfPTable; import java.io.File; import java.io.IOException; import javax.faces.bean.ManagedBean; import javax.faces.context.ExternalContext; import javax.faces.context.FacesContext; import javax.servlet.ServletContext; /** * * @author casa */ @ManagedBean public class ExportController { private final String pathAbsoluto = FacesContext.getCurrentInstance().getExternalContext().getRealPath("/"); public void preProcessPDF(Object document) throws IOException, DocumentException { final Document pdf = (Document) document; pdf.setPageSize(PageSize.A4.rotate()); pdf.open(); String logo = getAbsolutePath("logo_1663576_web.jpg"); pdf.add(Image.getInstance(logo)); } public void postProcessPDF(Object document) throws IOException, DocumentException { final Document pdf = (Document) document; pdf.setPageSize(PageSize.A4.rotate()); } private Image getImage(String imageName) throws IOException, BadElementException { final Image image = Image.getInstance(getAbsolutePath(imageName)); image.scalePercent(90f); return image; } private String getAbsolutePath(String imageName) { ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext(); String logo = externalContext.getRealPath("") + File.separator + "resources" + File.separator + "demo" + File.separator + "images" + File.separator + imageName; return logo; } }