org.pdfbox.pdmodel.graphics.predictor
Class Paeth
From http://www.w3.org/TR/PNG-Filters.html: The Paeth filter computes a
simple linear function of the three neighboring pixels (left, above, upper
left), then chooses as predictor the neighboring pixel closest to the
computed value. This technique is due to Alan W. Paeth [PAETH].
To compute the Paeth filter, apply the following formula to each byte of the
scanline:
Paeth(i,j) = Raw(i,j) - PaethPredictor(Raw(i-1,j), Raw(i,j-1), Raw(i-1,j-1))
To decode the Paeth filter
Raw(i,j) = Paeth(i,j) - PaethPredictor(Raw(i-1,j), Raw(i,j-1), Raw(i-1,j-1))
void | decodeLine(byte[] src, byte[] dest, int srcDy, int srcOffset, int destDy, int destOffset) -
|
void | encodeLine(byte[] src, byte[] dest, int srcDy, int srcOffset, int destDy, int destOffset) -
|
int | paethPredictor(int a, int b, int c) - The paeth predictor function.
|
aboveLeftPixel , abovePixel , checkBufsiz , decode , decodeLine , encode , encodeLine , getBpp , getFilter , getHeight , getWidth , leftPixel , main , setBpp , setHeight , setWidth |
decodeLine
public void decodeLine(byte[] src,
byte[] dest,
int srcDy,
int srcOffset,
int destDy,
int destOffset)
- decodeLine in interface PredictorAlgorithm
encodeLine
public void encodeLine(byte[] src,
byte[] dest,
int srcDy,
int srcOffset,
int destDy,
int destOffset)
- encodeLine in interface PredictorAlgorithm
paethPredictor
public int paethPredictor(int a,
int b,
int c)
The paeth predictor function.
This function is taken almost directly from the PNG definition on
http://www.w3.org/TR/PNG-Filters.html
a
- leftb
- abovec
- upper left
- The result of the paeth predictor.