com.sun.pdfview.decode

Class DCTDecode

public class DCTDecode extends Object

decode a DCT encoded array into a byte array. This class uses Java's built-in JPEG image class to do the decoding.
Method Summary
protected static ByteBufferdecode(PDFObject dict, ByteBuffer buf, PDFObject params)
decode an array of bytes in DCT format.

Method Detail

decode

protected static ByteBuffer decode(PDFObject dict, ByteBuffer buf, PDFObject params)
decode an array of bytes in DCT format.

DCT is the format used by JPEG images, so this class simply loads the DCT-format bytes as an image, then reads the bytes out of the image to create the array. Unfortunately, their most likely use is to get turned BACK into an image, so this isn't terribly efficient... but is is general... don't hit, please.

The DCT-encoded stream may have 1, 3 or 4 samples per pixel, depending on the colorspace of the image. In decoding, we look for the colorspace in the stream object's dictionary to decide how to decode this image. If no colorspace is present, we guess 3 samples per pixel.

Parameters: dict the stream dictionary buf the DCT-encoded buffer params the parameters to the decoder (ignored)

Returns: the decoded buffer