/*
- * "$Id: raster.h 4981 2006-01-25 21:34:00Z mike $"
+ * "$Id: raster.h 5671 2006-06-16 11:17:39Z mike $"
*
* Raster file definitions for the Common UNIX Printing System (CUPS).
*
* Include necessary headers...
*/
-# include <cups/ppd.h>
+# include <cups/cups.h>
# ifdef __cplusplus
extern "C" {
* Constants...
*/
-# define CUPS_RASTER_SYNC 0x52615332 /* RaS2 */
-# define CUPS_RASTER_REVSYNC 0x32536152 /* 2SaR */
+# define CUPS_RASTER_SYNC 0x52615333 /* RaS3 */
+# define CUPS_RASTER_REVSYNC 0x33536152 /* 3SaR */
# define CUPS_RASTER_SYNCv1 0x52615374 /* RaSt */
# define CUPS_RASTER_REVSYNCv1 0x74536152 /* tSaR */
+# define CUPS_RASTER_SYNCv2 0x52615332 /* RaS2 */
+# define CUPS_RASTER_REVSYNCv2 0x32536152 /* 2SaR */
+
/*
* The following definition can be used to determine if the
/**** Version 2 Dictionary Values ****/
unsigned cupsNumColors; /* Number of colors @since CUPS 1.2@ */
- float cupsPageScaling; /* Scaling that was applied to page data */
- float cupsPageSize[2]; /* Floating point PageSize @since CUPS 1.2@ */
- float cupsImagingBBox[4]; /* Floating point ImagingBoundingBox @since CUPS 1.2@ */
+ float cupsBorderlessScalingFactor;
+ /* Scaling that was applied to page data @since CUPS 1.2@ */
+ float cupsPageSize[2]; /* Floating point PageSize (scaling *
+ * factor not applied) @since CUPS 1.2@ */
+ float cupsImagingBBox[4]; /* Floating point ImagingBoundingBox *
+ * (scaling factor not applied) @since CUPS 1.2@ */
unsigned cupsInteger[16]; /* User-defined integer values @since CUPS 1.2@ */
float cupsReal[16]; /* User-defined floating-point values @since CUPS 1.2@ */
char cupsString[16][64]; /* User-defined string values @since CUPS 1.2@ */
char cupsPageSizeName[64]; /* PageSize name @since CUPS 1.2@ */
} cups_page_header2_t;
-typedef struct _cups_raster_s /**** Raster stream data ****/
-{
- unsigned sync; /* Sync word from start of stream */
- int fd; /* File descriptor */
- cups_mode_t mode; /* Read/write mode */
- cups_page_header2_t header; /* Raster header for current page */
- int count, /* Current row run-length count */
- remaining, /* Remaining rows in page image */
- bpp; /* Bytes per pixel/color */
- unsigned char *pixels, /* Pixels for current row */
- *pend, /* End of pixel buffer */
- *pcurrent; /* Current byte in pixel buffer */
-} cups_raster_t;
+typedef struct _cups_raster_s cups_raster_t;
+ /**** Raster stream data ****/
+
+typedef int (*cups_interpret_cb_t)(cups_page_header2_t *header, int preferred_bits);
/*
/**** New in CUPS 1.2 ****/
extern int cupsRasterInterpretPPD(cups_page_header2_t *h,
- ppd_file_t *ppd);
+ ppd_file_t *ppd,
+ int num_options,
+ cups_option_t *options,
+ cups_interpret_cb_t func);
extern unsigned cupsRasterReadHeader2(cups_raster_t *r,
cups_page_header2_t *h);
extern unsigned cupsRasterWriteHeader2(cups_raster_t *r,
#endif /* !_CUPS_RASTER_H_ */
/*
- * End of "$Id: raster.h 4981 2006-01-25 21:34:00Z mike $".
+ * End of "$Id: raster.h 5671 2006-06-16 11:17:39Z mike $".
*/