Example usage for com.itextpdf.text.pdf BarcodeEAN setSize

List of usage examples for com.itextpdf.text.pdf BarcodeEAN setSize

Introduction

In this page you can find the example usage for com.itextpdf.text.pdf BarcodeEAN setSize.

Prototype

public void setSize(float size) 

Source Link

Document

Sets the size of the text.

Usage

From source file:py.com.palermo.imprimeetiquetas.web.ProductoController.java

public String createPdf() throws IOException, DocumentException {

    if (hayParaImprimir()) {

        HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance()
                .getExternalContext().getResponse();
        response.setContentType("application/x-pdf");
        response.setHeader("Content-Disposition", "attachment; filename=\"etiquetas.pdf\"");

        // step 1
        Document document = new Document(new Rectangle(86, 35));
        // step 2

        document.setMargins(0f, 0f, 0f, 0f);

        PdfWriter writer = PdfWriter.getInstance(document, response.getOutputStream());
        // step 3
        document.open();/* www  . ja  v  a 2  s  .com*/

        // step 4
        PdfContentByte cb = writer.getDirectContent();

        for (ProductoCantidad p : productos) {
            if (p.getCantidad() > 0) {

                BarcodeEAN codeEAN = new BarcodeEAN();
                codeEAN.setCode(p.getCodigo());
                codeEAN.setCodeType(Barcode.EAN13);
                codeEAN.setBarHeight(10f);
                codeEAN.setX(0.7f);
                codeEAN.setSize(4f);

                NumberFormat nf = NumberFormat.getCurrencyInstance(new Locale("es", "py"));
                Font fontbold = FontFactory.getFont("Times-Roman", 5, Font.NORMAL);
                Chunk productTitle = new Chunk(p.getNombre() + "," + " " + nf.format(p.getPrecio()), fontbold);

                // EAN 13
                Paragraph pTitile = new Paragraph(productTitle);
                pTitile.setAlignment(Element.ALIGN_CENTER);
                pTitile.setLeading(0, 1);

                PdfPTable table = new PdfPTable(1);
                table.setPaddingTop(0f);

                table.setWidthPercentage(96);
                PdfPCell cell = new PdfPCell();
                cell.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell.setBorder(Rectangle.NO_BORDER);
                cell.addElement(codeEAN.createImageWithBarcode(cb, null, BaseColor.BLACK));

                table.addCell(cell);

                PdfPCell cell2 = new PdfPCell();
                cell2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell2.setBorder(Rectangle.NO_BORDER);
                cell2.addElement(pTitile);

                table.addCell(cell2);

                for (int i = 0; i < p.getCantidad(); i++) {
                    document.add(table);
                    document.newPage();
                }
            }
        }

        // step 5
        document.close();

        response.getOutputStream().flush();
        response.getOutputStream().close();
        FacesContext.getCurrentInstance().responseComplete();
    } else {
        FacesContext.getCurrentInstance().addMessage(null,
                new FacesMessage(FacesMessage.SEVERITY_ERROR, "No hay nada que imprimir", ""));
    }
    return null;
}

From source file:se.billes.pdf.renderer.model.Barcode.java

License:Open Source License

public void onRender(PdfContentByte cb) throws PdfRenderException {

    float[] positions = new BlockFactory().getBoundsInPs(this);

    BarcodeEAN barcode = new BarcodeEAN();
    barcode.setCodeType(BarCodeType.getBarCodeType(barCodeType).codeType);
    barcode.setCode(getCode());//from   ww  w .  j av  a2s  . co m
    barcode.setSize(getFontSize());
    barcode.setGuardBars(isShowGuardBars());
    barcode.setBarHeight(positions[3]);
    barcode.setTextAlignment(Element.ALIGN_RIGHT);
    if (getBaseFont() != null) {
        barcode.setFont(getBaseFont());
    }

    if (align.equals("top")) {
        barcode.setBaseline(-1f);
    }

    PdfDocument request = getPage().getPdfDocument();
    float pageHeight = request.getSize()[1];
    float pageHeightInPs = SizeFactory.millimetersToPostscriptPoints(pageHeight);

    com.itextpdf.text.Image image = barcode.createImageWithBarcode(cb, getBarBaseColor(), getCodeBaseColor());
    image.setRotationDegrees(rotation);
    image.setAbsolutePosition(positions[0], pageHeightInPs - (positions[1] + positions[3] + fontSize));
    try {
        cb.addImage(image);
    } catch (DocumentException e) {
        throw new PdfRenderException(e);
    }
}