Chromium Code Reviews| Index: core/src/fpdftext/fpdf_text_int.cpp |
| diff --git a/core/src/fpdftext/fpdf_text_int.cpp b/core/src/fpdftext/fpdf_text_int.cpp |
| index cf6cde1169c8e06542951d49b75c0ad27902e752..f527f48814d72c4ce209c6bfd0b17f703c1374a0 100644 |
| --- a/core/src/fpdftext/fpdf_text_int.cpp |
| +++ b/core/src/fpdftext/fpdf_text_int.cpp |
| @@ -161,9 +161,9 @@ FX_BOOL CPDF_TextPage::ParseTextPage() { |
| PAGECHAR_INFO charinfo = *(PAGECHAR_INFO*)m_charList.GetAt(i); |
| if (charinfo.m_Flag == FPDFTEXT_CHAR_GENERATED) { |
| bNormal = TRUE; |
| - } else if (charinfo.m_Unicode == 0 || IsControlChar(charinfo)) |
| + } else if (charinfo.m_Unicode == 0 || IsControlChar(charinfo)) { |
| bNormal = FALSE; |
| - else { |
| + } else { |
| bNormal = TRUE; |
| } |
| if (bNormal) { |
| @@ -1807,10 +1807,10 @@ FX_BOOL CPDF_TextPage::IsHyphen(FX_WCHAR curChar) { |
| } |
| preChar = (PAGECHAR_INFO)m_charList[size - 1]; |
| } |
| - if (FPDFTEXT_CHAR_PIECE == preChar.m_Flag) |
| - if (0xAD == preChar.m_Unicode || 0x2D == preChar.m_Unicode) { |
| - return TRUE; |
| - } |
| + if (FPDFTEXT_CHAR_PIECE == preChar.m_Flag && |
| + (0xAD == preChar.m_Unicode || 0x2D == preChar.m_Unicode)) { |
| + return TRUE; |
| + } |
| } |
| return FALSE; |
| } |
| @@ -1920,17 +1920,14 @@ int CPDF_TextPage::ProcessInsertObject(const CPDF_TextObject* pObj, |
| } |
| } |
| } |
| - if (bNewline) { |
| - if (IsHyphen(curChar)) { |
| - return 3; |
| - } |
| - return 2; |
| - } |
| + if (bNewline) |
| + return IsHyphen(curChar) ? 3 : 2; |
| + |
| int32_t nChars = pObj->CountChars(); |
| - if (nChars == 1 && (0x2D == curChar || 0xAD == curChar)) |
| - if (IsHyphen(curChar)) { |
| - return 3; |
| - } |
| + if (nChars == 1 && (0x2D == curChar || 0xAD == curChar) && |
|
Tom Sepez
2016/01/08 17:54:43
nit: the (0x2D == curChar || 0xAD == curChar) is r
Lei Zhang
2016/01/08 23:29:53
Acknowledged.
|
| + IsHyphen(curChar)) { |
| + return 3; |
| + } |
| CFX_WideString PrevStr = |
| m_pPreTextObj->GetFont()->UnicodeFromCharCode(PrevItem.m_CharCode); |
| FX_WCHAR preChar = PrevStr.GetAt(PrevStr.GetLength() - 1); |
| @@ -1956,7 +1953,7 @@ int CPDF_TextPage::ProcessInsertObject(const CPDF_TextObject* pObj, |
| threshold *= 1.5; |
| } |
| if (FXSYS_fabs(last_pos + last_width - x) > threshold && curChar != L' ' && |
| - preChar != L' ') |
| + preChar != L' ') { |
| if (curChar != L' ' && preChar != L' ') { |
| if ((x - last_pos - last_width) > threshold || |
| (last_pos - x - last_width) > threshold) { |
| @@ -1970,6 +1967,7 @@ int CPDF_TextPage::ProcessInsertObject(const CPDF_TextObject* pObj, |
| return 1; |
| } |
| } |
| + } |
| return 0; |
| } |
| FX_BOOL CPDF_TextPage::IsSameTextObject(CPDF_TextObject* pTextObj1, |
| @@ -2023,8 +2021,8 @@ FX_BOOL CPDF_TextPage::IsSameTextObject(CPDF_TextObject* pTextObj1, |
| GetCharWidth(itemPer.m_CharCode, pTextObj2->GetFont()) * |
| pTextObj2->GetFontSize() / 1000 * 0.9 || |
| FXSYS_fabs(pTextObj1->GetPosY() - pTextObj2->GetPosY()) > |
| - FX_MAX(FX_MAX(rcPreObj.Height(), rcPreObj.Width()), |
| - pTextObj2->GetFontSize()) / |
| + std::max(std::max(rcPreObj.Height(), rcPreObj.Width()), |
| + pTextObj2->GetFontSize()) / |
| 8) { |
| return FALSE; |
| } |