public static PDNameTreeNode create(COSObject object) { if (object == null || !object.getType().isDictionaryBased()) { throw new IllegalArgumentException("Argument object shall be dictionary or stream type"); } return new PDNameTreeNode(object, new HashSet<COSKey>()); }
private List<CosNumber> getHorizontalOffset() { if (this.arguments.size() > 1) { COSBase number = this.arguments .get(this.arguments.size() - 2); if (number.getType().isNumber()) { List<CosNumber> offset = new ArrayList<>(GFOperator.MAX_NUMBER_OF_ELEMENTS); offset.add(GFCosNumber.fromPDFParserNumber(number)); return Collections.unmodifiableList(offset); } } return Collections.emptyList(); }
protected void updateFromObject() { COSObject filters = getObject(); if(filters.getType().equals(COSObjType.COS_ARRAY)) { int size = filters.size(); this.entries.clear(); for (int i = 0; i < size; i++) { this.entries.add(filters.at(i).getName()); } } else if (filters.getType().equals(COSObjType.COS_NAME)) { this.entries.clear(); this.entries.add(filters.getName()); } }
private List<PDPerms> getPerms() { if(this.catalog != null) { COSObject perms = this.catalog.getKey(ASAtom.PERMS); if (perms != null && perms.getType().isDictionaryBased()) { List<PDPerms> list = new ArrayList<>(MAX_NUMBER_OF_ELEMENTS); list.add(new GFPDPerms(perms)); return Collections.unmodifiableList(list); } } return Collections.emptyList(); }
protected List<CosNumber> getLastNumber() { if (!this.arguments.isEmpty()) { COSBase base = this.arguments.get(this.arguments.size() - 1); if (base.getType().isNumber()) { List<CosNumber> cosNumbers = new ArrayList<>(MAX_NUMBER_OF_ELEMENTS); cosNumbers.add(GFCosNumber.fromPDFParserNumber(base)); return Collections.unmodifiableList(cosNumbers); } } return Collections.emptyList(); }
List<COSDictionary> decodeParameters = null; if(!decodeParams.empty()) { if(decodeParams.getType().equals(COSObjType.COS_DICT)) { decodeParameters = new ArrayList<>(1); decodeParameters.add((COSDictionary) decodeParams.getDirectBase()); } else if (decodeParams.getType().equals(COSObjType.COS_ARRAY)) { decodeParameters = new ArrayList<>(decodeParams.size()); for(int i = 0; i < decodeParams.size(); ++i) {
@Override public String getAFRelationship() { if (embFile != null && embFile.getType().isDictionaryBased()) { return embFile.getStringKey(ASAtom.AF_RELATIONSHIP); } return null; }
private List<CosNumber> getHorizontalDisplacement() { if (this.arguments.size() > 1) { COSBase base = this.arguments.get(this.arguments.size() - 2); if (base.getType().isNumber()) { List<CosNumber> real = new ArrayList<>(MAX_NUMBER_OF_ELEMENTS); real.add(GFCosNumber.fromPDFParserNumber(base)); return Collections.unmodifiableList(real); } } return Collections.emptyList(); }
if(object == null || !object.getType().equals(COSObjType.COS_STREAM)) { throw new IOException("Object number " + (-offset) + " should" + " be object stream, but in fact it is " +
@Override public String getDescription() { if (embFile != null && embFile.getType().isDictionaryBased()) { return embFile.getStringKey(ASAtom.DESC); } return null; }
private COSObject[] getTopTwoNumbers() throws PostScriptException { if (operandStack.size() > 1) { COSObject a = operandStack.pop(); if (a.getType().isNumber()) { COSObject b = operandStack.pop(); if (b.getType().isNumber()) { return new COSObject[]{a, b}; } } } throw new PostScriptException("Stack doesn't have two elements or top two elements are not two numbers"); }
@Override public String getSubtype() { if (this.cosEmbFile != null && this.cosEmbFile.getType().isDictionaryBased()) { return this.cosEmbFile.getStringKey(ASAtom.SUBTYPE); } return null; }
private List<CosNumber> getSpecialNumber(int operandNumber) { final int size = this.arguments.size(); if (size >= COUNT_OF_OPERATOR_OPERANDS) { int index = size - COUNT_OF_OPERATOR_OPERANDS + operandNumber; COSBase base = this.arguments.get(index); if (base.getType().isNumber()) { List<CosNumber> number = new ArrayList<>(GFOperator.MAX_NUMBER_OF_ELEMENTS); number.add(GFCosNumber.fromPDFParserNumber(base)); return Collections.unmodifiableList(number); } } return Collections.emptyList(); }
private static void addObjectWithTypeKeyCheck(List<COSObject> objects, COSObject obj, ASAtom type) { if (obj != null && !obj.empty() && obj.getType().isDictionaryBased()) { ASAtom actualType = obj.getNameKey(ASAtom.TYPE); if (actualType == type) { objects.add(obj); } } }
private List<CosNumber> getColorValues() { List<CosNumber> list = new ArrayList<>(); for (COSBase base : this.arguments) { if (base != null && base.getType().isNumber()) { list.add(GFCosNumber.fromPDFParserNumber(base)); } } return Collections.unmodifiableList(list); } }
public List<PDFormField> getFields() { COSObject fields = getKey(ASAtom.FIELDS); if (fields != null && fields.getType() == COSObjType.COS_ARRAY) { List<PDFormField> res = new ArrayList<>(); for (COSObject obj : (COSArray) fields.getDirectBase()) { if (obj != null && obj.getType().isDictionaryBased()) { res.add(PDFormField.createTypedFormField(obj)); } } return Collections.unmodifiableList(res); } return Collections.emptyList(); } }
protected List<CosNumber> getListOfNumbers() { List<CosNumber> list = new ArrayList<>(); for (COSBase base : this.arguments) { if (base.getType() == COSObjType.COS_ARRAY) { addArrayElementsAsNumbers(list, (COSArray) base); } else if (base.getType().isNumber()) { list.add(GFCosNumber.fromPDFParserNumber(base)); } } return Collections.unmodifiableList(list); }
private List<PDNameTreeNode> parseKids() { COSObject kids = getKey(ASAtom.KIDS); if (kids != null && kids.getType() == COSObjType.COS_ARRAY) { List<PDNameTreeNode> res = new ArrayList<>(); for (COSObject obj : (COSArray) kids.getDirectBase()) { if (obj != null && obj.getType().isDictionaryBased()) { res.add(new PDNameTreeNode(obj, this.parents)); } } return res; } return Collections.emptyList(); }
private void addSingleMappings(int cidBegin, COSArray arr) { for (int i = 0; i < arr.size().intValue(); i++) { if (!arr.at(i).getType().isNumber()) { LOGGER.log(Level.SEVERE, "W array in CIDFont has invalid entry."); continue; } this.singleMappings.put(Integer.valueOf(cidBegin + i), arr.at(i).getReal()); } }
public PDAcroForm getAcroForm() { COSObject acroForm = getKey(ASAtom.ACRO_FORM); if (acroForm != null && acroForm.getType().isDictionaryBased()) { return new PDAcroForm(acroForm); } return null; }