diff --git a/Tests/LibPDF/text.pdf b/Tests/LibPDF/text.pdf index fb3fb5b23a..d48b670d80 100644 --- a/Tests/LibPDF/text.pdf +++ b/Tests/LibPDF/text.pdf @@ -2,77 +2,51 @@ %µ¶ 1 0 obj -<< - /Type /Catalog - /Pages 2 0 R ->> +<> endobj 2 0 obj -<< - /Type /Pages - /Kids [ 3 0 R ] - /Count 1 ->> +<> endobj 3 0 obj -<< - /Type /Page - /Parent 2 0 R - /MediaBox [ 0 0 525 250 ] - /Contents 4 0 R - /Resources << - /Font << - /F1 5 0 R - >> - >> ->> +<>>>>> endobj 4 0 obj -<< - /Length 236 ->> +<> stream BT -/F1 24 Tf +/F1 25 Tf -30 TL 40 40 Td [ (Hello) -2000 (World) ] TJ T* [ (Hello) -1000 -1000 (World) ] TJ T* [ (Hello) -1000 ] TJ [ -1000 ] TJ [ (World) ] TJ T* +1 0 0 1 45 130 Tm [ 200 (Hello) -2000 (World) ] TJ T* (should be the same on all lines:) ' (The distance between "Hello" and "World") ' ET + endstream endobj 5 0 obj -<< - /Type /Font - /Subtype /Type1 - /Name /F1 - /BaseFont /Helvetica - /Encoding /MacRomanEncoding ->> +<> endobj xref 0 6 0000000000 65536 f 0000000016 00000 n -0000000070 00000 n -0000000136 00000 n -0000000291 00000 n -0000000581 00000 n +0000000062 00000 n +0000000114 00000 n +0000000227 00000 n +0000000568 00000 n trailer -<< - /Size 6 - /Root 1 0 R ->> +<> startxref -700 +666 %%EOF diff --git a/Userland/Libraries/LibPDF/Renderer.cpp b/Userland/Libraries/LibPDF/Renderer.cpp index a0fadd8d3b..7d95eac830 100644 --- a/Userland/Libraries/LibPDF/Renderer.cpp +++ b/Userland/Libraries/LibPDF/Renderer.cpp @@ -572,9 +572,11 @@ RENDERER_HANDLER(text_show_string_array) if (element.has()) { float shift = (float)element.get() / 1000.0f; m_text_matrix.translate(-shift * text_state().font_size * text_state().horizontal_scaling, 0.0f); + m_text_rendering_matrix_is_dirty = true; } else if (element.has()) { float shift = element.get() / 1000.0f; m_text_matrix.translate(-shift * text_state().font_size * text_state().horizontal_scaling, 0.0f); + m_text_rendering_matrix_is_dirty = true; } else { auto str = element.get>()->cast()->string(); TRY(show_text(str));