Fix #10477: Not enough space for text due to rounding down (OSX) (#10489)

(cherry picked from commit 2376112c77)
This commit is contained in:
PeterN 2023-02-18 10:50:20 +00:00 committed by Jonathan G Rennison
parent 8b36b2cbf3
commit 968709735d

View File

@ -16,6 +16,7 @@
#include "../../zoom_func.h"
#include "../../scope.h"
#include "macos.h"
#include <cmath>
#include <CoreFoundation/CoreFoundation.h>
@ -254,7 +255,7 @@ CoreTextParagraphLayout::CoreTextVisualRun::CoreTextVisualRun(CTRunRef run, Font
this->positions[i * 2 + 1] = pts[i].y;
}
}
this->total_advance = (int)CTRunGetTypographicBounds(run, CFRangeMake(0, 0), nullptr, nullptr, nullptr);
this->total_advance = (int)std::ceil(CTRunGetTypographicBounds(run, CFRangeMake(0, 0), nullptr, nullptr, nullptr));
this->positions[this->glyphs.size() * 2] = this->positions[0] + this->total_advance;
}