Search in sources :

Example 21 with MissingOperandException

use of org.apache.pdfbox.contentstream.operator.MissingOperandException in project pdfbox by apache.

the class SetFontAndSize method process.

@Override
public void process(Operator operator, List<COSBase> arguments) throws IOException {
    if (arguments.size() < 2) {
        throw new MissingOperandException(operator, arguments);
    }
    COSBase base0 = arguments.get(0);
    COSBase base1 = arguments.get(1);
    if (!(base0 instanceof COSName)) {
        return;
    }
    if (!(base1 instanceof COSNumber)) {
        return;
    }
    COSName fontName = (COSName) base0;
    float fontSize = ((COSNumber) base1).floatValue();
    context.getGraphicsState().getTextState().setFontSize(fontSize);
    PDFont font = context.getResources().getFont(fontName);
    context.getGraphicsState().getTextState().setFont(font);
}
Also used : PDFont(org.apache.pdfbox.pdmodel.font.PDFont) COSName(org.apache.pdfbox.cos.COSName) MissingOperandException(org.apache.pdfbox.contentstream.operator.MissingOperandException) COSNumber(org.apache.pdfbox.cos.COSNumber) COSBase(org.apache.pdfbox.cos.COSBase)

Example 22 with MissingOperandException

use of org.apache.pdfbox.contentstream.operator.MissingOperandException in project pdfbox by apache.

the class SetFlatness method process.

@Override
public void process(Operator operator, List<COSBase> operands) throws IOException {
    if (operands.size() < 1) {
        throw new MissingOperandException(operator, operands);
    }
    if (!checkArrayTypesClass(operands, COSNumber.class)) {
        return;
    }
    COSNumber value = (COSNumber) operands.get(0);
    context.getGraphicsState().setFlatness(value.floatValue());
}
Also used : MissingOperandException(org.apache.pdfbox.contentstream.operator.MissingOperandException) COSNumber(org.apache.pdfbox.cos.COSNumber)

Example 23 with MissingOperandException

use of org.apache.pdfbox.contentstream.operator.MissingOperandException in project pdfbox by apache.

the class SetLineDashPattern method process.

@Override
public void process(Operator operator, List<COSBase> arguments) throws MissingOperandException {
    if (arguments.size() < 2) {
        throw new MissingOperandException(operator, arguments);
    }
    COSBase base0 = arguments.get(0);
    if (!(base0 instanceof COSArray)) {
        return;
    }
    COSBase base1 = arguments.get(1);
    if (!(base1 instanceof COSNumber)) {
        return;
    }
    COSArray dashArray = (COSArray) base0;
    int dashPhase = ((COSNumber) base1).intValue();
    boolean allZero = true;
    for (COSBase base : dashArray) {
        if (base instanceof COSNumber) {
            COSNumber num = (COSNumber) base;
            if (Float.compare(num.floatValue(), 0) != 0) {
                allZero = false;
                break;
            }
        } else {
            LOG.warn("dash array has non number element " + base + ", ignored");
            dashArray = new COSArray();
            break;
        }
    }
    if (dashArray.size() > 0 && allZero) {
        LOG.warn("dash lengths all zero, ignored");
        dashArray = new COSArray();
    }
    context.setLineDashPattern(dashArray, dashPhase);
}
Also used : COSArray(org.apache.pdfbox.cos.COSArray) MissingOperandException(org.apache.pdfbox.contentstream.operator.MissingOperandException) COSNumber(org.apache.pdfbox.cos.COSNumber) COSBase(org.apache.pdfbox.cos.COSBase)

Aggregations

MissingOperandException (org.apache.pdfbox.contentstream.operator.MissingOperandException)23 COSNumber (org.apache.pdfbox.cos.COSNumber)19 COSBase (org.apache.pdfbox.cos.COSBase)11 Point2D (java.awt.geom.Point2D)6 COSName (org.apache.pdfbox.cos.COSName)5 Matrix (org.apache.pdfbox.util.Matrix)3 COSArray (org.apache.pdfbox.cos.COSArray)2 PDXObject (org.apache.pdfbox.pdmodel.graphics.PDXObject)2 PDFormXObject (org.apache.pdfbox.pdmodel.graphics.form.PDFormXObject)2 PDTransparencyGroup (org.apache.pdfbox.pdmodel.graphics.form.PDTransparencyGroup)2 ArrayList (java.util.ArrayList)1 COSFloat (org.apache.pdfbox.cos.COSFloat)1 MissingResourceException (org.apache.pdfbox.pdmodel.MissingResourceException)1 PDFont (org.apache.pdfbox.pdmodel.font.PDFont)1 PDColor (org.apache.pdfbox.pdmodel.graphics.color.PDColor)1 PDColorSpace (org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace)1 PDPattern (org.apache.pdfbox.pdmodel.graphics.color.PDPattern)1 PDImageXObject (org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject)1 PDExtendedGraphicsState (org.apache.pdfbox.pdmodel.graphics.state.PDExtendedGraphicsState)1 RenderingMode (org.apache.pdfbox.pdmodel.graphics.state.RenderingMode)1