| 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 FPDFSDK_INCLUDE_PDFWINDOW_PWL_UTILS_H_ | 7 #ifndef FPDFSDK_INCLUDE_PDFWINDOW_PWL_UTILS_H_ |
| 8 #define FPDFSDK_INCLUDE_PDFWINDOW_PWL_UTILS_H_ | 8 #define FPDFSDK_INCLUDE_PDFWINDOW_PWL_UTILS_H_ |
| 9 | 9 |
| 10 #include "../../../core/include/fpdfapi/fpdf_parser.h" // For CPDF_Point. | 10 #include "../../../core/include/fpdfapi/fpdf_parser.h" // For CPDF_Point. |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 PWL_PATHDATA_TYPE type; | 102 PWL_PATHDATA_TYPE type; |
| 103 }; | 103 }; |
| 104 | 104 |
| 105 class IPWL_SpellCheck; | 105 class IPWL_SpellCheck; |
| 106 | 106 |
| 107 class PWL_CLASS CPWL_Utils | 107 class PWL_CLASS CPWL_Utils |
| 108 { | 108 { |
| 109 public: | 109 public: |
| 110 static CPDF_Rect InflateR
ect(const CPDF_Rect& rcRect, FX_FLOAT fSize); | 110 static CPDF_Rect InflateR
ect(const CPDF_Rect& rcRect, FX_FLOAT fSize); |
| 111 static CPDF_Rect DeflateR
ect(const CPDF_Rect& rcRect, FX_FLOAT fSize); | 111 static CPDF_Rect DeflateR
ect(const CPDF_Rect& rcRect, FX_FLOAT fSize); |
| 112 » static FX_BOOL» » » » » » » Intersec
tRect(const CPDF_Rect& rect1, const CPDF_Rect& rect2); | 112 » static bool» » » » » » » Intersec
tRect(const CPDF_Rect& rect1, const CPDF_Rect& rect2); |
| 113 » static FX_BOOL» » » » » » » Contains
Rect(const CPDF_Rect& rcParent, const CPDF_Rect& rcChild); | 113 » static bool» » » » » » » Contains
Rect(const CPDF_Rect& rcParent, const CPDF_Rect& rcChild); |
| 114 static CPDF_Rect ScaleRec
t(const CPDF_Rect& rcRect,FX_FLOAT fScale); | 114 static CPDF_Rect ScaleRec
t(const CPDF_Rect& rcRect,FX_FLOAT fScale); |
| 115 static CPVT_WordRange OverlapWordRange
(const CPVT_WordRange& wr1, const CPVT_WordRange& wr2); | 115 static CPVT_WordRange OverlapWordRange
(const CPVT_WordRange& wr1, const CPVT_WordRange& wr2); |
| 116 static CPDF_Rect GetCente
rSquare(const CPDF_Rect & rect); | 116 static CPDF_Rect GetCente
rSquare(const CPDF_Rect & rect); |
| 117 static CPWL_Color Substrac
tColor(const CPWL_Color & sColor,FX_FLOAT fColorSub); | 117 static CPWL_Color Substrac
tColor(const CPWL_Color & sColor,FX_FLOAT fColorSub); |
| 118 static CPWL_Color DevideCo
lor(const CPWL_Color & sColor,FX_FLOAT fColorDevide); | 118 static CPWL_Color DevideCo
lor(const CPWL_Color & sColor,FX_FLOAT fColorDevide); |
| 119 static CPDF_Rect MaxRect(
const CPDF_Rect & rect1,const CPDF_Rect & rect2); | 119 static CPDF_Rect MaxRect(
const CPDF_Rect & rect1,const CPDF_Rect & rect2); |
| 120 static CPDF_Rect OffsetRe
ct(const CPDF_Rect & rect,FX_FLOAT x,FX_FLOAT y); | 120 static CPDF_Rect OffsetRe
ct(const CPDF_Rect & rect,FX_FLOAT x,FX_FLOAT y); |
| 121 static CPDF_Point OffsetPo
int(const CPDF_Point & point,FX_FLOAT x,FX_FLOAT y); | 121 static CPDF_Point OffsetPo
int(const CPDF_Point & point,FX_FLOAT x,FX_FLOAT y); |
| 122 static FX_COLORREF PWLColor
ToFXColor(const CPWL_Color& color, int32_t nTransparancy = 255); | 122 static FX_COLORREF PWLColor
ToFXColor(const CPWL_Color& color, int32_t nTransparancy = 255); |
| 123 » static FX_BOOL» » » » » » » IsBlackO
rWhite(const CPWL_Color& color); | 123 » static bool» » » » » » » IsBlackO
rWhite(const CPWL_Color& color); |
| 124 static CPWL_Color GetRever
seColor(const CPWL_Color& color); | 124 static CPWL_Color GetRever
seColor(const CPWL_Color& color); |
| 125 | 125 |
| 126 » static CFX_ByteString» » » » » GetColorAppStrea
m(const CPWL_Color & color,const FX_BOOL & bFillOrStroke = TRUE); | 126 » static CFX_ByteString» » » » » GetColorAppStrea
m(const CPWL_Color & color,const bool & bFillOrStroke = true); |
| 127 static CFX_ByteString GetBorderAppStre
am(const CPDF_Rect & rect, FX_FLOAT fWidth, | 127 static CFX_ByteString GetBorderAppStre
am(const CPDF_Rect & rect, FX_FLOAT fWidth, |
| 128
const CPWL_Color & color, const CPWL_Color & crLeftTop, const CP
WL_Color & crRightBottom, | 128
const CPWL_Color & color, const CPWL_Color & crLeftTop, const CP
WL_Color & crRightBottom, |
| 129
int32_t nStyle, const CPWL_Dash & dash); | 129
int32_t nStyle, const CPWL_Dash & dash); |
| 130 static CFX_ByteString GetCircleBorderA
ppStream(const CPDF_Rect & rect, FX_FLOAT fWidth, | 130 static CFX_ByteString GetCircleBorderA
ppStream(const CPDF_Rect & rect, FX_FLOAT fWidth, |
| 131
const CPWL_Color & color, const CPWL_Color & crLeftTop, const CP
WL_Color & crRightBottom, | 131
const CPWL_Color & color, const CPWL_Color & crLeftTop, const CP
WL_Color & crRightBottom, |
| 132
int32_t nStyle, const CPWL_Dash & dash); | 132
int32_t nStyle, const CPWL_Dash & dash); |
| 133 static CFX_ByteString GetRectFillAppSt
ream(const CPDF_Rect & rect,const CPWL_Color & color); | 133 static CFX_ByteString GetRectFillAppSt
ream(const CPDF_Rect & rect,const CPWL_Color & color); |
| 134 static CFX_ByteString GetCircleFillApp
Stream(const CPDF_Rect & rect,const CPWL_Color & color); | 134 static CFX_ByteString GetCircleFillApp
Stream(const CPDF_Rect & rect,const CPWL_Color & color); |
| 135 | 135 |
| 136 static CFX_ByteString GetPushButtonApp
Stream(const CPDF_Rect & rcBBox, | 136 static CFX_ByteString GetPushButtonApp
Stream(const CPDF_Rect & rcBBox, |
| 137
IFX_Edit_FontMap * pFontMap, | 137
IFX_Edit_FontMap * pFontMap, |
| 138
CPDF_Stream * pIconStream, | 138
CPDF_Stream * pIconStream, |
| 139
CPDF_IconFit & IconFit, | 139
CPDF_IconFit & IconFit, |
| 140
const CFX_WideString & sLabel, | 140
const CFX_WideString & sLabel, |
| 141
const CPWL_Color & crText, | 141
const CPWL_Color & crText, |
| 142
FX_FLOAT fFontSize, | 142
FX_FLOAT fFontSize, |
| 143
int32_t nLayOut); | 143
int32_t nLayOut); |
| 144 static CFX_ByteString GetCheckBoxAppSt
ream(const CPDF_Rect & rcBBox, | 144 static CFX_ByteString GetCheckBoxAppSt
ream(const CPDF_Rect & rcBBox, |
| 145
int32_t nStyle, | 145
int32_t nStyle, |
| 146
const CPWL_Color & crText); | 146
const CPWL_Color & crText); |
| 147 static CFX_ByteString GetRadioButtonAp
pStream(const CPDF_Rect & rcBBox, | 147 static CFX_ByteString GetRadioButtonAp
pStream(const CPDF_Rect & rcBBox, |
| 148
int32_t nStyle, | 148
int32_t nStyle, |
| 149
const CPWL_Color & crText); | 149
const CPWL_Color & crText); |
| 150 | 150 |
| 151 static CFX_ByteString GetEditAppStream
(IFX_Edit* pEdit, const CPDF_Point & ptOffset, const CPVT_WordRange * pRange = N
ULL, | 151 static CFX_ByteString GetEditAppStream
(IFX_Edit* pEdit, const CPDF_Point & ptOffset, const CPVT_WordRange * pRange = N
ULL, |
| 152 » » » » » » » » » »
» » » » FX_BOOL bContinuous = TRUE, FX_WORD SubWord = 0)
; | 152 » » » » » » » » » »
» » » » bool bContinuous = true, FX_WORD SubWord = 0); |
| 153 static CFX_ByteString GetEditSelAppStr
eam(IFX_Edit* pEdit, const CPDF_Point & ptOffset, | 153 static CFX_ByteString GetEditSelAppStr
eam(IFX_Edit* pEdit, const CPDF_Point & ptOffset, |
| 154
const CPVT_WordRange * pRange = NULL); | 154
const CPVT_WordRange * pRange = NULL); |
| 155 static CFX_ByteString GetSpellCheckApp
Stream(IFX_Edit* pEdit, IPWL_SpellCheck* pSpellCheck, | 155 static CFX_ByteString GetSpellCheckApp
Stream(IFX_Edit* pEdit, IPWL_SpellCheck* pSpellCheck, |
| 156
const CPDF_Point & ptOffset, | 156
const CPDF_Point & ptOffset, |
| 157
const CPVT_WordRange * pRange = NULL); | 157
const CPVT_WordRange * pRange = NULL); |
| 158 static CFX_ByteString GetTextAppStream
(const CPDF_Rect & rcBBox,IFX_Edit_FontMap * pFontMap, | 158 static CFX_ByteString GetTextAppStream
(const CPDF_Rect & rcBBox,IFX_Edit_FontMap * pFontMap, |
| 159
const CFX_WideString & sText, int32_t nAlignment
H, int32_t nAlignmentV, | 159
const CFX_WideString & sText, int32_t nAlignment
H, int32_t nAlignmentV, |
| 160 » » » » » » » » » »
» » » » FX_FLOAT fFontSize, FX_BOOL bMultiLine, FX_BOOL
bAutoReturn, const CPWL_Color & crText); | 160 » » » » » » » » » »
» » » » FX_FLOAT fFontSize, bool bMultiLine, bool bAutoR
eturn, const CPWL_Color & crText); |
| 161 static CFX_ByteString GetDropButtonApp
Stream(const CPDF_Rect & rcBBox); | 161 static CFX_ByteString GetDropButtonApp
Stream(const CPDF_Rect & rcBBox); |
| 162 | 162 |
| 163 static void
DrawFillRect(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device,const CPDF_Rec
t & rect, | 163 static void
DrawFillRect(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device,const CPDF_Rec
t & rect, |
| 164
const CPWL_Color & color, int32_t nTransparancy)
; | 164
const CPWL_Color & color, int32_t nTransparancy)
; |
| 165 static void
DrawFillRect(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, | 165 static void
DrawFillRect(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, |
| 166
const CPDF_Rect & rect,const FX_COLORREF & color
); | 166
const CPDF_Rect & rect,const FX_COLORREF & color
); |
| 167 static void
DrawStrokeRect(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device,const CPDF_R
ect & rect, | 167 static void
DrawStrokeRect(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device,const CPDF_R
ect & rect, |
| 168
const FX_COLORREF & color, FX_FLOAT fWidth); | 168
const FX_COLORREF & color, FX_FLOAT fWidth); |
| 169 static void
DrawStrokeLine(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, | 169 static void
DrawStrokeLine(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, |
| 170
const CPDF_Point & ptMoveTo, const CPDF_Point &
ptLineTo, const FX_COLORREF & color, FX_FLOAT fWidth); | 170
const CPDF_Point & ptMoveTo, const CPDF_Point &
ptLineTo, const FX_COLORREF & color, FX_FLOAT fWidth); |
| 171 static void
DrawBorder(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, | 171 static void
DrawBorder(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, |
| 172
const CPDF_Rect & rect, FX_FLOAT fWidth, | 172
const CPDF_Rect & rect, FX_FLOAT fWidth, |
| 173
const CPWL_Color & color, const CPWL_Color & crLeftTop, const CP
WL_Color & crRightBottom, | 173
const CPWL_Color & color, const CPWL_Color & crLeftTop, const CP
WL_Color & crRightBottom, |
| 174
int32_t nStyle, const CPWL_Dash & dash, int32_t nTransparancy); | 174
int32_t nStyle, const CPWL_Dash & dash, int32_t nTransparancy); |
| 175 static void
DrawFillArea(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, | 175 static void
DrawFillArea(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, |
| 176
const CPDF_Point* pPts, int32_t nCount, const FX
_COLORREF& color); | 176
const CPDF_Point* pPts, int32_t nCount, const FX
_COLORREF& color); |
| 177 static void
DrawShadow(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, | 177 static void
DrawShadow(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, |
| 178 » » » » » » » » » »
» » » » FX_BOOL bVertical, FX_BOOL bHorizontal, CPDF_Rec
t rect, | 178 » » » » » » » » » »
» » » » bool bVertical, bool bHorizontal, CPDF_Rect rect
, |
| 179
int32_t nTransparancy, int32_t nStartGray, int32
_t nEndGray); | 179
int32_t nTransparancy, int32_t nStartGray, int32
_t nEndGray); |
| 180 static void
DrawEditSpellCheck(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, IFX_Edi
t* pEdit, | 180 static void
DrawEditSpellCheck(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device, IFX_Edi
t* pEdit, |
| 181
const CPDF_Rect& rcClip, const CPDF_Point& ptOff
set, const CPVT_WordRange* pRange, | 181
const CPDF_Rect& rcClip, const CPDF_Point& ptOff
set, const CPVT_WordRange* pRange, |
| 182
IPWL_SpellCheck* pSpellCheck); | 182
IPWL_SpellCheck* pSpellCheck); |
| 183 public: | 183 public: |
| 184 static void
ConvertCMYK2RGB(FX_FLOAT dC,FX_FLOAT dM,FX_FLOAT dY,FX_FLOAT dK,FX_FLOAT &dR,FX_
FLOAT &dG,FX_FLOAT &dB); | 184 static void
ConvertCMYK2RGB(FX_FLOAT dC,FX_FLOAT dM,FX_FLOAT dY,FX_FLOAT dK,FX_FLOAT &dR,FX_
FLOAT &dG,FX_FLOAT &dB); |
| 185 static void
ConvertRGB2CMYK(FX_FLOAT dR,FX_FLOAT dG,FX_FLOAT dB,FX_FLOAT &dC,FX_FLOAT &dM,FX
_FLOAT &dY,FX_FLOAT &dK); | 185 static void
ConvertRGB2CMYK(FX_FLOAT dR,FX_FLOAT dG,FX_FLOAT dB,FX_FLOAT &dC,FX_FLOAT &dM,FX
_FLOAT &dY,FX_FLOAT &dK); |
| 186 | 186 |
| 187 static void
ConvertRGB2GRAY(FX_FLOAT dR,FX_FLOAT dG,FX_FLOAT dB,FX_FLOAT &dGray); | 187 static void
ConvertRGB2GRAY(FX_FLOAT dR,FX_FLOAT dG,FX_FLOAT dB,FX_FLOAT &dGray); |
| 188 static void
ConvertGRAY2RGB(FX_FLOAT dGray,FX_FLOAT &dR,FX_FLOAT &dG,FX_FLOAT &dB); | 188 static void
ConvertGRAY2RGB(FX_FLOAT dGray,FX_FLOAT &dR,FX_FLOAT &dG,FX_FLOAT &dB); |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 234 static void
GetGraphics_UpArrow(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Re
ct& crBBox, const PWL_PATH_TYPE type); | 234 static void
GetGraphics_UpArrow(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Re
ct& crBBox, const PWL_PATH_TYPE type); |
| 235 static void
GetGraphics_UpLeftArrow(CFX_ByteString& sPathData, CFX_PathData& path, const CPD
F_Rect& crBBox, const PWL_PATH_TYPE type); | 235 static void
GetGraphics_UpLeftArrow(CFX_ByteString& sPathData, CFX_PathData& path, const CPD
F_Rect& crBBox, const PWL_PATH_TYPE type); |
| 236 static void
GetGraphics_Graph(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Rect
& crBBox, const PWL_PATH_TYPE type); | 236 static void
GetGraphics_Graph(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Rect
& crBBox, const PWL_PATH_TYPE type); |
| 237 static void
GetGraphics_Paperclip(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_
Rect& crBBox, const PWL_PATH_TYPE type); | 237 static void
GetGraphics_Paperclip(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_
Rect& crBBox, const PWL_PATH_TYPE type); |
| 238 static void
GetGraphics_Attachment(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF
_Rect& crBBox, const PWL_PATH_TYPE type); | 238 static void
GetGraphics_Attachment(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF
_Rect& crBBox, const PWL_PATH_TYPE type); |
| 239 static void
GetGraphics_Tag(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Rect&
crBBox, const PWL_PATH_TYPE type); | 239 static void
GetGraphics_Tag(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Rect&
crBBox, const PWL_PATH_TYPE type); |
| 240 static void
GetGraphics_Foxit(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Rect
& crBBox, const PWL_PATH_TYPE type); | 240 static void
GetGraphics_Foxit(CFX_ByteString& sPathData, CFX_PathData& path, const CPDF_Rect
& crBBox, const PWL_PATH_TYPE type); |
| 241 }; | 241 }; |
| 242 | 242 |
| 243 #endif // FPDFSDK_INCLUDE_PDFWINDOW_PWL_UTILS_H_ | 243 #endif // FPDFSDK_INCLUDE_PDFWINDOW_PWL_UTILS_H_ |
| OLD | NEW |