Class PDFunctionType0

  • All Implemented Interfaces:
    COSObjectable

    public class PDFunctionType0
    extends PDFunction
    This class represents a type 0 function in a PDF document.
    Author:
    Ben Litchfield, Tilman Hausherr
    • Constructor Detail

      • PDFunctionType0

        public PDFunctionType0​(COSBase function)
        Constructor.
        Parameters:
        function - The function.
    • Method Detail

      • getFunctionType

        public int getFunctionType()
        Returns the function type. Possible values are: 0 - Sampled function 2 - Exponential interpolation function 3 - Stitching function 4 - PostScript calculator function
        Specified by:
        getFunctionType in class PDFunction
        Returns:
        the function type.
      • getSize

        public COSArray getSize()
        The "Size" entry, which is the number of samples in each input dimension of the sample table.
        Returns:
        A List of java.lang.Integer objects.
      • getBitsPerSample

        public int getBitsPerSample()
        Get the number of bits that the output value will take up. Valid values are 1,2,4,8,12,16,24,32.
        Returns:
        Number of bits for each output value.
      • getOrder

        public int getOrder()
        Get the order of interpolation between samples. Valid values are 1 and 3, specifying linear and cubic spline interpolation, respectively. Default is 1. See p.170 in PDF spec 1.7.
        Returns:
        order of interpolation.
      • setBitsPerSample

        public void setBitsPerSample​(int bps)
        Set the number of bits that the output value will take up. Valid values are 1,2,4,8,12,16,24,32.
        Parameters:
        bps - The number of bits for each output value.
      • getEncodeForParameter

        public PDRange getEncodeForParameter​(int paramNum)
        Get the encode for the input parameter.
        Parameters:
        paramNum - The function parameter number.
        Returns:
        The encode parameter range or null if none is set.
      • setEncodeValues

        public void setEncodeValues​(COSArray encodeValues)
        This will set the encode values.
        Parameters:
        encodeValues - The new encode values.
      • getDecodeForParameter

        public PDRange getDecodeForParameter​(int paramNum)
        Get the decode for the input parameter.
        Parameters:
        paramNum - The function parameter number.
        Returns:
        The decode parameter range or null if none is set.
      • setDecodeValues

        public void setDecodeValues​(COSArray decodeValues)
        This will set the decode values.
        Parameters:
        decodeValues - The new decode values.
      • eval

        public float[] eval​(float[] input)
                     throws java.io.IOException
        Evaluates the function at the given input. ReturnValue = f(input)
        Specified by:
        eval in class PDFunction
        Parameters:
        input - The array of input values for the function. In many cases will be an array of a single value, but not always.
        Returns:
        The of outputs the function returns based on those inputs. In many cases will be an array of a single value, but not always.
        Throws:
        java.io.IOException - if something went wrong processing the function.