summaryrefslogtreecommitdiff
path: root/editeng
diff options
context:
space:
mode:
authorJonathan Clark <jonathan@libreoffice.org>2024-06-07 02:36:22 -0600
committerJonathan Clark <jonathan@libreoffice.org>2024-06-10 17:11:32 +0200
commit976b16b1c6ad6e6eaded7a9fb24388c4512e21e2 (patch)
tree7d2e8793f6a2436ab67497463b2417dc952eaba7 /editeng
parent2b68dadb846dac063421ed975abecafbd120cbac (diff)
tdf#152024 Diacritics cut off at top and bottom of paragraph
This change fixes issues causing Writer to clip paragraphs at the ascent of the top line, and descent of the last line, of a paragraph. This issue caused certain diacritics to render incompletely, or not at all. Change-Id: I99a3a25335f8b1d798fc8a55ff42d5c78749fca4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168557 Tested-by: Jenkins Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
Diffstat (limited to 'editeng')
-rw-r--r--editeng/source/items/svxfont.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/editeng/source/items/svxfont.cxx b/editeng/source/items/svxfont.cxx
index 253c78f8dea4..2df18feb449f 100644
--- a/editeng/source/items/svxfont.cxx
+++ b/editeng/source/items/svxfont.cxx
@@ -38,7 +38,8 @@ static tools::Long GetTextArray( const OutputDevice* pOut, const OUString& rStr,
{
const SalLayoutGlyphs* layoutGlyphs = SalLayoutGlyphsCache::self()->GetLayoutGlyphs(pOut, rStr, nIndex, nLen);
- return basegfx::fround<tools::Long>(pOut->GetTextArray( rStr, pDXAry, nIndex, nLen, true, nullptr, layoutGlyphs));
+ return basegfx::fround<tools::Long>(
+ pOut->GetTextArray(rStr, pDXAry, nIndex, nLen, true, nullptr, layoutGlyphs).nWidth);
}
SvxFont::SvxFont()
@@ -719,7 +720,8 @@ void SvxDoGetCapitalSize::Do( const OUString &_rTxt, const sal_Int32 _nIdx,
if (pDXAry)
{
KernArray aKernArray;
- aPartSize.setWidth(basegfx::fround<tools::Long>(pOut->GetTextArray(_rTxt, &aKernArray, _nIdx, _nLen)));
+ aPartSize.setWidth(basegfx::fround<tools::Long>(
+ pOut->GetTextArray(_rTxt, &aKernArray, _nIdx, _nLen).nWidth));
assert(pDXAry->get_factor() == aKernArray.get_factor());
auto& dest = pDXAry->get_subunit_array();
sal_Int32 nStart = dest.empty() ? 0 : dest.back();