| 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 _FX_DIRECT_WRITE_ | 7 #ifndef _FX_DIRECT_WRITE_ |
| 8 #define _FX_DIRECT_WRITE_ | 8 #define _FX_DIRECT_WRITE_ |
| 9 #ifndef DECLSPEC_UUID | 9 #ifndef DECLSPEC_UUID |
| 10 #if (_MSC_VER >= 1100) && defined (__cplusplus) | 10 #if (_MSC_VER >= 1100) && defined(__cplusplus) |
| 11 #define DECLSPEC_UUID(x) __declspec(uuid(x)) | 11 #define DECLSPEC_UUID(x) __declspec(uuid(x)) |
| 12 #else | 12 #else |
| 13 #define DECLSPEC_UUID(x) | 13 #define DECLSPEC_UUID(x) |
| 14 #endif | 14 #endif |
| 15 #endif | 15 #endif |
| 16 #ifndef DECLSPEC_NOVTABLE | 16 #ifndef DECLSPEC_NOVTABLE |
| 17 #if (_MSC_VER >= 1100) && defined(__cplusplus) | 17 #if (_MSC_VER >= 1100) && defined(__cplusplus) |
| 18 #define DECLSPEC_NOVTABLE __declspec(novtable) | 18 #define DECLSPEC_NOVTABLE __declspec(novtable) |
| 19 #else | 19 #else |
| 20 #define DECLSPEC_NOVTABLE | 20 #define DECLSPEC_NOVTABLE |
| 21 #endif | 21 #endif |
| 22 #endif | 22 #endif |
| 23 #if(WINVER < 0x0500) | 23 #if (WINVER < 0x0500) |
| 24 #ifndef _MAC | 24 #ifndef _MAC |
| 25 DECLARE_HANDLE(HMONITOR); | 25 DECLARE_HANDLE(HMONITOR); |
| 26 #endif | 26 #endif |
| 27 #endif | 27 #endif |
| 28 class CDWriteExt | 28 class CDWriteExt { |
| 29 { | 29 public: |
| 30 public: | 30 CDWriteExt(); |
| 31 CDWriteExt(); | 31 ~CDWriteExt(); |
| 32 ~CDWriteExt(); | |
| 33 | 32 |
| 34 void» » » Load(); | 33 void Load(); |
| 35 void Unload(); | 34 void Unload(); |
| 36 | 35 |
| 37 FX_BOOL» » » IsAvailable() | 36 FX_BOOL IsAvailable() { return m_pDWriteFactory != NULL; } |
| 38 { | |
| 39 return m_pDWriteFactory != NULL; | |
| 40 } | |
| 41 | 37 |
| 42 void*» » » DwCreateFontFaceFromStream(FX_LPBYTE pData, FX_D
WORD size, int simulation_style); | 38 void* DwCreateFontFaceFromStream(FX_LPBYTE pData, |
| 43 FX_BOOL DwCreateRenderingTarget(CFX_DIBitmap* pSrc, void** renderTar
get); | 39 FX_DWORD size, |
| 44 void DwDeleteRenderingTarget(void* renderTarget); | 40 int simulation_style); |
| 45 FX_BOOL» » » DwRendingString(void* renderTarget, CFX_ClipRgn*
pClipRgn, FX_RECT& stringRect, CFX_AffineMatrix* pMatrix, | 41 FX_BOOL DwCreateRenderingTarget(CFX_DIBitmap* pSrc, void** renderTarget); |
| 46 void *font, FX_FLOAT font_size, FX_ARGB text
_color, | 42 void DwDeleteRenderingTarget(void* renderTarget); |
| 47 int glyph_count, unsigned short* glyph_indic
es, | 43 FX_BOOL DwRendingString(void* renderTarget, |
| 48 FX_FLOAT baselineOriginX, FX_FLOAT baselineO
riginY, | 44 CFX_ClipRgn* pClipRgn, |
| 49 void* glyph_offsets, | 45 FX_RECT& stringRect, |
| 50 FX_FLOAT* glyph_advances); | 46 CFX_AffineMatrix* pMatrix, |
| 51 void» » » DwDeleteFont(void* pFont); | 47 void* font, |
| 48 FX_FLOAT font_size, |
| 49 FX_ARGB text_color, |
| 50 int glyph_count, |
| 51 unsigned short* glyph_indices, |
| 52 FX_FLOAT baselineOriginX, |
| 53 FX_FLOAT baselineOriginY, |
| 54 void* glyph_offsets, |
| 55 FX_FLOAT* glyph_advances); |
| 56 void DwDeleteFont(void* pFont); |
| 52 | 57 |
| 53 protected: | 58 protected: |
| 54 void*» » » m_hModule; | 59 void* m_hModule; |
| 55 void*» » » m_pDWriteFactory; | 60 void* m_pDWriteFactory; |
| 56 void*» » m_pDwFontContext; | 61 void* m_pDwFontContext; |
| 57 void*» m_pDwTextRenderer; | 62 void* m_pDwTextRenderer; |
| 58 }; | 63 }; |
| 59 #endif | 64 #endif |
| OLD | NEW |