Class PDFunctionType0
- java.lang.Object
-
- org.apache.pdfbox.pdmodel.common.function.PDFunction
-
- org.apache.pdfbox.pdmodel.common.function.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 Summary
Constructors Constructor Description PDFunctionType0(COSBase function)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description float[]
eval(float[] input)
Evaluates the function at the given input.int
getBitsPerSample()
Get the number of bits that the output value will take up.PDRange
getDecodeForParameter(int paramNum)
Get the decode for the input parameter.PDRange
getEncodeForParameter(int paramNum)
Get the encode for the input parameter.int
getFunctionType()
Returns the function type.int
getOrder()
Get the order of interpolation between samples.COSArray
getSize()
The "Size" entry, which is the number of samples in each input dimension of the sample table.void
setBitsPerSample(int bps)
Set the number of bits that the output value will take up.void
setDecodeValues(COSArray decodeValues)
This will set the decode values.void
setEncodeValues(COSArray encodeValues)
This will set the encode values.-
Methods inherited from class org.apache.pdfbox.pdmodel.common.function.PDFunction
clipToRange, clipToRange, create, eval, getCOSObject, getDomainForInput, getNumberOfInputParameters, getNumberOfOutputParameters, getPDStream, getRangeForOutput, getRangeValues, interpolate, setDomainValues, setRangeValues, toString
-
-
-
-
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 classPDFunction
- 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 classPDFunction
- 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
- an IOExcpetion is thrown if something went wrong processing the function.
-
-