summaryrefslogtreecommitdiff
path: root/src/lib/render_text.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-09-25 12:51:43 +0200
committerCarl Hetherington <cth@carlh.net>2025-09-26 23:57:09 +0200
commit492c0d0597230e680e7b59800d4f6e26d6a82e5e (patch)
tree5a7191e2fb0f6f47994f9c8275b0b070dbe9d71e /src/lib/render_text.cc
parent66100d5f14759220c9f25d6facfccb188ef81f12 (diff)
Re-order cairo context scaling and pango layout setup (#2337).
This seems to fix problems where letters were scaled individually, but their spacing didn't change (when x scale was applied). Big thanks to user1768761 https://stackoverflow.com/questions/58528024/pangocairo-shows-cluttered-text-when-cairo-context-is-scaled
Diffstat (limited to 'src/lib/render_text.cc')
-rw-r--r--src/lib/render_text.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/render_text.cc b/src/lib/render_text.cc
index 08fc8320f..fe8ebf38d 100644
--- a/src/lib/render_text.cc
+++ b/src/lib/render_text.cc
@@ -422,9 +422,10 @@ render_line(vector<StringText> subtitles, dcp::Size target, DCPTime time, int fr
auto surface = create_surface(image);
auto context = Cairo::Context::create(surface);
+ layout.pango->update_from_cairo_context(context);
+
context->set_line_width(1);
context->scale(x_scale, y_scale);
- layout.pango->update_from_cairo_context(context);
if (first.effect() == dcp::Effect::SHADOW) {
/* Drop-shadow effect */