From 417f3442593713a87e723379438bea7d842e977a Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Mon, 9 Apr 2018 20:21:55 +0000 Subject: Remove RenderDeviceDriverIface::GetCTM(). It has no overrides and always returns the identity matrix. Many callers that use the returned value can be simplified, because they are scaling by 1 or concatenating an identity matrix. Change-Id: I7afb7214be210d02638644dfb9b58404420c2ef2 Reviewed-on: https://pdfium-review.googlesource.com/29972 Commit-Queue: Ryan Harrison Reviewed-by: Ryan Harrison --- core/fpdfapi/render/cpdf_type3cache.cpp | 27 +++++++++------------------ 1 file changed, 9 insertions(+), 18 deletions(-) (limited to 'core/fpdfapi/render/cpdf_type3cache.cpp') diff --git a/core/fpdfapi/render/cpdf_type3cache.cpp b/core/fpdfapi/render/cpdf_type3cache.cpp index 33a440f1ca..f85e5bbd9f 100644 --- a/core/fpdfapi/render/cpdf_type3cache.cpp +++ b/core/fpdfapi/render/cpdf_type3cache.cpp @@ -85,9 +85,7 @@ CPDF_Type3Cache::CPDF_Type3Cache(CPDF_Type3Font* pFont) : m_pFont(pFont) {} CPDF_Type3Cache::~CPDF_Type3Cache() {} CFX_GlyphBitmap* CPDF_Type3Cache::LoadGlyph(uint32_t charcode, - const CFX_Matrix* pMatrix, - float retinaScaleX, - float retinaScaleY) { + const CFX_Matrix* pMatrix) { CPDF_UniqueKeyGen keygen; keygen.Generate( 4, FXSYS_round(pMatrix->a * 10000), FXSYS_round(pMatrix->b * 10000), @@ -107,7 +105,7 @@ CFX_GlyphBitmap* CPDF_Type3Cache::LoadGlyph(uint32_t charcode, return it2->second.get(); std::unique_ptr pNewBitmap = - RenderGlyph(pSizeCache, charcode, pMatrix, retinaScaleX, retinaScaleY); + RenderGlyph(pSizeCache, charcode, pMatrix); CFX_GlyphBitmap* pGlyphBitmap = pNewBitmap.get(); pSizeCache->m_GlyphMap[charcode] = std::move(pNewBitmap); return pGlyphBitmap; @@ -116,9 +114,7 @@ CFX_GlyphBitmap* CPDF_Type3Cache::LoadGlyph(uint32_t charcode, std::unique_ptr CPDF_Type3Cache::RenderGlyph( CPDF_Type3Glyphs* pSize, uint32_t charcode, - const CFX_Matrix* pMatrix, - float retinaScaleX, - float retinaScaleY) { + const CFX_Matrix* pMatrix) { const CPDF_Type3Char* pChar = m_pFont->LoadChar(charcode); if (!pChar || !pChar->GetBitmap()) return nullptr; @@ -146,24 +142,19 @@ std::unique_ptr CPDF_Type3Cache::RenderGlyph( } pSize->AdjustBlue(top_y, bottom_y, top_line, bottom_line); pResBitmap = pBitmap->StretchTo( - static_cast(FXSYS_round(image_matrix.a) * retinaScaleX), - static_cast( - (bFlipped ? top_line - bottom_line : bottom_line - top_line) * - retinaScaleY), + static_cast(image_matrix.a), + static_cast(bFlipped ? top_line - bottom_line + : bottom_line - top_line), 0, nullptr); top = top_line; - if (image_matrix.a < 0) { - image_matrix.Scale(retinaScaleX, retinaScaleY); + if (image_matrix.a < 0) left = FXSYS_round(image_matrix.e + image_matrix.a); - } else { + else left = FXSYS_round(image_matrix.e); - } } } - if (!pResBitmap) { - image_matrix.Scale(retinaScaleX, retinaScaleY); + if (!pResBitmap) pResBitmap = pBitmap->TransformTo(&image_matrix, &left, &top); - } if (!pResBitmap) return nullptr; -- cgit v1.2.3