📄 qrasterdefs_p.h
字号:
/* */#define qt_ft_pixel_mode_none QT_FT_PIXEL_MODE_NONE#define qt_ft_pixel_mode_mono QT_FT_PIXEL_MODE_MONO#define qt_ft_pixel_mode_grays QT_FT_PIXEL_MODE_GRAY#define qt_ft_pixel_mode_pal2 QT_FT_PIXEL_MODE_GRAY2#define qt_ft_pixel_mode_pal4 QT_FT_PIXEL_MODE_GRAY4 /* */#if 0 /*************************************************************************/ /* */ /* <Enum> */ /* QT_FT_Palette_Mode */ /* */ /* <Description> */ /* THIS TYPE IS DEPRECATED. DO NOT USE IT! */ /* */ /* An enumeration type used to describe the format of a bitmap */ /* palette, used with qt_ft_pixel_mode_pal4 and qt_ft_pixel_mode_pal8. */ /* */ /* <Fields> */ /* qt_ft_palette_mode_rgb :: The palette is an array of 3-bytes RGB */ /* records. */ /* */ /* qt_ft_palette_mode_rgba :: The palette is an array of 4-bytes RGBA */ /* records. */ /* */ /* <Note> */ /* As qt_ft_pixel_mode_pal2, pal4 and pal8 are currently unused by */ /* FreeType, these types are not handled by the library itself. */ /* */ typedef enum QT_FT_Palette_Mode_ { qt_ft_palette_mode_rgb = 0, qt_ft_palette_mode_rgba, qt_ft_palettte_mode_max /* do not remove */ } QT_FT_Palette_Mode; /* */#endif /*************************************************************************/ /* */ /* <Struct> */ /* QT_FT_Bitmap */ /* */ /* <Description> */ /* A structure used to describe a bitmap or pixmap to the raster. */ /* Note that we now manage pixmaps of various depths through the */ /* `pixel_mode' field. */ /* */ /* <Fields> */ /* rows :: The number of bitmap rows. */ /* */ /* width :: The number of pixels in bitmap row. */ /* */ /* pitch :: The pitch's absolute value is the number of bytes */ /* taken by one bitmap row, including padding. */ /* However, the pitch is positive when the bitmap has */ /* a `down' flow, and negative when it has an `up' */ /* flow. In all cases, the pitch is an offset to add */ /* to a bitmap pointer in order to go down one row. */ /* */ /* buffer :: A typeless pointer to the bitmap buffer. This */ /* value should be aligned on 32-bit boundaries in */ /* most cases. */ /* */ /* num_grays :: This field is only used with */ /* `QT_FT_PIXEL_MODE_GRAY'; it gives the number of gray */ /* levels used in the bitmap. */ /* */ /* pixel_mode :: The pixel mode, i.e., how pixel bits are stored. */ /* See @QT_FT_Pixel_Mode for possible values. */ /* */ /* palette_mode :: This field is only used with paletted pixel modes; */ /* it indicates how the palette is stored. */ /* */ /* palette :: A typeless pointer to the bitmap palette; only */ /* used for paletted pixel modes. */ /* */ /* <Note> */ /* For now, the only pixel mode supported by FreeType are mono and */ /* grays. However, drivers might be added in the future to support */ /* more `colorful' options. */ /* */ /* When using pixel modes pal2, pal4 and pal8 with a void `palette' */ /* field, a gray pixmap with respectively 4, 16, and 256 levels of */ /* gray is assumed. This, in order to be compatible with some */ /* embedded bitmap formats defined in the TrueType specification. */ /* */ /* Note that no font was found presenting such embedded bitmaps, so */ /* this is currently completely unhandled by the library. */ /* */ typedef struct QT_FT_Bitmap_ { int rows; int width; int pitch; unsigned char* buffer; short num_grays; char pixel_mode; char palette_mode; void* palette; } QT_FT_Bitmap; /*************************************************************************/ /* */ /* <Section> */ /* outline_processing */ /* */ /*************************************************************************/ /*************************************************************************/ /* */ /* <Struct> */ /* QT_FT_Outline */ /* */ /* <Description> */ /* This structure is used to describe an outline to the scan-line */ /* converter. */ /* */ /* <Fields> */ /* n_contours :: The number of contours in the outline. */ /* */ /* n_points :: The number of points in the outline. */ /* */ /* points :: A pointer to an array of `n_points' QT_FT_Vector */ /* elements, giving the outline's point coordinates. */ /* */ /* tags :: A pointer to an array of `n_points' chars, giving */ /* each outline point's type. If bit 0 is unset, the */ /* point is `off' the curve, i.e. a Bezier control */ /* point, while it is `on' when set. */ /* */ /* Bit 1 is meaningful for `off' points only. If set, */ /* it indicates a third-order Bezier arc control point; */ /* and a second-order control point if unset. */ /* */ /* contours :: An array of `n_contours' shorts, giving the end */ /* point of each contour within the outline. For */ /* example, the first contour is defined by the points */ /* `0' to `contours[0]', the second one is defined by */ /* the points `contours[0]+1' to `contours[1]', etc. */ /* */ /* flags :: A set of bit flags used to characterize the outline */ /* and give hints to the scan-converter and hinter on */ /* how to convert/grid-fit it. See QT_FT_Outline_Flags. */ /* */ typedef struct QT_FT_Outline_ { int n_contours; /* number of contours in glyph */ int n_points; /* number of points in the glyph */ QT_FT_Vector* points; /* the outline's points */ char* tags; /* the points flags */ int* contours; /* the contour end points */ int flags; /* outline masks */ } QT_FT_Outline; /*************************************************************************/ /* */ /* <Enum> */ /* QT_FT_OUTLINE_FLAGS */ /* */ /* <Description> */ /* A list of bit-field constants use for the flags in an outline's */ /* `flags' field. */ /* */ /* <Values> */ /* QT_FT_OUTLINE_NONE :: Value 0 is reserved. */ /* */ /* QT_FT_OUTLINE_OWNER :: If set, this flag indicates that the */ /* outline's field arrays (i.e. */ /* `points', `flags' & `contours') are */ /* `owned' by the outline object, and */ /* should thus be freed when it is */ /* destroyed. */ /* */ /* QT_FT_OUTLINE_EVEN_ODD_FILL :: By default, outlines are filled using */ /* the non-zero winding rule. If set to */ /* 1, the outline will be filled using */ /* the even-odd fill rule (only works */ /* with the smooth raster). */ /* */ /* QT_FT_OUTLINE_REVERSE_FILL :: By default, outside contours of an */ /* outline are oriented in clock-wise */ /* direction, as defined in the TrueType */ /* specification. This flag is set if */ /* the outline uses the opposite */ /* direction (typically for Type 1 */ /* fonts). This flag is ignored by the */ /* scan-converter. However, it is very */ /* important for the auto-hinter. */ /* */ /* QT_FT_OUTLINE_IGNORE_DROPOUTS :: By default, the scan converter will */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -