From ed4efa5d22803e21881839a9f46492e15eae6962 Mon Sep 17 00:00:00 2001 From: David Tardon Date: Wed, 24 Jan 2018 21:02:39 +0100 Subject: [PATCH 01/12] better way to handle unit conversion --- Scribus/scribus/plugins/import/revenge/rawpainter.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Scribus/scribus/plugins/import/revenge/rawpainter.cpp b/Scribus/scribus/plugins/import/revenge/rawpainter.cpp index 6bebb3bd0..06e4c3d27 100644 --- a/Scribus/scribus/plugins/import/revenge/rawpainter.cpp +++ b/Scribus/scribus/plugins/import/revenge/rawpainter.cpp @@ -1767,13 +1767,15 @@ void RawPainter::insertField(const librevenge::RVNGPropertyList &propList) double RawPainter::valueAsPoint(const librevenge::RVNGProperty *prop) { - double value = 0.0; - QString str = QString(prop->getStr().cstr()).toLower(); - if (str.endsWith("in")) - value = prop->getDouble() * 72.0; - else - value = prop->getDouble(); - return value; + switch (prop->getUnit()) + { + case librevenge::RVNG_INCH: + return prop->getDouble() * 72.0; + case librevenge::RVNG_TWIP: + return prop->getDouble() / 20.0; + default: + return prop->getDouble(); + } } void RawPainter::applyFill(PageItem* ite) -- 2.14.3