summaryrefslogtreecommitdiff
path: root/core/fpdfapi/render
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/render')
-rw-r--r--core/fpdfapi/render/cpdf_charposlist.cpp18
-rw-r--r--core/fpdfapi/render/cpdf_renderstatus.cpp15
2 files changed, 16 insertions, 17 deletions
diff --git a/core/fpdfapi/render/cpdf_charposlist.cpp b/core/fpdfapi/render/cpdf_charposlist.cpp
index 05f441cc0f..bf361e2da1 100644
--- a/core/fpdfapi/render/cpdf_charposlist.cpp
+++ b/core/fpdfapi/render/cpdf_charposlist.cpp
@@ -56,20 +56,20 @@ void CPDF_CharPosList::Load(int nChars,
} else {
charpos.m_FontCharWidth = 0;
}
- charpos.m_OriginX = iChar ? pCharPos[iChar - 1] : 0;
- charpos.m_OriginY = 0;
+ charpos.m_Origin = CFX_PointF(iChar ? pCharPos[iChar - 1] : 0, 0);
charpos.m_bGlyphAdjust = false;
if (!pCIDFont) {
continue;
}
uint16_t CID = pCIDFont->CIDFromCharCode(CharCode);
if (bVertWriting) {
- charpos.m_OriginY = charpos.m_OriginX;
- charpos.m_OriginX = 0;
- short vx, vy;
+ charpos.m_Origin = CFX_PointF(0, charpos.m_Origin.x);
+
+ short vx;
+ short vy;
pCIDFont->GetVertOrigin(CID, vx, vy);
- charpos.m_OriginX -= FontSize * vx / 1000;
- charpos.m_OriginY -= FontSize * vy / 1000;
+ charpos.m_Origin.x -= FontSize * vx / 1000;
+ charpos.m_Origin.y -= FontSize * vy / 1000;
}
const uint8_t* pTransform = pCIDFont->GetCIDTransform(CID);
if (pTransform && !bVert) {
@@ -77,9 +77,9 @@ void CPDF_CharPosList::Load(int nChars,
charpos.m_AdjustMatrix[2] = pCIDFont->CIDTransformToFloat(pTransform[2]);
charpos.m_AdjustMatrix[1] = pCIDFont->CIDTransformToFloat(pTransform[1]);
charpos.m_AdjustMatrix[3] = pCIDFont->CIDTransformToFloat(pTransform[3]);
- charpos.m_OriginX +=
+ charpos.m_Origin.x +=
pCIDFont->CIDTransformToFloat(pTransform[4]) * FontSize;
- charpos.m_OriginY +=
+ charpos.m_Origin.y +=
pCIDFont->CIDTransformToFloat(pTransform[5]) * FontSize;
charpos.m_bGlyphAdjust = true;
}
diff --git a/core/fpdfapi/render/cpdf_renderstatus.cpp b/core/fpdfapi/render/cpdf_renderstatus.cpp
index b8fd7c743a..b71fd31392 100644
--- a/core/fpdfapi/render/cpdf_renderstatus.cpp
+++ b/core/fpdfapi/render/cpdf_renderstatus.cpp
@@ -1832,8 +1832,8 @@ bool CPDF_RenderStatus::ProcessType3Text(CPDF_TextObject* textobj,
continue;
m_pDevice->SetBitMask(&glyph.m_pGlyph->m_Bitmap,
- glyph.m_OriginX + glyph.m_pGlyph->m_Left,
- glyph.m_OriginY - glyph.m_pGlyph->m_Top,
+ glyph.m_Origin.x + glyph.m_pGlyph->m_Left,
+ glyph.m_Origin.y - glyph.m_pGlyph->m_Top,
fill_argb);
}
glyphs.clear();
@@ -1898,8 +1898,7 @@ bool CPDF_RenderStatus::ProcessType3Text(CPDF_TextObject* textobj,
origin_y - pBitmap->m_Top, fill_argb);
} else {
glyphs[iChar].m_pGlyph = pBitmap;
- glyphs[iChar].m_OriginX = origin_x;
- glyphs[iChar].m_OriginY = origin_y;
+ glyphs[iChar].m_Origin = CFX_Point(origin_x, origin_y);
}
} else {
CFX_Matrix image_matrix = pType3Char->m_ImageMatrix;
@@ -1929,14 +1928,14 @@ bool CPDF_RenderStatus::ProcessType3Text(CPDF_TextObject* textobj,
if (!glyph.m_pGlyph)
continue;
- pdfium::base::CheckedNumeric<int> left = glyph.m_OriginX;
+ pdfium::base::CheckedNumeric<int> left = glyph.m_Origin.x;
left += glyph.m_pGlyph->m_Left;
left -= rect.left;
left *= sa;
if (!left.IsValid())
continue;
- pdfium::base::CheckedNumeric<int> top = glyph.m_OriginY;
+ pdfium::base::CheckedNumeric<int> top = glyph.m_Origin.y;
top -= glyph.m_pGlyph->m_Top;
top -= rect.top;
top *= sd;
@@ -2001,8 +2000,8 @@ void CPDF_RenderStatus::DrawTextPathWithPattern(const CPDF_TextObject* textobj,
charpos.m_AdjustMatrix[2], charpos.m_AdjustMatrix[3],
0, 0);
}
- matrix.Concat(CFX_Matrix(font_size, 0, 0, font_size, charpos.m_OriginX,
- charpos.m_OriginY));
+ matrix.Concat(CFX_Matrix(font_size, 0, 0, font_size, charpos.m_Origin.x,
+ charpos.m_Origin.y));
path.m_Path.Append(pPath, &matrix);
path.m_Matrix = *pTextMatrix;
path.m_bStroke = bStroke;