## com.sun.pdfview.decode
Class PNGPredictor

    java.lang.Object
      com.sun.pdfview.decode.Predictor
          com.sun.pdfview.decode.PNGPredictor

    public class PNGPredictor

extends Predictor

Undo prediction based on the PNG algorithm.

Field Summary

Fields inherited from class com.sun.pdfview.decode.Predictor
`PNG, TIFF`

Constructor Summary
`PNGPredictor()` Creates a new instance of PNGPredictor

Method Summary
`protected void` `doAverageLine(byte[] curLine, byte[] prevLine)` Return the value of the average algorithm on the line (compare bytes to the average of the previous byte of the same color and the same byte on the previous line)
`protected void` `doPaethLine(byte[] curLine, byte[] prevLine)` Return the value of the average algorithm on the line (compare bytes to the average of the previous byte of the same color and the same byte on the previous line)
`protected void` `doSubLine(byte[] curLine)` Return the value of the Sub algorithm on the line (compare bytes to the previous byte of the same color on this line).
`protected void` `doUpLine(byte[] curLine, byte[] prevLine)` Return the value of the up algorithm on the line (compare bytes to the same byte in the previous line)
`protected int` `paeth(int left, int up, int upLeft)` The paeth algorithm
`java.nio.ByteBuffer` `unpredict(java.nio.ByteBuffer imageData)` Undo data based on the png algorithm

Methods inherited from class com.sun.pdfview.decode.Predictor
`getAlgorithm, getBitsPerComponent, getColors, getColumns, getPredictor, setBitsPerComponent, setColors, setColumns`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PNGPredictor

    public PNGPredictor()

  Creates a new instance of PNGPredictor

Method Detail

### unpredict

    public java.nio.ByteBuffer unpredict(java.nio.ByteBuffer imageData)
                                  throws java.io.IOException

  Undo data based on the png algorithm

  Specified by:
    `unpredict` in class `Predictor`
  Throws:
    `java.io.IOException`

### doSubLine

    protected void doSubLine(byte[] curLine)

  Return the value of the Sub algorithm on the line (compare bytes to the previous byte of the same color on this line).

### doUpLine

    protected void doUpLine(byte[] curLine,
                            byte[] prevLine)

  Return the value of the up algorithm on the line (compare bytes to the same byte in the previous line)

### doAverageLine

    protected void doAverageLine(byte[] curLine,
                                 byte[] prevLine)

  Return the value of the average algorithm on the line (compare bytes to the average of the previous byte of the same color and the same byte on the previous line)

### doPaethLine

    protected void doPaethLine(byte[] curLine,
                               byte[] prevLine)

  Return the value of the average algorithm on the line (compare bytes to the average of the previous byte of the same color and the same byte on the previous line)

### paeth

    protected int paeth(int left,
                        int up,
                        int upLeft)

  The paeth algorithm