Package com.itextpdf.text.pdf

Examples of com.itextpdf.text.pdf.PdfObject


  /**
   * Defines the sort order of the field (ascending or descending).
   * @param ascending  true is the default, use false for descending order
   */
  public void setSortOrder(boolean ascending) {
    PdfObject o = get(PdfName.S);
    if (o instanceof PdfName) {
      put(PdfName.A, new PdfBoolean(ascending));
    }
    else {
      throw new IllegalArgumentException(MessageLocalization.getComposedMessage("you.have.to.define.a.boolean.array.for.this.collection.sort.dictionary"));
View Full Code Here


  /**
   * Defines the sort order of the field (ascending or descending).
   * @param ascending  an array with every element corresponding with a name of a field.
   */
  public void setSortOrder(boolean[] ascending) {
    PdfObject o = get(PdfName.S);
    if (o instanceof PdfArray) {
      if (((PdfArray)o).size() != ascending.length) {
        throw new IllegalArgumentException(MessageLocalization.getComposedMessage("the.number.of.booleans.in.this.array.doesn.t.correspond.with.the.number.of.fields"));
      }
      PdfArray array = new PdfArray();
View Full Code Here

   * You can only use this method after you have set the value of the item.
   * @param prefix  a prefix
   */
  public void setPrefix(String key, String prefix) {
    PdfName fieldname = new PdfName(key);
    PdfObject o = get(fieldname);
    if (o == null)
      throw new IllegalArgumentException(MessageLocalization.getComposedMessage("you.must.set.a.value.before.adding.a.prefix"));
    PdfDictionary dict = new PdfDictionary(PdfName.COLLECTIONSUBITEM);
    dict.put(PdfName.D, o);
    dict.put(PdfName.P, new PdfString(prefix, PdfObject.TEXT_UNICODE));
View Full Code Here

    StringBuilder barcodes = new StringBuilder();
    StringBuilder textBarcodes = new StringBuilder();
    for (int i = 0; i < xrefSize; i++) {
      God.appWindow.getStatusBar().setInitProgress(i, xrefSize);
      try {
        PdfObject pdfobj = reader.getPdfObject(i);
        if (pdfobj != null) {
          if (pdfobj.isStream()) {
            PdfStream stream = (PdfStream) pdfobj;
            PdfObject pdfsubtype = stream.get(PdfName.SUBTYPE);
            if (pdfsubtype != null) {
              if (pdfsubtype.toString().equals(PdfName.IMAGE.toString())) {
                getImageFromPageAndAddOcrResultToContent(ocr, pdfContent, barcodes, textBarcodes, ocrName, stream);
              }
            }
          }
        }
View Full Code Here

    }
  }

  private static void writePdfImageFromStreamIntoFile(PdfStream stream, final File tmpJpegFile) {
    try {
      PdfObject filterObject = stream.get(PdfName.FILTER);
      String filterName = filterObject.toString();
      if (filterName.equals("/DCTDecode")) {
        writePdfImageFromStreamViaRawImage(stream, tmpJpegFile);
      }
      else {
        writePdfImageFromStreamViaBufferedImage(stream, tmpJpegFile);
View Full Code Here

    PdfReader reader = new PdfReader(pdfName);
    StringBuilder pdfContent = new StringBuilder();
    StringBuilder barcodes = new StringBuilder();
    StringBuilder textBarcodes = new StringBuilder();
    for (int i = 0; i < reader.getXrefSize(); i++) {
      PdfObject pdfobj = reader.getPdfObject(i);
      if (pdfobj != null) {
        if (pdfobj.isStream()) {
          PdfStream stream = (PdfStream) pdfobj;
          PdfObject pdfsubtype = stream.get(PdfName.SUBTYPE);
          if (pdfsubtype != null) {
            if (pdfsubtype.toString().equals(PdfName.IMAGE.toString())) {
              System.out.println("OCR on PDF object " + i);
              getImageFromPageAndAddOcrResultToContent(ocr, pdfContent, barcodes, textBarcodes, ocrName, stream);
            }
          }
        }
View Full Code Here

    }
  }

  private static void writePdfImageFromStreamIntoFile(PdfStream stream, final File tmpJpegFile) {
    try {
      PdfObject filterObject = stream.get(PdfName.FILTER);
      String filterName = filterObject.toString();
      if (filterName.equals("/DCTDecode")) {
        writePdfImageFromStreamViaRawImage(stream, tmpJpegFile);
      }
      else {
        writePdfImageFromStreamViaBufferedImage(stream, tmpJpegFile);
View Full Code Here

   * @param ocgs  the removal list
   */
  private void removeOCGsFromArray(PdfArray array, Set<String> ocgs) {
    if (array == null)
      return;
    PdfObject o;
    PdfDictionary dict;
    List<Integer> remove = new ArrayList<Integer>();
    for (int i = array.size(); i > 0; ) {
      o = array.getDirectObject(--i);
      if (o.isDictionary()) {
        dict = (PdfDictionary)o;
        if (isToBeRemoved(dict, ocgs)) {
          remove.add(i);
        }
        else {
          removeOCGsFromArray(dict, PdfName.OCGS, ocgs);
        }
      }
      if (o.isArray()) {
        removeOCGsFromArray((PdfArray)o, ocgs);
      }
    }
    for (Integer i : remove) {
      array.remove(i);
View Full Code Here

     * Displays an XObject using the registered handler for this XObject's subtype
     * @param xobjectName the name of the XObject to retrieve from the resource dictionary
     */
    private void displayXObject(PdfName xobjectName) throws IOException {
        PdfDictionary xobjects = resources.getAsDict(PdfName.XOBJECT);
        PdfObject xobject = xobjects.getDirectObject(xobjectName);
        PdfStream xobjectStream = (PdfStream)xobject;

        PdfName subType = xobjectStream.getAsName(PdfName.SUBTYPE);
        if (xobject.isStream()){
            XObjectDoHandler handler = xobjectDoHandlers.get(subType);
            if (handler == null)
                handler = xobjectDoHandlers.get(PdfName.DEFAULT);
            handler.handleXObject(this, xobjectStream, xobjects.getAsIndirectObject(xobjectName));
        } else {
View Full Code Here

        @Override
        public PdfObject getDirectObject(PdfName key) {
            for (int i = resourcesStack.size() - 1; i >= 0; i--){
                PdfDictionary subResource = resourcesStack.get(i);
                if (subResource != null){
                    PdfObject obj =  subResource.getDirectObject(key);
                    if (obj != null) return obj;
                }
            }
            return super.getDirectObject(key); // shouldn't be necessary, but just in case we've done something crazy
        }
View Full Code Here

TOP

Related Classes of com.itextpdf.text.pdf.PdfObject

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.