filter/source/svg/units.cxx | 17 +++++++++-------- filter/source/svg/units.hxx | 4 ++++ 2 files changed, 13 insertions(+), 8 deletions(-)
New commits: commit 33e49a3b6655c1503dc81b583f5016fc3b2fda19 Author: Xisco Fauli <aniste...@gmail.com> Date: Wed Nov 25 20:26:06 2015 +0100 tdf#96046 SVG: use the same PPI as in svgio Change-Id: I211dcc6fb242cfbd05636d42a811523de8e83be6 Reviewed-on: https://gerrit.libreoffice.org/20182 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Armin Le Grand <armin.le.gr...@cib.de> diff --git a/filter/source/svg/units.cxx b/filter/source/svg/units.cxx index 691305e..34360ac 100644 --- a/filter/source/svg/units.cxx +++ b/filter/source/svg/units.cxx @@ -25,16 +25,17 @@ double convLength( double value, SvgUnit unit, const State& rState, char dir ) double fRet(value); switch ( unit ) { - case SVG_LENGTH_UNIT_CM: fRet *= 72.0/2.54; break; - case SVG_LENGTH_UNIT_IN: fRet *= 72.0; break; - case SVG_LENGTH_UNIT_MM: fRet *= 72.0/25.4; break; - case SVG_LENGTH_UNIT_PC: fRet *= 72.0/6.0; break; - case SVG_LENGTH_UNIT_USER: - case SVG_LENGTH_UNIT_PX: // no unit defaults to PX in svg, - // assume display to have 72DPI - case SVG_LENGTH_UNIT_PT: break; + case SVG_LENGTH_UNIT_CM: fRet *= F_SVG_PIXEL_PER_INCH/2.54; break; + case SVG_LENGTH_UNIT_IN: fRet *= F_SVG_PIXEL_PER_INCH; break; + case SVG_LENGTH_UNIT_MM: fRet *= F_SVG_PIXEL_PER_INCH/25.4; break; + case SVG_LENGTH_UNIT_PC: fRet *= F_SVG_PIXEL_PER_INCH/6.0; break; + case SVG_LENGTH_UNIT_PT: fRet *= F_SVG_PIXEL_PER_INCH/72.0; break; case SVG_LENGTH_UNIT_EM: fRet *= rState.mnFontSize; break; case SVG_LENGTH_UNIT_EX: fRet *= rState.mnFontSize / 2.0; break; + case SVG_LENGTH_UNIT_USER: + case SVG_LENGTH_UNIT_PX: + // no unit defaults to PX in svg, assume display to have 90DPI + break; case SVG_LENGTH_UNIT_PERCENTAGE: { double fBoxLen; diff --git a/filter/source/svg/units.hxx b/filter/source/svg/units.hxx index 84697e0b..d348104 100644 --- a/filter/source/svg/units.hxx +++ b/filter/source/svg/units.hxx @@ -14,6 +14,10 @@ namespace svgi { + // recommended value for this device dependent unit, see CSS2 section 4.3.2 Lengths + // Same as in svgio + #define F_SVG_PIXEL_PER_INCH 90.0 + struct State; enum SvgUnit { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits