splashtypes.h

来自「这是一个做pdf阅读器的源代码文件,是大家学习阅读器资料的很好参考」· C头文件 代码 · 共 133 行

H
133
字号
//========================================================================//// SplashTypes.h////========================================================================#ifndef SPLASHTYPES_H#define SPLASHTYPES_H#include <aconf.h>#include "gtypes.h"//------------------------------------------------------------------------// coordinates//------------------------------------------------------------------------#if USE_FIXEDPOINT#include "FixedPoint.h"typedef FixedPoint SplashCoord;#elsetypedef double SplashCoord;#endif//------------------------------------------------------------------------// antialiasing//------------------------------------------------------------------------#define splashAASize 4//------------------------------------------------------------------------// colors//------------------------------------------------------------------------enum SplashColorMode {  splashModeMono1,		// 1 bit per component, 8 pixels per byte,				//   MSbit is on the left  splashModeMono8,		// 1 byte per component, 1 byte per pixel  splashModeRGB8,		// 1 byte per component, 3 bytes per pixel:				//   RGBRGB...  splashModeBGR8		// 1 byte per component, 3 bytes per pixel:				//   BGRBGR...#if SPLASH_CMYK  ,  splashModeCMYK8		// 1 byte per component, 4 bytes per pixel:				//   CMYKCMYK...#endif};// number of components in each color mode// (defined in SplashState.cc)extern int splashColorModeNComps[];// max number of components in any SplashColor#if SPLASH_CMYK#  define splashMaxColorComps 4#else#  define splashMaxColorComps 3#endiftypedef Guchar SplashColor[splashMaxColorComps];typedef Guchar *SplashColorPtr;// RGB8static inline Guchar splashRGB8R(SplashColorPtr rgb8) { return rgb8[0]; }static inline Guchar splashRGB8G(SplashColorPtr rgb8) { return rgb8[1]; }static inline Guchar splashRGB8B(SplashColorPtr rgb8) { return rgb8[2]; }// BGR8static inline Guchar splashBGR8R(SplashColorPtr bgr8) { return bgr8[2]; }static inline Guchar splashBGR8G(SplashColorPtr bgr8) { return bgr8[1]; }static inline Guchar splashBGR8B(SplashColorPtr bgr8) { return bgr8[0]; }#if SPLASH_CMYK// CMYK8static inline Guchar splashCMYK8C(SplashColorPtr cmyk8) { return cmyk8[0]; }static inline Guchar splashCMYK8M(SplashColorPtr cmyk8) { return cmyk8[1]; }static inline Guchar splashCMYK8Y(SplashColorPtr cmyk8) { return cmyk8[2]; }static inline Guchar splashCMYK8K(SplashColorPtr cmyk8) { return cmyk8[3]; }#endifstatic inline void splashColorCopy(SplashColorPtr dest, SplashColorPtr src) {  dest[0] = src[0];  dest[1] = src[1];  dest[2] = src[2];#if SPLASH_CMYK  dest[3] = src[3];#endif}static inline void splashColorXor(SplashColorPtr dest, SplashColorPtr src) {  dest[0] ^= src[0];  dest[1] ^= src[1];  dest[2] ^= src[2];#if SPLASH_CMYK  dest[3] ^= src[3];#endif}//------------------------------------------------------------------------// blend functions//------------------------------------------------------------------------typedef void (*SplashBlendFunc)(SplashColorPtr src, SplashColorPtr dest,				SplashColorPtr blend, SplashColorMode cm);//------------------------------------------------------------------------// screen parameters//------------------------------------------------------------------------enum SplashScreenType {  splashScreenDispersed,  splashScreenClustered,  splashScreenStochasticClustered};struct SplashScreenParams {  SplashScreenType type;  int size;  int dotRadius;  SplashCoord gamma;  SplashCoord blackThreshold;  SplashCoord whiteThreshold;};//------------------------------------------------------------------------// error results//------------------------------------------------------------------------typedef int SplashError;#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?