diff options
Diffstat (limited to 'core')
-rw-r--r-- | core/fpdfdoc/cpdf_variabletext.cpp | 22 | ||||
-rw-r--r-- | core/fpdfdoc/ctypeset.cpp | 2 | ||||
-rw-r--r-- | core/fpdfdoc/include/cpdf_variabletext.h | 12 |
3 files changed, 12 insertions, 24 deletions
diff --git a/core/fpdfdoc/cpdf_variabletext.cpp b/core/fpdfdoc/cpdf_variabletext.cpp index 4527fd0367..8356c1620b 100644 --- a/core/fpdfdoc/cpdf_variabletext.cpp +++ b/core/fpdfdoc/cpdf_variabletext.cpp @@ -34,8 +34,7 @@ CPDF_VariableText::Provider::Provider(IPVT_FontMap* pFontMap) CPDF_VariableText::Provider::~Provider() {} int32_t CPDF_VariableText::Provider::GetCharWidth(int32_t nFontIndex, - uint16_t word, - int32_t nWordStyle) { + uint16_t word) { if (CPDF_Font* pPDFFont = m_pFontMap->GetPDFFont(nFontIndex)) { uint32_t charcode = pPDFFont->CharCodeFromUnicode(word); if (charcode != CPDF_Font::kInvalidCharCode) @@ -785,21 +784,17 @@ FX_FLOAT CPDF_VariableText::GetWordWidth(int32_t nFontIndex, FX_FLOAT fCharSpace, int32_t nHorzScale, FX_FLOAT fFontSize, - FX_FLOAT fWordTail, - int32_t nWordStyle) { - return (GetCharWidth(nFontIndex, Word, SubWord, nWordStyle) * fFontSize * - kFontScale + + FX_FLOAT fWordTail) { + return (GetCharWidth(nFontIndex, Word, SubWord) * fFontSize * kFontScale + fCharSpace) * nHorzScale * kScalePercent + fWordTail; } FX_FLOAT CPDF_VariableText::GetWordWidth(const CPVT_WordInfo& WordInfo) { - return GetWordWidth( - GetWordFontIndex(WordInfo), WordInfo.Word, GetSubWord(), - GetCharSpace(WordInfo), GetHorzScale(WordInfo), GetWordFontSize(WordInfo), - WordInfo.fWordTail, - WordInfo.pWordProps ? WordInfo.pWordProps->nWordStyle : 0); + return GetWordWidth(GetWordFontIndex(WordInfo), WordInfo.Word, GetSubWord(), + GetCharSpace(WordInfo), GetHorzScale(WordInfo), + GetWordFontSize(WordInfo), WordInfo.fWordTail); } FX_FLOAT CPDF_VariableText::GetLineAscent(const CPVT_SectionInfo& SecInfo) { @@ -1066,12 +1061,11 @@ CPVT_FloatRect CPDF_VariableText::RearrangeSections( int32_t CPDF_VariableText::GetCharWidth(int32_t nFontIndex, uint16_t Word, - uint16_t SubWord, - int32_t nWordStyle) { + uint16_t SubWord) { if (!m_pVTProvider) return 0; uint16_t word = SubWord ? SubWord : Word; - return m_pVTProvider->GetCharWidth(nFontIndex, word, nWordStyle); + return m_pVTProvider->GetCharWidth(nFontIndex, word); } int32_t CPDF_VariableText::GetTypeAscent(int32_t nFontIndex) { diff --git a/core/fpdfdoc/ctypeset.cpp b/core/fpdfdoc/ctypeset.cpp index 0e5ef2d41b..cfaeb4ca7c 100644 --- a/core/fpdfdoc/ctypeset.cpp +++ b/core/fpdfdoc/ctypeset.cpp @@ -312,7 +312,7 @@ void CTypeset::SplitLines(FX_BOOL bTypeset, FX_FLOAT fFontSize) { fWordWidth = m_pVT->GetWordWidth( pWord->nFontIndex, pWord->Word, m_pVT->m_wSubWord, m_pVT->m_fCharSpace, m_pVT->m_nHorzScale, fFontSize, - pWord->fWordTail, 0); + pWord->fWordTail); } if (!bOpened) { if (IsOpenStylePunctuation(pWord->Word)) { diff --git a/core/fpdfdoc/include/cpdf_variabletext.h b/core/fpdfdoc/include/cpdf_variabletext.h index 83e74b867e..31cf75ff0b 100644 --- a/core/fpdfdoc/include/cpdf_variabletext.h +++ b/core/fpdfdoc/include/cpdf_variabletext.h @@ -66,9 +66,7 @@ class CPDF_VariableText { explicit Provider(IPVT_FontMap* pFontMap); virtual ~Provider(); - virtual int32_t GetCharWidth(int32_t nFontIndex, - uint16_t word, - int32_t nWordStyle); + virtual int32_t GetCharWidth(int32_t nFontIndex, uint16_t word); virtual int32_t GetTypeAscent(int32_t nFontIndex); virtual int32_t GetTypeDescent(int32_t nFontIndex); virtual int32_t GetWordFontIndex(uint16_t word, @@ -166,10 +164,7 @@ class CPDF_VariableText { friend class CTypeset; friend class CSection; - int32_t GetCharWidth(int32_t nFontIndex, - uint16_t Word, - uint16_t SubWord, - int32_t nWordStyle); + int32_t GetCharWidth(int32_t nFontIndex, uint16_t Word, uint16_t SubWord); int32_t GetTypeAscent(int32_t nFontIndex); int32_t GetTypeDescent(int32_t nFontIndex); int32_t GetWordFontIndex(uint16_t word, int32_t charset, int32_t nFontIndex); @@ -195,8 +190,7 @@ class CPDF_VariableText { FX_FLOAT fCharSpace, int32_t nHorzScale, FX_FLOAT fFontSize, - FX_FLOAT fWordTail, - int32_t nWordStyle); + FX_FLOAT fWordTail); FX_FLOAT GetWordWidth(const CPVT_WordInfo& WordInfo); FX_FLOAT GetWordAscent(const CPVT_WordInfo& WordInfo, FX_FLOAT fFontSize); FX_FLOAT GetWordDescent(const CPVT_WordInfo& WordInfo, FX_FLOAT fFontSize); |