Common Lisp Package: SKIPPY

README:

FUNCTION

Public

CLIP-CANVAS (SOURCE DEST &KEY (SX 0) (SY 0) (DX 0) (DY 0) (WIDTH (WIDTH SOURCE)) (HEIGHT (HEIGHT SOURCE)))

Return new dx,dy and sx,sy and width,height values to use when clipping SOURCE to fit within the bounds of DEST.

Undocumented

ADD-COLOR (COLOR TABLE)

ADD-DELAY (DELAY DATA-STREAM)

ADD-IMAGE (IMAGE DATA-STREAM)

CANVAS-IMAGE (CANVAS)

COLOR-RGB (COLOR)

COLOR-TABLE-ENTRY (TABLE INDEX)

SETFCOLOR-TABLE-ENTRY (NEW-COLOR TABLE INDEX)

COLOR-TABLE-SIZE (TABLE)

COMPOSITE (SOURCE DEST &KEY (SX 0) (SY 0) (DX 0) (DY 0) (WIDTH (WIDTH SOURCE)) (HEIGHT (HEIGHT SOURCE)))

COPY-COLOR-TABLE (TABLE)

ENSURE-COLOR (COLOR TABLE)

FILL-CANVAS (CANVAS PALETTE-INDEX)

FIND-COLOR (COLOR TABLE)

LAST-IMAGE (DATA-STREAM)

LOAD-CANVAS (FILE)

LOAD-DATA-STREAM (FILE)

MAKE-CANVAS (&KEY WIDTH HEIGHT IMAGE-DATA (INITIAL-ELEMENT 0) INITIAL-CONTENTS)

MAKE-COLOR-TABLE (&KEY INITIAL-CONTENTS)

MAKE-DATA-STREAM (&KEY HEIGHT WIDTH COLOR-TABLE LOOPINGP COMMENT INITIAL-IMAGES)

MAKE-IMAGE (&KEY HEIGHT WIDTH IMAGE-DATA DATA-STREAM (TOP-POSITION 0) (LEFT-POSITION 0) COLOR-TABLE INTERLACEDP (DELAY-TIME *DEFAULT-DELAY-TIME*) TRANSPARENCY-INDEX (DISPOSAL-METHOD UNSPECIFIED))

MAKE-IMAGE-DATA (WIDTH HEIGHT &KEY (INITIAL-ELEMENT 0) INITIAL-CONTENTS)

OUTPUT-DATA-STREAM (DATA-STREAM FILE &KEY (IF-EXISTS SUPERSEDE))

READ-CANVAS (STREAM)

READ-DATA-STREAM (STREAM)

RGB-COLOR (R G B)

SAVE-CANVAS (CANVAS FILE &KEY (IF-EXISTS SUPERSEDE))

WRITE-CANVAS (CANVAS STREAM)

WRITE-DATA-STREAM (DATA-STREAM STREAM)

Private

ADVANCE-STREAM-POSITION (STREAM COUNT)

Skip past COUNT bytes of input in STREAM.

BITSTREAM-BITS-LEFT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BITSTREAM-BUFFER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BITSTREAM-COUNT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BITSTREAM-OCTET (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BITSTREAM-OFFSET (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BITSTREAM-STREAM (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

CHECK-GIF-SIGNATURE (STREAM)

Check that STREAM starts with the ASCII string "GIF89a" or "GIF87a".

COLOR-TABLE-CODE-SIZE (TABLE)

The number of bits needed to store the largest index in the color table. The spec-imposed minimum is 2.

COMPRESSION-CODE-SIZE (IMAGE)

Return the number of bits needed to represent the largest index in the effective color table of INDEX.

EFFECTIVE-COLOR-TABLE (IMAGE)

Return the color table in effect when writing out IMAGE, or signal an error if no color table is available.

LZW-DECOMPRESS (VECTOR CODE-SIZE CONTEXT STREAM)

Decompress the GIF LZW data from STREAM into VECTOR.

STREAM-POSITION (STREAM &KEY (OFFSET 0))

FILE-POSITION may return NIL or may signal an error (for e.g. Gray streams); wrap it.

WRITE-COMMENT (COMMENT STREAM)

Write COMMENT to the GIF. Since the characters must be ASCII, replace any out-of-range character codes with #\Space.

Undocumented

%MAKE-BITSTREAM (BUFFER OFFSET COUNT OCTET BITS-LEFT STREAM)

SETFBITSTREAM-BITS-LEFT (NEW-VALUE INSTANCE)

SETFBITSTREAM-BUFFER (NEW-VALUE INSTANCE)

SETFBITSTREAM-COUNT (NEW-VALUE INSTANCE)

SETFBITSTREAM-OCTET (NEW-VALUE INSTANCE)

SETFBITSTREAM-OFFSET (NEW-VALUE INSTANCE)

BITSTREAM-P (OBJECT)

SETFBITSTREAM-STREAM (NEW-VALUE INSTANCE)

BOOLEAN-BIT (VALUE)

CHECK-DIMENSIONS (DATA-STREAM IMAGE)

CHECK-IMAGE-DIMENSIONS (WIDTH HEIGHT)

CLIP (XMIN0 YMIN0 XMAX0 YMAX0 XMIN1 YMIN1 XMAX1 YMAX1)

COPY-BITSTREAM (INSTANCE)

DEINTERLACED-IMAGE-DATA (CANVAS)

DISPOSAL-METHOD-KEYWORD (METHOD)

DISPOSAL-METHOD-VALUE (KEYWORD)

FINISH-INPUT (BITSTREAM)

INTERLACED-IMAGE-DATA (CANVAS)

LZW-COMPRESS (VECTOR CODE-SIZE CONTEXT STREAM)

MAKE-BITSTREAM (STREAM)

MAKE-INPUT-BITSTREAM (STREAM)

MERGE-GRAPHIC-CONTROL (IMAGE)

PROCESS-OBJECTS (DATA-STREAM STREAM)

READ-APPLICATION-EXTENSION (STREAM DATA-STREAM)

READ-BITS (LENGTH BITSTREAM)

READ-COLOR (STREAM)

READ-COLOR-TABLE (COUNT STREAM)

READ-COMMENT-EXTENSION (STREAM)

READ-EXTENSION-OBJECT (STREAM DATA-STREAM)

READ-GRAPHIC-CONTROL-EXTENSION (STREAM)

READ-IMAGE (CONTEXT STREAM)

READ-U32 (STREAM)

READ-UINT16 (STREAM)

RESET-STREAM (BITSTREAM)

SKIP-DATA-BLOCKS (STREAM)

SKIPPY-WARN (CONTROL &REST ARGS)

WRITE-BITS (CODE LENGTH BITSTREAM)

WRITE-BLOCK-TERMINATOR (STREAM)

WRITE-COLOR-TABLE (TABLE STREAM)

WRITE-DATA-STREAM-HEADER (DATA-STREAM STREAM)

WRITE-END-CODE (DATA-STREAM STREAM)

WRITE-GRAPHIC-CONTROL-BLOCK (IMAGE STREAM)

WRITE-IMAGE (IMAGE CONTEXT STREAM)

WRITE-NETSCAPE-LOOPING-BLOCK (STREAM)

WRITE-U32 (I STREAM)

WRITE-UINT16 (NUMBER STREAM)

MACRO

Private

Undocumented

BIND-BITS ((INTEGER SIZE) BINDINGS &BODY BODY)

WITH-BITSTREAM-SLOTS (NAME-BINDINGS BITSTREAM &BODY BODY)

GENERIC-FUNCTION

Public

Undocumented

CLONE (CANVAS)

FILL-AREA (CANVAS PALETTE-INDEX &KEY (X 0) (Y 0) (WIDTH (WIDTH CANVAS)) (HEIGHT (HEIGHT CANVAS)))

FLIP-HORIZONTAL (CANVAS)

FLIP-VERTICAL (CANVAS)

PIXEL-REF (CANVAS X Y)

SETFPIXEL-REF (NEW-VALUE CANVAS X Y)

ROTATE-180 (CANVAS)

SCALE (CANVAS FACTOR)

Private

Undocumented

COLOR-TABLE-FULL-COLOR-TABLE (CONDITION)

INVALID-IMAGE-DIMENSION-HEIGHT (CONDITION)

INVALID-IMAGE-DIMENSION-WIDTH (CONDITION)

LZW-ERROR-DESCRIPTION (CONDITION)

MISSING-COLOR-TABLE-IMAGE (CONDITION)

SIGNATURE-ERROR-POSITION (CONDITION)

SIGNATURE-ERROR-SOURCE (CONDITION)

TRANSPARENTP (IMAGE)

UNEXPECTED-VALUE-ACTUAL-VALUE (CONDITION)

UNEXPECTED-VALUE-DESCRIPTION (CONDITION)

UNEXPECTED-VALUE-EXPECTED-VALUE (CONDITION)

UNEXPECTED-VALUE-SOURCE (CONDITION)

UNEXPECTED-VALUE-SOURCE-POSITION (CONDITION)

WRAP-IMAGE (IMAGE)

SLOT-ACCESSOR

Public

COLOR-TABLE (OBJECT)

The local color table of the image, if any.

SETFCOLOR-TABLE (NEW-VALUE OBJECT)

The local color table of the image, if any.

DELAY-TIME (OBJECT)

The time, in hundredths of a second, to wait after this image before displaying the next image

SETFDELAY-TIME (NEW-VALUE OBJECT)

The time, in hundredths of a second, to wait after this image before displaying the next image

HEIGHT (OBJECT)

The height of the logical screen

IMAGES (OBJECT)

A vector of the images in the data stream

LEFT-POSITION (OBJECT)

The position of the image relative to the left of the logical screen

SETFLEFT-POSITION (NEW-VALUE OBJECT)

The position of the image relative to the left of the logical screen

TOP-POSITION (OBJECT)

The position of the image relative to the top of the logical screen

SETFTOP-POSITION (NEW-VALUE OBJECT)

The position of the image relative to the top of the logical screen

TRANSPARENCY-INDEX (OBJECT)

The color table index of the transparent color for this image. If null, the image has no transparent color.

SETFTRANSPARENCY-INDEX (NEW-VALUE OBJECT)

The color table index of the transparent color for this image. If null, the image has no transparent color.

WIDTH (OBJECT)

The width of the logical screen

Undocumented

COMMENT (OBJECT)

SETFCOMMENT (NEW-VALUE OBJECT)

DISPOSAL-METHOD (OBJECT)

SETFDISPOSAL-METHOD (NEW-VALUE OBJECT)

SETFHEIGHT (NEW-VALUE OBJECT)

IMAGE-DATA (OBJECT)

SETFIMAGE-DATA (NEW-VALUE OBJECT)

LOOPINGP (OBJECT)

SETFLOOPINGP (NEW-VALUE OBJECT)

SETFWIDTH (NEW-VALUE OBJECT)

Private

DATA-STREAM (OBJECT)

The data stream in which this image occurs.

SETFDATA-STREAM (NEW-VALUE OBJECT)

The data stream in which this image occurs.

INTERLACEDP (OBJECT)

Is the image interlaced?

SETFINTERLACEDP (NEW-VALUE OBJECT)

Is the image interlaced?

Undocumented

ENTRIES (OBJECT)

PREDS (OBJECT)

TABLE (OBJECT)

VARIABLE

Public

Undocumented

*DEFAULT-DELAY-TIME*

Private

*EFFECTIVE-GRAPHIC-CONTROL*

The graphic control extension in effect for the current image.

*GIF-SIGNATURE*

The ASCII codes for the characters of the string "GIF89a".

*NETSCAPE-SIGNATURE*

The ASCII codes for the characters of the string "NETSCAPE2.0".

Undocumented

*BITSTREAM-SLOT-ATTRIBUTES*

*CANVAS-MAGIC*

*DISPOSAL-METHODS*

*FILE-FORMAT-VERSION*

*GIF87A-SIGNATURE*

*GIF89A-SIGNATURE*

CLASS

Public

Undocumented

COLOR-TABLE (OBJECT)

Private

COMPRESSION-CONTEXT

Store data structures that may be re-used when writing out multiple images in a GIF animation.

DATA-STREAM (OBJECT)

A DATA-STREAM instance represents a container for GIF image data. It defines the logical dimensions of the overall image. It may contain a color table, which is used if an individual image does not provide its own color table.

DECOMPRESSION-CONTEXT

A decompression context is used to hold data structures that may be re-used for repeated calls to lzw-decompress, so they don't have to be allocated fresh each time.

IMAGE

An IMAGE instance represents a graphic within a GIF data stream. There may be multiple images in the data stream.

Undocumented

BITSTREAM

CANVAS

GRAPHIC-CONTROL-EXTENSION

CONDITION

Public

Undocumented

COLOR-TABLE-FULL

LZW-ERROR

MISSING-COLOR-TABLE

SIGNATURE-ERROR

SKIPPY-ERROR

SKIPPY-WARNING

UNEXPECTED-VALUE

Private

Undocumented

INVALID-IMAGE-DIMENSIONS

SHORT-SIGNATURE

SIGNATURE-MISMATCH

CONSTANT

Private

+GIF-TRAILER-CODE+

The end-of-GIF marker.

+MAX-COLOR-TABLE-SIZE+

Color tables are restricted by the GIF89a specification to 256 entries.

+PIXEL-ASPECT-RATIO+

Pixel aspect ratios are not set.

Undocumented

+APPLICATION-LABEL+

+COMMENT-LABEL+

+EXTENSION-INTRODUCER+

+GRAPHIC-CONTROL-LABEL+

+IMAGE-SEPARATOR-CODE+

+PLAIN-TEXT-LABEL+