Home » pdfbox-1.1.0-src » org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination » [javadoc | source]

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *      http://www.apache.org/licenses/LICENSE-2.0
   10    *
   11    * Unless required by applicable law or agreed to in writing, software
   12    * distributed under the License is distributed on an "AS IS" BASIS,
   13    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    * See the License for the specific language governing permissions and
   15    * limitations under the License.
   16    */
   17   package org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination;
   18   
   19   import org.apache.pdfbox.cos.COSArray;
   20   import org.apache.pdfbox.cos.COSBase;
   21   
   22   /**
   23    * This represents a destination to a page at a x location and the height is magnified
   24    * to just fit on the screen.
   25    *
   26    * @author <a href="mailto:ben@benlitchfield.com">Ben Litchfield</a>
   27    * @version $Revision: 1.2 $
   28    */
   29   public class PDPageFitHeightDestination extends PDPageDestination
   30   {
   31       /**
   32        * The type of this destination.
   33        */
   34       protected static final String TYPE = "FitV";
   35       /**
   36        * The type of this destination.
   37        */
   38       protected static final String TYPE_BOUNDED = "FitBV";
   39   
   40       /**
   41        * Default constructor.
   42        *
   43        */
   44       public PDPageFitHeightDestination()
   45       {
   46           super();
   47           array.growToSize(3);
   48           array.setName( 1, TYPE );
   49   
   50       }
   51   
   52       /**
   53        * Constructor from an existing destination array.
   54        *
   55        * @param arr The destination array.
   56        */
   57       public PDPageFitHeightDestination( COSArray arr )
   58       {
   59           super( arr );
   60       }
   61   
   62       /**
   63        * Get the left x coordinate.  A return value of -1 implies that the current x-coordinate
   64        * will be used.
   65        *
   66        * @return The left x coordinate.
   67        */
   68       public int getLeft()
   69       {
   70           return array.getInt( 2 );
   71       }
   72   
   73       /**
   74        * Set the left x-coordinate, a value of -1 implies that the current x-coordinate
   75        * will be used.
   76        * @param x The left x coordinate.
   77        */
   78       public void setLeft( int x )
   79       {
   80           array.growToSize( 3 );
   81           if( x == -1 )
   82           {
   83               array.set( 2, (COSBase)null );
   84           }
   85           else
   86           {
   87               array.setInt( 2, x );
   88           }
   89       }
   90   
   91       /**
   92        * A flag indicating if this page destination should just fit bounding box of the PDF.
   93        *
   94        * @return true If the destination should fit just the bounding box.
   95        */
   96       public boolean fitBoundingBox()
   97       {
   98           return TYPE_BOUNDED.equals( array.getName( 1 ) );
   99       }
  100   
  101       /**
  102        * Set if this page destination should just fit the bounding box.  The default is false.
  103        *
  104        * @param fitBoundingBox A flag indicating if this should fit the bounding box.
  105        */
  106       public void setFitBoundingBox( boolean fitBoundingBox )
  107       {
  108           array.growToSize( 2 );
  109           if( fitBoundingBox )
  110           {
  111               array.setName( 1, TYPE_BOUNDED );
  112           }
  113           else
  114           {
  115               array.setName( 1, TYPE );
  116           }
  117       }
  118   }

Home » pdfbox-1.1.0-src » org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination » [javadoc | source]