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 XFA_FXBARCODE_ONED_BC_ONEDIMWRITER_H_ | 7 #ifndef XFA_FXBARCODE_ONED_BC_ONEDIMWRITER_H_ |
8 #define XFA_FXBARCODE_ONED_BC_ONEDIMWRITER_H_ | 8 #define XFA_FXBARCODE_ONED_BC_ONEDIMWRITER_H_ |
9 | 9 |
10 #include "core/fxge/include/fx_ge.h" | 10 #include "core/fxge/include/fx_ge.h" |
11 #include "xfa/fxbarcode/BC_Writer.h" | 11 #include "xfa/fxbarcode/BC_Writer.h" |
12 #include "xfa/fxbarcode/include/BC_Library.h" | 12 #include "xfa/fxbarcode/include/BC_Library.h" |
13 | 13 |
14 class CBC_CommonBitMatrix; | 14 class CBC_CommonBitMatrix; |
15 class CFX_Font; | 15 class CFX_Font; |
16 class CFX_RenderDevice; | 16 class CFX_RenderDevice; |
17 | 17 |
18 class CBC_OneDimWriter : public CBC_Writer { | 18 class CBC_OneDimWriter : public CBC_Writer { |
19 public: | 19 public: |
20 CBC_OneDimWriter(); | 20 CBC_OneDimWriter(); |
21 virtual ~CBC_OneDimWriter(); | 21 ~CBC_OneDimWriter() override; |
22 | 22 |
23 uint8_t* Encode(const CFX_ByteString& contents, | 23 virtual uint8_t* Encode(const CFX_ByteString& contents, |
24 BCFORMAT format, | 24 BCFORMAT format, |
25 int32_t& outWidth, | 25 int32_t& outWidth, |
26 int32_t& outHeight, | 26 int32_t& outHeight, |
27 int32_t& e); | 27 int32_t& e); |
28 uint8_t* Encode(const CFX_ByteString& contents, | 28 virtual uint8_t* Encode(const CFX_ByteString& contents, |
29 BCFORMAT format, | 29 BCFORMAT format, |
30 int32_t& outWidth, | 30 int32_t& outWidth, |
31 int32_t& outHeight, | 31 int32_t& outHeight, |
32 int32_t hints, | 32 int32_t hints, |
33 int32_t& e); | 33 int32_t& e); |
34 virtual uint8_t* Encode(const CFX_ByteString& contents, | 34 virtual uint8_t* Encode(const CFX_ByteString& contents, |
35 int32_t& outLength, | 35 int32_t& outLength, |
36 int32_t& e) { | 36 int32_t& e); |
37 return nullptr; | |
38 } | |
39 | 37 |
40 virtual void RenderResult(const CFX_WideStringC& contents, | 38 virtual void RenderResult(const CFX_WideStringC& contents, |
41 uint8_t* code, | 39 uint8_t* code, |
42 int32_t codeLength, | 40 int32_t codeLength, |
43 FX_BOOL isDevice, | 41 FX_BOOL isDevice, |
44 int32_t& e); | 42 int32_t& e); |
45 virtual void RenderBitmapResult(CFX_DIBitmap*& pOutBitmap, | 43 virtual void RenderBitmapResult(CFX_DIBitmap*& pOutBitmap, |
46 const CFX_WideStringC& contents, | 44 const CFX_WideStringC& contents, |
47 int32_t& e); | 45 int32_t& e); |
48 virtual void RenderDeviceResult(CFX_RenderDevice* device, | 46 virtual void RenderDeviceResult(CFX_RenderDevice* device, |
49 const CFX_Matrix* matrix, | 47 const CFX_Matrix* matrix, |
50 const CFX_WideStringC& contents, | 48 const CFX_WideStringC& contents, |
51 int32_t& e); | 49 int32_t& e); |
52 virtual FX_BOOL CheckContentValidity(const CFX_WideStringC& contents) { | 50 virtual FX_BOOL CheckContentValidity(const CFX_WideStringC& contents); |
53 return TRUE; | 51 virtual CFX_WideString FilterContents(const CFX_WideStringC& contents); |
54 } | 52 virtual CFX_WideString RenderTextContents(const CFX_WideStringC& contents); |
55 virtual CFX_WideString FilterContents(const CFX_WideStringC& contents) { | |
56 return CFX_WideString(); | |
57 } | |
58 virtual CFX_WideString RenderTextContents(const CFX_WideStringC& contents) { | |
59 return CFX_WideString(); | |
60 } | |
61 virtual void SetPrintChecksum(FX_BOOL checksum); | 53 virtual void SetPrintChecksum(FX_BOOL checksum); |
62 virtual void SetDataLength(int32_t length); | 54 virtual void SetDataLength(int32_t length); |
63 virtual void SetCalcChecksum(int32_t state); | 55 virtual void SetCalcChecksum(int32_t state); |
64 virtual void SetFontSize(FX_FLOAT size); | 56 virtual void SetFontSize(FX_FLOAT size); |
65 virtual void SetFontStyle(int32_t style); | 57 virtual void SetFontStyle(int32_t style); |
66 virtual void SetFontColor(FX_ARGB color); | 58 virtual void SetFontColor(FX_ARGB color); |
67 virtual FX_BOOL SetFont(CFX_Font* cFont); | 59 FX_BOOL SetFont(CFX_Font* cFont); |
68 | 60 |
69 protected: | 61 protected: |
70 void CalcTextInfo(const CFX_ByteString& text, | 62 virtual void CalcTextInfo(const CFX_ByteString& text, |
71 FXTEXT_CHARPOS* charPos, | 63 FXTEXT_CHARPOS* charPos, |
72 CFX_Font* cFont, | 64 CFX_Font* cFont, |
73 FX_FLOAT geWidth, | 65 FX_FLOAT geWidth, |
74 int32_t fontSize, | 66 int32_t fontSize, |
75 FX_FLOAT& charsLen); | 67 FX_FLOAT& charsLen); |
76 virtual void ShowChars(const CFX_WideStringC& contents, | 68 virtual void ShowChars(const CFX_WideStringC& contents, |
77 CFX_DIBitmap* pOutBitmap, | 69 CFX_DIBitmap* pOutBitmap, |
78 CFX_RenderDevice* device, | 70 CFX_RenderDevice* device, |
79 const CFX_Matrix* matrix, | 71 const CFX_Matrix* matrix, |
80 int32_t barWidth, | 72 int32_t barWidth, |
81 int32_t multiple, | 73 int32_t multiple, |
82 int32_t& e); | 74 int32_t& e); |
83 virtual void ShowBitmapChars(CFX_DIBitmap* pOutBitmap, | 75 virtual void ShowBitmapChars(CFX_DIBitmap* pOutBitmap, |
84 const CFX_ByteString str, | 76 const CFX_ByteString str, |
85 FX_FLOAT geWidth, | 77 FX_FLOAT geWidth, |
86 FXTEXT_CHARPOS* pCharPos, | 78 FXTEXT_CHARPOS* pCharPos, |
87 FX_FLOAT locX, | 79 FX_FLOAT locX, |
88 FX_FLOAT locY, | 80 FX_FLOAT locY, |
89 int32_t barWidth); | 81 int32_t barWidth); |
90 virtual void ShowDeviceChars(CFX_RenderDevice* device, | 82 virtual void ShowDeviceChars(CFX_RenderDevice* device, |
91 const CFX_Matrix* matrix, | 83 const CFX_Matrix* matrix, |
92 const CFX_ByteString str, | 84 const CFX_ByteString str, |
93 FX_FLOAT geWidth, | 85 FX_FLOAT geWidth, |
94 FXTEXT_CHARPOS* pCharPos, | 86 FXTEXT_CHARPOS* pCharPos, |
95 FX_FLOAT locX, | 87 FX_FLOAT locX, |
96 FX_FLOAT locY, | 88 FX_FLOAT locY, |
97 int32_t barWidth); | 89 int32_t barWidth); |
98 int32_t AppendPattern(uint8_t* target, | 90 virtual int32_t AppendPattern(uint8_t* target, |
99 int32_t pos, | 91 int32_t pos, |
100 const int32_t* pattern, | 92 const int32_t* pattern, |
101 int32_t patternLength, | 93 int32_t patternLength, |
102 int32_t startColor, | 94 int32_t startColor, |
103 int32_t& e); | 95 int32_t& e); |
| 96 |
104 FX_WCHAR Upper(FX_WCHAR ch); | 97 FX_WCHAR Upper(FX_WCHAR ch); |
105 | 98 |
106 FX_BOOL m_bPrintChecksum; | 99 FX_BOOL m_bPrintChecksum; |
107 int32_t m_iDataLenth; | 100 int32_t m_iDataLenth; |
108 FX_BOOL m_bCalcChecksum; | 101 FX_BOOL m_bCalcChecksum; |
109 CFX_Font* m_pFont; | 102 CFX_Font* m_pFont; |
110 FX_FLOAT m_fFontSize; | 103 FX_FLOAT m_fFontSize; |
111 int32_t m_iFontStyle; | 104 int32_t m_iFontStyle; |
112 uint32_t m_fontColor; | 105 uint32_t m_fontColor; |
113 BC_TEXT_LOC m_locTextLoc; | 106 BC_TEXT_LOC m_locTextLoc; |
114 int32_t m_iContentLen; | 107 int32_t m_iContentLen; |
115 FX_BOOL m_bLeftPadding; | 108 FX_BOOL m_bLeftPadding; |
116 FX_BOOL m_bRightPadding; | 109 FX_BOOL m_bRightPadding; |
117 CBC_CommonBitMatrix* m_output; | 110 CBC_CommonBitMatrix* m_output; |
118 int32_t m_barWidth; | 111 int32_t m_barWidth; |
119 int32_t m_multiple; | 112 int32_t m_multiple; |
120 FX_FLOAT m_outputHScale; | 113 FX_FLOAT m_outputHScale; |
121 }; | 114 }; |
122 | 115 |
123 #endif // XFA_FXBARCODE_ONED_BC_ONEDIMWRITER_H_ | 116 #endif // XFA_FXBARCODE_ONED_BC_ONEDIMWRITER_H_ |
OLD | NEW |