From a24c2bf10aebcfd63446e49b41873e84964a6b30 Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Thu, 18 Jan 2024 09:36:48 +0100 Subject: [PATCH] Codechange: [HarfBuzz] hb-ft will set the scaling on its own --- src/gfx_layout_icu.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/gfx_layout_icu.cpp b/src/gfx_layout_icu.cpp index 9cd0fbcdc1..c40c5c0156 100644 --- a/src/gfx_layout_icu.cpp +++ b/src/gfx_layout_icu.cpp @@ -26,7 +26,7 @@ #include "safeguards.h" -/** harfbuzz doesn't use floats, so we need a value to scale position with to get sub-pixel precision. */ +/** HarfBuzz FreeType integration sets the font scaling, which is always in 1/64th of a pixel. */ constexpr float FONT_SCALE = 64.0; /** @@ -157,7 +157,6 @@ ICUParagraphLayout::ICUVisualRun::ICUVisualRun(const ICURun &run, int x) : void ICURun::Shape(UChar *buff, size_t buff_length) { auto hbfont = hb_ft_font_create_referenced(*(static_cast(font->fc->GetOSHandle()))); - hb_font_set_scale(hbfont, this->font->fc->GetFontSize() * FONT_SCALE, this->font->fc->GetFontSize() * FONT_SCALE); /* ICU buffer is in UTF-16. */ auto hbbuf = hb_buffer_create();