You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
102 lines
6.3 KiB
102 lines
6.3 KiB
//***************************************************************************************************
|
|
// N403DIZ.H
|
|
//
|
|
// C Header (Functions of dither and color matching (For N4-612 printer))
|
|
//---------------------------------------------------------------------------------------------------
|
|
// copyright(C) 1997-1999 CASIO COMPUTER CO.,LTD. / CASIO ELECTRONICS MANUFACTURING CO.,LTD.
|
|
//***************************************************************************************************
|
|
|
|
//***************************************************************************************************
|
|
// Data define
|
|
//***************************************************************************************************
|
|
//---------------------------------------------------------------------------------------------------
|
|
// Color/Monochrome
|
|
//---------------------------------------------------------------------------------------------------
|
|
#define N403_COL 0
|
|
#define N403_MON 1
|
|
|
|
//---------------------------------------------------------------------------------------------------
|
|
// Printer mode
|
|
//---------------------------------------------------------------------------------------------------
|
|
#define N403_MOD_300B1 0
|
|
#define N403_MOD_300B2 1
|
|
#define N403_MOD_300B4 2
|
|
#define N403_MOD_600B1 3
|
|
#define N403_MOD_600B2 4
|
|
|
|
//---------------------------------------------------------------------------------------------------
|
|
// Type of dithering
|
|
//---------------------------------------------------------------------------------------------------
|
|
#define N403_DIZ_SML 0
|
|
#define N403_DIZ_MID 1
|
|
#define N403_DIZ_RUG 2
|
|
|
|
//---------------------------------------------------------------------------------------------------
|
|
// Dither pattern
|
|
//---------------------------------------------------------------------------------------------------
|
|
#define N403_ALLDIZNUM 64
|
|
#define N403_DIZSPC 4
|
|
|
|
//---------------------------------------------------------------------------------------------------
|
|
// size of each table
|
|
//---------------------------------------------------------------------------------------------------
|
|
#define N403_DIZSIZ_B1 (32 * 32) // dither table size (2value)
|
|
#define N403_DIZSIZ_B2 (16 * 16 * 3) // dither table size (4value)
|
|
#define N403_DIZSIZ_B4 ( 8 * 8 * 15) // dither table size (16value)
|
|
#define N403_ENTDIZSIZ_B2 (16 * 16 * 3) // entry dither table size (4value)
|
|
#define N403_TNRTBLSIZ 256 // toner density table size
|
|
#define N403_GLDNUM 32 // LUT table grid
|
|
#define N403_GLDSPC 8 // LUT table grid interval
|
|
// LUT table size
|
|
#define N403_LUTTBLSIZ ((DWORD)N403_GLDNUM * N403_GLDNUM * N403_GLDNUM * sizeof(CMYK))
|
|
#define N403_CCHNUM 256 // Number of cache tables
|
|
#define N403_CCHRGBSIZ (N403_CCHNUM * sizeof(RGBS)) // Cache table size(RGB)
|
|
#define N403_CCHCMYSIZ (N403_CCHNUM * sizeof(CMYK)) // Cache table size(CMYK)
|
|
|
|
|
|
//---------------------------------------------------------------------------------------------------
|
|
// Structure for control dithering and color-matching
|
|
//---------------------------------------------------------------------------------------------------
|
|
typedef struct {
|
|
DWORD ColMon; // Color/Monochrome
|
|
DWORD PrnMod; // Printermode
|
|
struct { // Structure for dither pattern
|
|
DWORD Num; // Table current number(0�`2)
|
|
LPBYTE Tbl[3][4]; // Data table
|
|
} Diz;
|
|
struct { // Structure for entry dither pattern
|
|
LPBYTE Tbl[4]; // Data table
|
|
} EntDiz;
|
|
struct { // Structure for toner density table
|
|
LPBYTE Tbl; // Data table
|
|
} Tnr;
|
|
struct { // Structure for LUT table
|
|
LPCMYK Tbl; // Data table
|
|
LPRGB CchRgb; // Cache table(RGB)
|
|
LPCMYK CchCmy; // Cache table(CMYK)
|
|
} Lut;
|
|
DWORD DizSiz[4]; // dither pattern size
|
|
} N403DIZINF, *LPN403DIZINF;
|
|
|
|
|
|
|
|
//***************************************************************************************************
|
|
// Functions
|
|
//***************************************************************************************************
|
|
VOID WINAPI N403DizPtnMak(LPN403DIZINF, DWORD, DWORD);
|
|
VOID WINAPI N403TnrTblMak(LPN403DIZINF, LONG);
|
|
DWORD WINAPI N403Diz002(LPN403DIZINF, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPCMYK, LPBYTE, LPBYTE, LPBYTE, LPBYTE);
|
|
DWORD WINAPI N403Diz004(LPN403DIZINF, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPCMYK, LPBYTE, LPBYTE, LPBYTE, LPBYTE);
|
|
DWORD WINAPI N403Diz016(LPN403DIZINF, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPCMYK, LPBYTE, LPBYTE, LPBYTE, LPBYTE);
|
|
DWORD WINAPI N403DizSml(LPN403DIZINF, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPCMYK, LPBYTE, LPBYTE, LPBYTE, LPBYTE);
|
|
DWORD WINAPI N403DizPrn(LPN403DIZINF, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, LPCMYK, LPBYTE, LPBYTE, LPBYTE, LPBYTE);
|
|
VOID WINAPI N403ColMch000(LPN403DIZINF, LPRGB, LPCMYK, DWORD, DWORD);
|
|
VOID WINAPI N403ColMch001(LPN403DIZINF, LPRGB, LPCMYK, DWORD, DWORD);
|
|
VOID WINAPI N403ColVivPrc(LPN403DIZINF, LPCMYK, DWORD, DWORD);
|
|
VOID WINAPI N403ColCnvSld(LPN403DIZINF, LPRGB, LPCMYK, DWORD, DWORD);
|
|
VOID WINAPI N403ColCnvL02(LPN403DIZINF, LPRGB, LPCMYK, DWORD);
|
|
VOID WINAPI N403ColCnvMon(LPN403DIZINF, LPRGB, LPCMYK, DWORD);
|
|
|
|
|
|
// End of N403DIZ.H
|
|
|