| 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 |