OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef CORE_INCLUDE_FXGE_FX_DIB_H_ | 7 #ifndef CORE_INCLUDE_FXGE_FX_DIB_H_ |
8 #define CORE_INCLUDE_FXGE_FX_DIB_H_ | 8 #define CORE_INCLUDE_FXGE_FX_DIB_H_ |
9 | 9 |
10 #include "../fxcrt/fx_ext.h" | 10 #include "../fxcrt/fx_ext.h" |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 typedef FX_DWORD FX_CMYK; | 67 typedef FX_DWORD FX_CMYK; |
68 class CFX_ClipRgn; | 68 class CFX_ClipRgn; |
69 class CFX_DIBSource; | 69 class CFX_DIBSource; |
70 class CFX_DIBitmap; | 70 class CFX_DIBitmap; |
71 #define FXSYS_RGB(r, g, b) ((r) | ((g) << 8) | ((b) << 16)) | 71 #define FXSYS_RGB(r, g, b) ((r) | ((g) << 8) | ((b) << 16)) |
72 #define FXSYS_GetRValue(rgb) ((rgb) & 0xff) | 72 #define FXSYS_GetRValue(rgb) ((rgb) & 0xff) |
73 #define FXSYS_GetGValue(rgb) (((rgb) >> 8) & 0xff) | 73 #define FXSYS_GetGValue(rgb) (((rgb) >> 8) & 0xff) |
74 #define FXSYS_GetBValue(rgb) (((rgb) >> 16) & 0xff) | 74 #define FXSYS_GetBValue(rgb) (((rgb) >> 16) & 0xff) |
75 #define FX_CCOLOR(val) (255-(val)) | 75 #define FX_CCOLOR(val) (255-(val)) |
76 #define FXSYS_CMYK(c, m, y, k) (((c) << 24) | ((m) << 16) | ((y) << 8) | (k)) | 76 #define FXSYS_CMYK(c, m, y, k) (((c) << 24) | ((m) << 16) | ((y) << 8) | (k)) |
77 #define FXSYS_GetCValue(cmyk) ((FX_BYTE)((cmyk) >> 24) & 0xff) | 77 #define FXSYS_GetCValue(cmyk) ((uint8_t)((cmyk) >> 24) & 0xff) |
78 #define FXSYS_GetMValue(cmyk) ((FX_BYTE)((cmyk) >> 16) & 0xff) | 78 #define FXSYS_GetMValue(cmyk) ((uint8_t)((cmyk) >> 16) & 0xff) |
79 #define FXSYS_GetYValue(cmyk) ((FX_BYTE)((cmyk) >> 8) & 0xff) | 79 #define FXSYS_GetYValue(cmyk) ((uint8_t)((cmyk) >> 8) & 0xff) |
80 #define FXSYS_GetKValue(cmyk) ((FX_BYTE)(cmyk) & 0xff) | 80 #define FXSYS_GetKValue(cmyk) ((uint8_t)(cmyk) & 0xff) |
81 void CmykDecode(FX_CMYK cmyk, int& c, int& m, int& y, int& k); | 81 void CmykDecode(FX_CMYK cmyk, int& c, int& m, int& y, int& k); |
82 inline FX_CMYK CmykEncode(int c, int m, int y, int k) | 82 inline FX_CMYK CmykEncode(int c, int m, int y, int k) |
83 { | 83 { |
84 return (c << 24) | (m << 16) | (y << 8) | k; | 84 return (c << 24) | (m << 16) | (y << 8) | k; |
85 } | 85 } |
86 void ArgbDecode(FX_ARGB argb, int& a, int& r, int&g, int& b); | 86 void ArgbDecode(FX_ARGB argb, int& a, int& r, int&g, int& b); |
87 void ArgbDecode(FX_ARGB argb, int& a, FX_COLORREF& rgb); | 87 void ArgbDecode(FX_ARGB argb, int& a, FX_COLORREF& rgb); |
88 inline FX_ARGB ArgbEncode(int a, int r, int g, int b) | 88 inline FX_ARGB ArgbEncode(int a, int r, int g, int b) |
89 { | 89 { |
90 return (a << 24) | (r << 16) | (g << 8) | b; | 90 return (a << 24) | (r << 16) | (g << 8) | b; |
91 } | 91 } |
92 FX_ARGB ArgbEncode(int a, FX_COLORREF rgb); | 92 FX_ARGB ArgbEncode(int a, FX_COLORREF rgb); |
93 #define FXARGB_A(argb) ((FX_BYTE)((argb) >> 24)) | 93 #define FXARGB_A(argb) ((uint8_t)((argb) >> 24)) |
94 #define FXARGB_R(argb) ((FX_BYTE)((argb) >> 16)) | 94 #define FXARGB_R(argb) ((uint8_t)((argb) >> 16)) |
95 #define FXARGB_G(argb) ((FX_BYTE)((argb) >> 8)) | 95 #define FXARGB_G(argb) ((uint8_t)((argb) >> 8)) |
96 #define FXARGB_B(argb) ((FX_BYTE)(argb)) | 96 #define FXARGB_B(argb) ((uint8_t)(argb)) |
97 #define FXARGB_MAKE(a,r,g,b) (((FX_DWORD)(a) << 24) | ((r) << 16) | ((g) << 8) |
(b)) | 97 #define FXARGB_MAKE(a,r,g,b) (((FX_DWORD)(a) << 24) | ((r) << 16) | ((g) << 8) |
(b)) |
98 #define FXARGB_MUL_ALPHA(argb, alpha) (((((argb) >> 24) * (alpha) / 255) << 24)
| ((argb) & 0xffffff)) | 98 #define FXARGB_MUL_ALPHA(argb, alpha) (((((argb) >> 24) * (alpha) / 255) << 24)
| ((argb) & 0xffffff)) |
99 #define FXRGB2GRAY(r,g,b) (((b) * 11 + (g) * 59 + (r) * 30) / 100) | 99 #define FXRGB2GRAY(r,g,b) (((b) * 11 + (g) * 59 + (r) * 30) / 100) |
100 #define FXCMYK2GRAY(c,m,y,k) (((255-(c)) * (255-(k)) * 30 + (255-(m)) * (255-(k)
) * 59 + (255-(y)) * (255-(k)) * 11) / 25500) | 100 #define FXCMYK2GRAY(c,m,y,k) (((255-(c)) * (255-(k)) * 30 + (255-(m)) * (255-(k)
) * 59 + (255-(y)) * (255-(k)) * 11) / 25500) |
101 #define FXDIB_ALPHA_MERGE(backdrop, source, source_alpha) (((backdrop) * (255-(s
ource_alpha)) + (source)*(source_alpha))/255) | 101 #define FXDIB_ALPHA_MERGE(backdrop, source, source_alpha) (((backdrop) * (255-(s
ource_alpha)) + (source)*(source_alpha))/255) |
102 #define FXDIB_ALPHA_UNION(dest, src) ((dest) + (src) - (dest)*(src)/255) | 102 #define FXDIB_ALPHA_UNION(dest, src) ((dest) + (src) - (dest)*(src)/255) |
103 #define FXCMYK_GETDIB(p) ((((FX_LPBYTE)(p))[0] << 24 | (((FX_LPBYTE)(p))[1] << 1
6) | (((FX_LPBYTE)(p))[2] << 8) | ((FX_LPBYTE)(p))[3])) | 103 #define FXCMYK_GETDIB(p) ((((FX_LPBYTE)(p))[0] << 24 | (((FX_LPBYTE)(p))[1] << 1
6) | (((FX_LPBYTE)(p))[2] << 8) | ((FX_LPBYTE)(p))[3])) |
104 #define FXCMYK_SETDIB(p, cmyk) ((FX_LPBYTE)(p))[0] = (FX_BYTE)((cmyk) >> 24), \ | 104 #define FXCMYK_SETDIB(p, cmyk) ((FX_LPBYTE)(p))[0] = (uint8_t)((cmyk) >> 24), \ |
105 ((FX_LPBYTE)(p))[1] = (FX_BYTE)((cmyk) >> 16), \ | 105 ((FX_LPBYTE)(p))[1] = (uint8_t)((cmyk) >> 16), \ |
106 ((FX_LPBYTE)(p))[2] = (FX_BYTE)((cmyk) >> 8), \ | 106 ((FX_LPBYTE)(p))[2] = (uint8_t)((cmyk) >> 8), \ |
107 ((FX_LPBYTE)(p))[3] = (FX_BYTE)(cmyk)) | 107 ((FX_LPBYTE)(p))[3] = (uint8_t)(cmyk)) |
108 #define FXARGB_GETDIB(p) ((((FX_LPBYTE)(p))[0]) | (((FX_LPBYTE)(p))[1] << 8) | (
((FX_LPBYTE)(p))[2] << 16) | (((FX_LPBYTE)(p))[3] << 24)) | 108 #define FXARGB_GETDIB(p) ((((FX_LPBYTE)(p))[0]) | (((FX_LPBYTE)(p))[1] << 8) | (
((FX_LPBYTE)(p))[2] << 16) | (((FX_LPBYTE)(p))[3] << 24)) |
109 #define FXARGB_SETDIB(p, argb) ((FX_LPBYTE)(p))[0] = (FX_BYTE)(argb), \ | 109 #define FXARGB_SETDIB(p, argb) ((FX_LPBYTE)(p))[0] = (uint8_t)(argb), \ |
110 ((FX_LPBYTE)(p))[1] = (FX_BYTE)((argb) >> 8), \ | 110 ((FX_LPBYTE)(p))[1] = (uint8_t)((argb) >> 8), \ |
111 ((FX_LPBYTE)(p))[2] = (FX_BYTE)((argb) >> 16), \ | 111 ((FX_LPBYTE)(p))[2] = (uint8_t)((argb) >> 16), \ |
112 ((FX_LPBYTE)(p))[3] = (FX_BYTE)((argb) >>
24) | 112 ((FX_LPBYTE)(p))[3] = (uint8_t)((argb) >>
24) |
113 #define FXARGB_COPY(dest, src) *(FX_LPBYTE)(dest) = *(FX_LPBYTE)(src), \ | 113 #define FXARGB_COPY(dest, src) *(FX_LPBYTE)(dest) = *(FX_LPBYTE)(src), \ |
114 *((FX_LPBYTE)(dest)+1) = *((FX_LPBYTE)(src)+1), \ | 114 *((FX_LPBYTE)(dest)+1) = *((FX_LPBYTE)(src)+1), \ |
115 *((FX_LPBYTE)(dest)+2) = *((FX_LPBYTE)(src)+2),
\ | 115 *((FX_LPBYTE)(dest)+2) = *((FX_LPBYTE)(src)+2),
\ |
116 *((FX_LPBYTE)(dest)+3) = *((FX_LPBYTE)(
src)+3) | 116 *((FX_LPBYTE)(dest)+3) = *((FX_LPBYTE)(
src)+3) |
117 #define FXCMYK_COPY(dest, src) *(FX_LPBYTE)(dest) = *(FX_LPBYTE)(src), \ | 117 #define FXCMYK_COPY(dest, src) *(FX_LPBYTE)(dest) = *(FX_LPBYTE)(src), \ |
118 *((FX_LPBYTE)(dest)+1) = *((FX_LPBYTE)(src)+1), \ | 118 *((FX_LPBYTE)(dest)+1) = *((FX_LPBYTE)(src)+1), \ |
119 *((FX_LPBYTE)(dest)+2) = *((FX_LPBYTE)(src)+2),
\ | 119 *((FX_LPBYTE)(dest)+2) = *((FX_LPBYTE)(src)+2),
\ |
120 *((FX_LPBYTE)(dest)+3) = *((FX_LPBYTE)(
src)+3) | 120 *((FX_LPBYTE)(dest)+3) = *((FX_LPBYTE)(
src)+3) |
121 #define FXARGB_SETRGBORDERDIB(p, argb) ((FX_LPBYTE)(p))[3] = (FX_BYTE)(argb>>24)
, \ | 121 #define FXARGB_SETRGBORDERDIB(p, argb) ((FX_LPBYTE)(p))[3] = (uint8_t)(argb>>24)
, \ |
122 ((FX_LPBYTE)(p))[0] = (FX_BYTE)((argb) >> 16), \ | 122 ((FX_LPBYTE)(p))[0] = (uint8_t)((argb) >> 16), \ |
123 ((FX_LPBYTE)(p))[1] = (FX_BYTE)((argb) >> 8), \ | 123 ((FX_LPBYTE)(p))[1] = (uint8_t)((argb) >> 8), \ |
124 ((FX_LPBYTE)(p))[2] = (FX_BYTE)(argb) | 124 ((FX_LPBYTE)(p))[2] = (uint8_t)(argb) |
125 #define FXARGB_GETRGBORDERDIB(p) (((FX_LPBYTE)(p))[2]) | (((FX_LPBYTE)(p))[1] <<
8) | (((FX_LPBYTE)(p))[0] << 16) | (((FX_LPBYTE)(p))[3] << 24) | 125 #define FXARGB_GETRGBORDERDIB(p) (((FX_LPBYTE)(p))[2]) | (((FX_LPBYTE)(p))[1] <<
8) | (((FX_LPBYTE)(p))[0] << 16) | (((FX_LPBYTE)(p))[3] << 24) |
126 #define FXARGB_RGBORDERCOPY(dest, src) *((FX_LPBYTE)(dest)+3) = *((FX_LPBYTE)(sr
c)+3), \ | 126 #define FXARGB_RGBORDERCOPY(dest, src) *((FX_LPBYTE)(dest)+3) = *((FX_LPBYTE)(sr
c)+3), \ |
127 *(FX_LPBYTE)(dest) = *((FX_LPBYTE)(src)+2), \ | 127 *(FX_LPBYTE)(dest) = *((FX_LPBYTE)(src)+2), \ |
128 *((FX_LPBYTE)(dest)+1) = *((FX_LPBYTE)(src)+1), \ | 128 *((FX_LPBYTE)(dest)+1) = *((FX_LPBYTE)(src)+1), \ |
129 *((FX_LPBYTE)(dest)+2) = *((FX_LPBYTE)(src)
) | 129 *((FX_LPBYTE)(dest)+2) = *((FX_LPBYTE)(src)
) |
130 #define FXARGB_TODIB(argb) (argb) | 130 #define FXARGB_TODIB(argb) (argb) |
131 #define FXCMYK_TODIB(cmyk) ((FX_BYTE)((cmyk) >> 24) | ((FX_BYTE)((cmyk) >> 16))
<< 8 | ((FX_BYTE)((cmyk) >> 8)) << 16 | ((FX_BYTE)(cmyk) << 24)) | 131 #define FXCMYK_TODIB(cmyk) ((uint8_t)((cmyk) >> 24) | ((uint8_t)((cmyk) >> 16))
<< 8 | ((uint8_t)((cmyk) >> 8)) << 16 | ((uint8_t)(cmyk) << 24)) |
132 #define FXARGB_TOBGRORDERDIB(argb) ((FX_BYTE)(argb>>16) | ((FX_BYTE)(argb>>8)) <
< 8 | ((FX_BYTE)(argb)) << 16 | ((FX_BYTE)(argb>>24) << 24)) | 132 #define FXARGB_TOBGRORDERDIB(argb) ((uint8_t)(argb>>16) | ((uint8_t)(argb>>8)) <
< 8 | ((uint8_t)(argb)) << 16 | ((uint8_t)(argb>>24) << 24)) |
133 #define FXGETFLAG_COLORTYPE(flag)» » » (FX_BYTE)((flag)>>8) | 133 #define FXGETFLAG_COLORTYPE(flag)» » » (uint8_t)((flag)>>8) |
134 #define FXGETFLAG_ALPHA_FILL(flag)» » » (FX_BYTE)(flag) | 134 #define FXGETFLAG_ALPHA_FILL(flag)» » » (uint8_t)(flag) |
135 #define FXGETFLAG_ALPHA_STROKE(flag)» » (FX_BYTE)((flag)>>16) | 135 #define FXGETFLAG_ALPHA_STROKE(flag)» » (uint8_t)((flag)>>16) |
136 #define FXSETFLAG_COLORTYPE(flag, val) flag = (((val)<<8)|(flag&0xffff0
0ff)) | 136 #define FXSETFLAG_COLORTYPE(flag, val) flag = (((val)<<8)|(flag&0xffff0
0ff)) |
137 #define FXSETFLAG_ALPHA_FILL(flag, val) flag = ((val)|(flag&0xffffff00)) | 137 #define FXSETFLAG_ALPHA_FILL(flag, val) flag = ((val)|(flag&0xffffff00)) |
138 #define FXSETFLAG_ALPHA_STROKE(flag, val) flag = (((val)<<16)|(flag&0xff00
ffff)) | 138 #define FXSETFLAG_ALPHA_STROKE(flag, val) flag = (((val)<<16)|(flag&0xff00
ffff)) |
139 class CFX_DIBSource | 139 class CFX_DIBSource |
140 { | 140 { |
141 public: | 141 public: |
142 | 142 |
143 virtual ~CFX_DIBSource(); | 143 virtual ~CFX_DIBSource(); |
144 | 144 |
145 | 145 |
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
408 | 408 |
409 virtual FX_BOOL SetInfo(int width, int height, FXDIB_Format src_
format, FX_DWORD* pSrcPalette) = 0; | 409 virtual FX_BOOL SetInfo(int width, int height, FXDIB_Format src_
format, FX_DWORD* pSrcPalette) = 0; |
410 }; | 410 }; |
411 class CFX_ScanlineCompositor | 411 class CFX_ScanlineCompositor |
412 { | 412 { |
413 public: | 413 public: |
414 CFX_ScanlineCompositor(); | 414 CFX_ScanlineCompositor(); |
415 | 415 |
416 ~CFX_ScanlineCompositor(); | 416 ~CFX_ScanlineCompositor(); |
417 | 417 |
418 FX_BOOL» » » » Init(FXDIB_Format dest_format, FXDIB_For
mat src_format, FX_INT32 width, FX_DWORD* pSrcPalette, | 418 FX_BOOL» » » » Init(FXDIB_Format dest_format, FXDIB_For
mat src_format, int32_t width, FX_DWORD* pSrcPalette, |
419 FX_DWORD mask_color, int blend_type, FX_BOOL bClip,
FX_BOOL bRgbByteOrder = FALSE, int alpha_flag = 0, void* pIccTransform = NULL); | 419 FX_DWORD mask_color, int blend_type, FX_BOOL bClip,
FX_BOOL bRgbByteOrder = FALSE, int alpha_flag = 0, void* pIccTransform = NULL); |
420 | 420 |
421 | 421 |
422 void CompositeRgbBitmapLine(FX_LPBYTE dest_sc
an, FX_LPCBYTE src_scan, int width, FX_LPCBYTE clip_scan, | 422 void CompositeRgbBitmapLine(FX_LPBYTE dest_sc
an, FX_LPCBYTE src_scan, int width, FX_LPCBYTE clip_scan, |
423 FX_LPCBYTE src_extra_alpha = NULL, FX_LPBYTE dst_extra_alpha = NULL)
; | 423 FX_LPCBYTE src_extra_alpha = NULL, FX_LPBYTE dst_extra_alpha = NULL)
; |
424 | 424 |
425 | 425 |
426 void CompositePalBitmapLine(FX_LPBYTE dest_sc
an, FX_LPCBYTE src_scan, int src_left, int width, FX_LPCBYTE clip_scan, | 426 void CompositePalBitmapLine(FX_LPBYTE dest_sc
an, FX_LPCBYTE src_scan, int src_left, int width, FX_LPCBYTE clip_scan, |
427 FX_LPCBYTE src_extra_alpha = NULL, FX_LPBYTE dst_extra_alpha = NULL)
; | 427 FX_LPCBYTE src_extra_alpha = NULL, FX_LPBYTE dst_extra_alpha = NULL)
; |
428 | 428 |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
512 }; | 512 }; |
513 class CStretchEngine; | 513 class CStretchEngine; |
514 class CFX_ImageStretcher | 514 class CFX_ImageStretcher |
515 { | 515 { |
516 public: | 516 public: |
517 | 517 |
518 CFX_ImageStretcher(); | 518 CFX_ImageStretcher(); |
519 | 519 |
520 ~CFX_ImageStretcher(); | 520 ~CFX_ImageStretcher(); |
521 | 521 |
522 FX_INT32» » Start(IFX_ScanlineComposer* pDest, const CFX_DIBSource*
pBitmap, | 522 int32_t» » Start(IFX_ScanlineComposer* pDest, const CFX_DIBSource*
pBitmap, |
523 int dest_width, int dest_height, const FX_RECT& bitmap
_rect, FX_DWORD flags); | 523 int dest_width, int dest_height, const FX_RECT& bitmap
_rect, FX_DWORD flags); |
524 | 524 |
525 | 525 |
526 FX_INT32» » Continue(IFX_Pause* pPause); | 526 int32_t» » Continue(IFX_Pause* pPause); |
527 IFX_ScanlineComposer* m_pDest; | 527 IFX_ScanlineComposer* m_pDest; |
528 const CFX_DIBSource* m_pSource; | 528 const CFX_DIBSource* m_pSource; |
529 CStretchEngine* m_pStretchEngine; | 529 CStretchEngine* m_pStretchEngine; |
530 FX_DWORD m_Flags; | 530 FX_DWORD m_Flags; |
531 FX_BOOL m_bFlipX, | 531 FX_BOOL m_bFlipX, |
532 m_bFlipY; | 532 m_bFlipY; |
533 int m_DestWidth, | 533 int m_DestWidth, |
534 m_DestHeight; | 534 m_DestHeight; |
535 FX_RECT m_ClipRect; | 535 FX_RECT m_ClipRect; |
536 int m_LineIndex; | 536 int m_LineIndex; |
537 int m_DestBPP; | 537 int m_DestBPP; |
538 FX_LPBYTE m_pScanline; | 538 FX_LPBYTE m_pScanline; |
539 FX_LPBYTE m_pMaskScanline; | 539 FX_LPBYTE m_pMaskScanline; |
540 FXDIB_Format m_DestFormat; | 540 FXDIB_Format m_DestFormat; |
541 FX_INT32» » m_Status; | 541 int32_t» » m_Status; |
542 | 542 |
543 FX_INT32» » StartQuickStretch(); | 543 int32_t» » StartQuickStretch(); |
544 | 544 |
545 FX_INT32» » StartStretch(); | 545 int32_t» » StartStretch(); |
546 | 546 |
547 FX_INT32» » ContinueQuickStretch(IFX_Pause* pPause); | 547 int32_t» » ContinueQuickStretch(IFX_Pause* pPause); |
548 | 548 |
549 FX_INT32» » ContinueStretch(IFX_Pause* pPause); | 549 int32_t» » ContinueStretch(IFX_Pause* pPause); |
550 }; | 550 }; |
551 class CFX_ImageTransformer | 551 class CFX_ImageTransformer |
552 { | 552 { |
553 public: | 553 public: |
554 | 554 |
555 CFX_ImageTransformer(); | 555 CFX_ImageTransformer(); |
556 | 556 |
557 ~CFX_ImageTransformer(); | 557 ~CFX_ImageTransformer(); |
558 | 558 |
559 FX_INT32» Start(const CFX_DIBSource* pSrc, const CFX_AffineMatrix* pMatrix
, int flags, const FX_RECT* pClip); | 559 int32_t» Start(const CFX_DIBSource* pSrc, const CFX_AffineMatrix* pMatrix
, int flags, const FX_RECT* pClip); |
560 | 560 |
561 | 561 |
562 FX_INT32» Continue(IFX_Pause* pPause); | 562 int32_t» Continue(IFX_Pause* pPause); |
563 CFX_AffineMatrix* m_pMatrix; | 563 CFX_AffineMatrix* m_pMatrix; |
564 FX_RECT m_StretchClip; | 564 FX_RECT m_StretchClip; |
565 int m_ResultLeft, m_ResultTop, m_ResultWidth, m_ResultHeight
; | 565 int m_ResultLeft, m_ResultTop, m_ResultWidth, m_ResultHeight
; |
566 CFX_AffineMatrix m_dest2stretch; | 566 CFX_AffineMatrix m_dest2stretch; |
567 CFX_ImageStretcher m_Stretcher; | 567 CFX_ImageStretcher m_Stretcher; |
568 CFX_BitmapStorer m_Storer; | 568 CFX_BitmapStorer m_Storer; |
569 FX_DWORD m_Flags; | 569 FX_DWORD m_Flags; |
570 int m_Status; | 570 int m_Status; |
571 }; | 571 }; |
572 class CFX_ImageRenderer | 572 class CFX_ImageRenderer |
573 { | 573 { |
574 public: | 574 public: |
575 | 575 |
576 CFX_ImageRenderer(); | 576 CFX_ImageRenderer(); |
577 | 577 |
578 ~CFX_ImageRenderer(); | 578 ~CFX_ImageRenderer(); |
579 | 579 |
580 FX_INT32» » » Start(CFX_DIBitmap* pDevice, const CFX_ClipRgn*
pClipRgn, | 580 int32_t» » » Start(CFX_DIBitmap* pDevice, const CFX_ClipRgn*
pClipRgn, |
581 const CFX_DIBSource* pSource, int bitmap_alpha, | 581 const CFX_DIBSource* pSource, int bitmap_alpha, |
582 FX_DWORD mask_color, const CFX_AffineMatrix* pMatr
ix, FX_DWORD dib_flags, | 582 FX_DWORD mask_color, const CFX_AffineMatrix* pMatr
ix, FX_DWORD dib_flags, |
583 FX_BOOL bRgbByteOrder = FALSE, int alpha_flag = 0,
void* pIccTransform = NULL, | 583 FX_BOOL bRgbByteOrder = FALSE, int alpha_flag = 0,
void* pIccTransform = NULL, |
584 int blend_type = FXDIB_BLEND_NORMAL); | 584 int blend_type = FXDIB_BLEND_NORMAL); |
585 | 585 |
586 FX_INT32» » » Continue(IFX_Pause* pPause); | 586 int32_t» » » Continue(IFX_Pause* pPause); |
587 protected: | 587 protected: |
588 CFX_DIBitmap* m_pDevice; | 588 CFX_DIBitmap* m_pDevice; |
589 const CFX_ClipRgn* m_pClipRgn; | 589 const CFX_ClipRgn* m_pClipRgn; |
590 int m_BitmapAlpha; | 590 int m_BitmapAlpha; |
591 FX_DWORD m_MaskColor; | 591 FX_DWORD m_MaskColor; |
592 CFX_AffineMatrix m_Matrix; | 592 CFX_AffineMatrix m_Matrix; |
593 CFX_ImageTransformer* m_pTransformer; | 593 CFX_ImageTransformer* m_pTransformer; |
594 CFX_ImageStretcher m_Stretcher; | 594 CFX_ImageStretcher m_Stretcher; |
595 CFX_BitmapComposer m_Composer; | 595 CFX_BitmapComposer m_Composer; |
596 int m_Status; | 596 int m_Status; |
597 int m_DestLeft, m_DestTop; | 597 int m_DestLeft, m_DestTop; |
598 FX_RECT m_ClipBox; | 598 FX_RECT m_ClipBox; |
599 FX_DWORD m_Flags; | 599 FX_DWORD m_Flags; |
600 int m_AlphaFlag; | 600 int m_AlphaFlag; |
601 void* m_pIccTransform; | 601 void* m_pIccTransform; |
602 FX_BOOL m_bRgbByteOrder; | 602 FX_BOOL m_bRgbByteOrder; |
603 int m_BlendType; | 603 int m_BlendType; |
604 }; | 604 }; |
605 | 605 |
606 #endif // CORE_INCLUDE_FXGE_FX_DIB_H_ | 606 #endif // CORE_INCLUDE_FXGE_FX_DIB_H_ |
OLD | NEW |