com.jk.framework.pdf.JKPDFCell.java Source code

Java tutorial

Introduction

Here is the source code for com.jk.framework.pdf.JKPDFCell.java

Source

/*
 * Copyright 2002-2016 Jalal Kiswani.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.jk.framework.pdf;

import com.jk.framework.locale.Lables;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Phrase;
import com.lowagie.text.pdf.PdfPCell;

/**
 * The Class JKPDFCell.
 *
 * @author Jalal Kiswani
 */
public class JKPDFCell extends PdfPCell {

    private static final int _DEFAULT_FIXED_HEIGHT = 17;

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param o
     *            the o
     * @param getLabel
     *            the get label
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(final Object o, final boolean getLabel) throws DocumentException {
        this(o.toString(), PDFUtil.DEFAULT_SIZE, 1, ALIGN_CENTER, false, _DEFAULT_FIXED_HEIGHT, getLabel);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param o
     *            the o
     * @param fontSize
     *            the font size
     * @param getLabel
     *            the get label
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(final Object o, final int fontSize, final boolean getLabel) throws DocumentException {
        this(o.toString(), fontSize, 1, ALIGN_CENTER, false, _DEFAULT_FIXED_HEIGHT, getLabel);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(final String text) throws DocumentException {
        this(text, 1);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @param colSpan
     *            the col span
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(final String text, final int colSpan) throws DocumentException {
        this(text, PDFUtil.DEFAULT_SIZE, colSpan);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @param fontSize
     *            the font size
     * @param colSpan
     *            the col span
     * @throws DocumentException
     *             the document exception @1.1
     */
    public JKPDFCell(final String text, final int fontSize, final int colSpan) throws DocumentException {
        this(text, fontSize, colSpan, ALIGN_CENTER, false);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @param fontSize
     *            the font size
     * @param colSpan
     *            the col span
     * @param fixedHeight
     *            the fixed height
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(final String text, final int fontSize, final int colSpan, final int fixedHeight)
            throws DocumentException {
        this(text, fontSize, colSpan, ALIGN_CENTER, false, fixedHeight);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @param fontSize
     *            the font size
     * @param colSpan
     *            the col span
     * @param hAlignment
     *            the h alignment
     * @param fontStyle
     *            the font style
     * @throws DocumentException
     *             the document exception @1.1 @1.2
     */
    public JKPDFCell(final String text, final int fontSize, final int colSpan, final int hAlignment,
            final boolean fontStyle) throws DocumentException {
        this(text, fontSize, colSpan, hAlignment, fontStyle, _DEFAULT_FIXED_HEIGHT);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @param fontSize
     *            the font size
     * @param colSpan
     *            the col span
     * @param hAlignment
     *            the h alignment
     * @param fontStyle
     *            the font style
     * @param getLable
     *            the get lable
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(final String text, final int fontSize, final int colSpan, final int hAlignment,
            final boolean fontStyle, final boolean getLable) throws DocumentException {
        this(text, fontSize, colSpan, hAlignment, fontStyle, _DEFAULT_FIXED_HEIGHT, getLable);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @param fontSize
     *            the font size
     * @param colSpan
     *            the col span
     * @param hAlignment
     *            the h alignment
     * @param fontStyle
     *            the font style
     * @param fixedHeight
     *            the fixed height
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(final String text, final int fontSize, final int colSpan, final int hAlignment,
            final boolean fontStyle, final int fixedHeight) throws DocumentException {
        this(text, fontSize, colSpan, hAlignment, fontStyle, fixedHeight, true);
    }

    /**
     * Instantiates a new JKPDF cell.
     *
     * @param text
     *            the text
     * @param fontSize
     *            the font size
     * @param colSpan
     *            the col span
     * @param hAlignment
     *            the h alignment
     * @param fontStyle
     *            the font style
     * @param fixedHeight
     *            the fixed height
     * @param getLable
     *            the get lable
     * @throws DocumentException
     *             the document exception
     */
    public JKPDFCell(String text, final int fontSize, final int colSpan, final int hAlignment,
            final boolean fontStyle, final int fixedHeight, final boolean getLable) throws DocumentException {
        setColspan(colSpan);
        if (getLable) {
            text = Lables.get(text);
        }
        setPhrase(new Phrase(text, PDFUtil.createFont(fontSize, fontStyle)));
        setHorizontalAlignment(hAlignment);
        setVerticalAlignment(ALIGN_MIDDLE);
        setFixedHeight(fixedHeight);
    }

}