diff --git a/modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp b/modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp index 437a47b53a..189138d0c6 100644 --- a/modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp +++ b/modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp @@ -90,9 +90,17 @@ namespace DirectWriteTypeLayout DWRITE_GLYPH_RUN const* glyphRun, DWRITE_GLYPH_RUN_DESCRIPTION const* runDescription, IUnknown* clientDrawingEffect) noexcept override { - const String runString (runDescription->string, runDescription->stringLength); + const auto containsTextOrNewLines = [runDescription] + { + const String runString (runDescription->string, runDescription->stringLength); - if (! runString.containsNonWhitespaceChars()) + if (runString.containsNonWhitespaceChars() || runString.containsAnyOf ("\n\r")) + return true; + + return false; + }(); + + if (! containsTextOrNewLines) return S_OK; auto layout = static_cast (clientDrawingContext);