sw/source/core/txtnode/fntcache.cxx | 6 ++++++ 1 file changed, 6 insertions(+)
New commits: commit f22751cac9b81e5d7c5ad6b2e0a2eff21b683cad Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Tue Dec 21 14:15:59 2021 +0000 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Wed Dec 22 13:03:20 2021 +0100 Related tdf#144862 add some notes on various compromises Change-Id: I6b1c7f90bbad70224040f3d2355a40601f58fa4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127303 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/sw/source/core/txtnode/fntcache.cxx b/sw/source/core/txtnode/fntcache.cxx index df213b9553e9..b56672460afb 100644 --- a/sw/source/core/txtnode/fntcache.cxx +++ b/sw/source/core/txtnode/fntcache.cxx @@ -868,16 +868,20 @@ namespace case GlyphPositioningMode::PreferLayout: rScrPos = rKernArray[i - 1] + nScr; // just accept the print layout positions, this is what editeng does + // https://freddie.witherden.org/pages/font-rasterisation/#application-requirements break; case GlyphPositioningMode::PreferReadability: { // Overwrite KernArray with the screen-optimized glyph positions + // these will generally be too wide at small sizes and text will spill out + // of its designated zones rKernArray[i - 1] = rScrPos; rScrPos += nScr; break; } case GlyphPositioningMode::Classic: { + // https://wiki.openoffice.org/wiki/Writer/WYSIWYG if (nCh == CH_BLANK) rScrPos = rKernArray[i - 1] + nScr; else @@ -912,6 +916,8 @@ namespace rKernArray[i - 1] = rScrPos; rScrPos += nScr; } + // at small sizes the screen positions tend to get wider, and the text begins to + // overlap the next word. http://people.redhat.com/otaylor/grid-fitting/ break; } }