summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorJustin Luth <justin_luth@sil.org>2019-11-26 21:23:13 +0300
committerJustin Luth <justin_luth@sil.org>2019-11-27 10:05:15 +0100
commit2fcc04722d72dbadf8d3decd7a5014ec39b93d27 (patch)
tree8ee7f703ee84e5a257aa3289c982ee8c59291846 /sw
parent85578a6f9ca9dfb1e384d8d1f6edd8219a2ac493 (diff)
partial revert tdf#127316 for rtfexport: restore ++nProp
Because the nProp is multiplied by 100, adding +1 can have special meaning, as also noted in editeng/impedit4.cxx. This is an interesting hack, where _nProp_ is used to determine if _nEsc_ should be automatic. It was dumb of me to even consider getting rid of it just because I didn't understand it. So revert that part of the change. Change-Id: Ibae5a84c369474f00702614ac5eecdc533aea914 Reviewed-on: https://gerrit.libreoffice.org/83846 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Justin Luth <justin_luth@sil.org>
Diffstat (limited to 'sw')
-rw-r--r--sw/source/filter/ww8/rtfattributeoutput.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx b/sw/source/filter/ww8/rtfattributeoutput.cxx
index 32fa51aeb74c..42a125c099b2 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -2325,6 +2325,7 @@ void RtfAttributeOutput::CharCrossedOut(const SvxCrossedOutItem& rCrossedOut)
void RtfAttributeOutput::CharEscapement(const SvxEscapementItem& rEscapement)
{
short nEsc = rEscapement.GetEsc(), nProp = rEscapement.GetProportionalHeight();
+ sal_Int32 nProp100 = nProp * 100;
if (DFLT_ESC_PROP == nProp || nProp < 1 || nProp > 100)
{
if (DFLT_ESC_SUB == nEsc || DFLT_ESC_AUTO_SUB == nEsc)
@@ -2336,10 +2337,12 @@ void RtfAttributeOutput::CharEscapement(const SvxEscapementItem& rEscapement)
else if (DFLT_ESC_AUTO_SUPER == nEsc)
{
nEsc = .8 * (100 - nProp);
+ ++nProp100; // A 1 afterwards means 'automatic' according to editeng/rtf/rtfitem.cxx
}
else if (DFLT_ESC_AUTO_SUB == nEsc)
{
nEsc = .2 * -(100 - nProp);
+ ++nProp100;
}
const char* pUpDn;
@@ -2359,7 +2362,7 @@ void RtfAttributeOutput::CharEscapement(const SvxEscapementItem& rEscapement)
m_aStyles.append('{');
m_aStyles.append(OOO_STRING_SVTOOLS_RTF_IGNORE);
m_aStyles.append(OOO_STRING_SVTOOLS_RTF_UPDNPROP);
- m_aStyles.append(static_cast<sal_Int32>(nProp * 100));
+ m_aStyles.append(nProp100);
m_aStyles.append('}');
m_aStyles.append(pUpDn);