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_SRC_FXGE_AGG_INCLUDE_FX_AGG_DRIVER_H_ | 7 #ifndef CORE_SRC_FXGE_AGG_INCLUDE_FX_AGG_DRIVER_H_ |
8 #define CORE_SRC_FXGE_AGG_INCLUDE_FX_AGG_DRIVER_H_ | 8 #define CORE_SRC_FXGE_AGG_INCLUDE_FX_AGG_DRIVER_H_ |
9 | 9 |
10 #include "core/include/fxge/fx_ge.h" | 10 #include "core/include/fxge/fx_ge.h" |
11 #include "third_party/agg23/agg_clip_liang_barsky.h" | 11 #include "third_party/agg23/agg_clip_liang_barsky.h" |
12 #include "third_party/agg23/agg_path_storage.h" | 12 #include "third_party/agg23/agg_path_storage.h" |
13 #include "third_party/agg23/agg_rasterizer_scanline_aa.h" | 13 #include "third_party/agg23/agg_rasterizer_scanline_aa.h" |
14 | 14 |
15 class CFX_Matrix; | 15 class CFX_Matrix; |
16 class CFX_PathData; | 16 class CFX_PathData; |
17 | 17 |
18 class CAgg_PathData { | 18 class CAgg_PathData { |
19 public: | 19 public: |
20 CAgg_PathData() {} | 20 CAgg_PathData() {} |
21 ~CAgg_PathData() {} | 21 ~CAgg_PathData() {} |
22 FX_NAMESPACE_DECLARE(agg, path_storage) m_PathData; | |
23 void BuildPath(const CFX_PathData* pPathData, | 22 void BuildPath(const CFX_PathData* pPathData, |
24 const CFX_Matrix* pObject2Device); | 23 const CFX_Matrix* pObject2Device); |
| 24 |
| 25 agg::path_storage m_PathData; |
25 }; | 26 }; |
26 class CFX_AggDeviceDriver : public IFX_RenderDeviceDriver { | 27 class CFX_AggDeviceDriver : public IFX_RenderDeviceDriver { |
27 public: | 28 public: |
28 CFX_AggDeviceDriver(CFX_DIBitmap* pBitmap, | 29 CFX_AggDeviceDriver(CFX_DIBitmap* pBitmap, |
29 int dither_bits, | 30 int dither_bits, |
30 FX_BOOL bRgbByteOrder, | 31 FX_BOOL bRgbByteOrder, |
31 CFX_DIBitmap* pOriDevice, | 32 CFX_DIBitmap* pOriDevice, |
32 FX_BOOL bGroupKnockout); | 33 FX_BOOL bGroupKnockout); |
33 ~CFX_AggDeviceDriver() override; | 34 ~CFX_AggDeviceDriver() override; |
34 | 35 |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 const FXTEXT_CHARPOS* pCharPos, | 116 const FXTEXT_CHARPOS* pCharPos, |
116 CFX_Font* pFont, | 117 CFX_Font* pFont, |
117 CFX_FontCache* pCache, | 118 CFX_FontCache* pCache, |
118 const CFX_Matrix* pObject2Device, | 119 const CFX_Matrix* pObject2Device, |
119 FX_FLOAT font_size, | 120 FX_FLOAT font_size, |
120 FX_DWORD color, | 121 FX_DWORD color, |
121 int alpha_flag, | 122 int alpha_flag, |
122 void* pIccTransform) override; | 123 void* pIccTransform) override; |
123 int GetDriverType() override { return 1; } | 124 int GetDriverType() override { return 1; } |
124 | 125 |
125 FX_BOOL RenderRasterizer(FX_NAMESPACE_DECLARE(agg, rasterizer_scanline_aa) & | 126 FX_BOOL RenderRasterizer(agg::rasterizer_scanline_aa& rasterizer, |
126 rasterizer, | |
127 FX_DWORD color, | 127 FX_DWORD color, |
128 FX_BOOL bFullCover, | 128 FX_BOOL bFullCover, |
129 FX_BOOL bGroupKnockout, | 129 FX_BOOL bGroupKnockout, |
130 int alpha_flag, | 130 int alpha_flag, |
131 void* pIccTransform); | 131 void* pIccTransform); |
132 | 132 |
133 void SetClipMask(FX_NAMESPACE_DECLARE(agg, rasterizer_scanline_aa) & | 133 void SetClipMask(agg::rasterizer_scanline_aa& rasterizer); |
134 rasterizer); | |
135 | 134 |
136 virtual uint8_t* GetBuffer() const { return m_pBitmap->GetBuffer(); } | 135 virtual uint8_t* GetBuffer() const { return m_pBitmap->GetBuffer(); } |
137 | 136 |
138 CFX_DIBitmap* m_pBitmap; | 137 CFX_DIBitmap* m_pBitmap; |
139 CFX_ClipRgn* m_pClipRgn; | 138 CFX_ClipRgn* m_pClipRgn; |
140 CFX_ArrayTemplate<CFX_ClipRgn*> m_StateStack; | 139 CFX_ArrayTemplate<CFX_ClipRgn*> m_StateStack; |
141 void* m_pPlatformGraphics; | 140 void* m_pPlatformGraphics; |
142 void* m_pPlatformBitmap; | 141 void* m_pPlatformBitmap; |
143 void* m_pDwRenderTartget; | 142 void* m_pDwRenderTartget; |
144 int m_FillFlags; | 143 int m_FillFlags; |
145 int m_DitherBits; | 144 int m_DitherBits; |
146 FX_BOOL m_bRgbByteOrder; | 145 FX_BOOL m_bRgbByteOrder; |
147 CFX_DIBitmap* m_pOriDevice; | 146 CFX_DIBitmap* m_pOriDevice; |
148 FX_BOOL m_bGroupKnockout; | 147 FX_BOOL m_bGroupKnockout; |
149 }; | 148 }; |
150 | 149 |
151 #endif // CORE_SRC_FXGE_AGG_INCLUDE_FX_AGG_DRIVER_H_ | 150 #endif // CORE_SRC_FXGE_AGG_INCLUDE_FX_AGG_DRIVER_H_ |
OLD | NEW |