summaryrefslogtreecommitdiff
path: root/include/vcl/metaact.hxx
diff options
context:
space:
mode:
authorArmin Le Grand (Allotropia) <armin.le.grand@me.com>2021-02-16 18:20:32 +0100
committerThorsten Behrens <thorsten.behrens@allotropia.de>2021-02-22 09:32:00 +0100
commit75d5db29f2ad2ff4f7944d47efc4ee001be7a1e7 (patch)
tree648f334825665a32858e3761ba0f21721bd89e0b /include/vcl/metaact.hxx
parent7d974de2ad79cccea69b1bd54eea3c72821e6b49 (diff)
tdf#127471 correct EMF/WMF im/export for scaled font
If FontScaling is used, system-dependent data is held at vcl::Font Width(). Already if not scaled, we have three definitions: Width is zero, Width is equal to Height (unx) or - on Windows - Width equals avgFontWidth. If used it is W!=H where on unx Width equals Height multiplied with the scale factor. On Windows, this is Width multiplied with the only there existing avgFontWidth. Unfortunately that is ex/imported (since ever) undetected to EMF/WMF thus making EMF/WMF files containing FontScaling system-dependent - on which system was LO running when creating the file? The error can be seen when loading such a EMF/WMF on the vice-versa system, the FontScale is very ugly and wrong. Since EMF/WMF *are* Windows-specific formats the Windows-like definition is the correct one. This change makes all other systems export that now, and adapt on import to their system- specific definition (assuming coming from Windows). As can be seen, the difficulty is that these adaptions are necessary on non-Windows plattforms, but these do not have that avgFontWidth available. Thus I made a deep-dive investigation and multiple experiments to create a as similar as possible value to apply the needed calculations. For details and discussion refer to the bug description. Change-Id: I983fb6d882e2e8fccf9c8460f01509201d8157f9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111000 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> (cherry picked from commit 9d161857f1d4afcb772b477455797a2da0e47a9b) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111148 Tested-by: Thorsten Behrens <thorsten.behrens@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Diffstat (limited to 'include/vcl/metaact.hxx')
0 files changed, 0 insertions, 0 deletions