summaryrefslogtreecommitdiff
path: root/src/lib/VSD6Parser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/VSD6Parser.cpp')
-rw-r--r--src/lib/VSD6Parser.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/lib/VSD6Parser.cpp b/src/lib/VSD6Parser.cpp
index d126433..c5d8b79 100644
--- a/src/lib/VSD6Parser.cpp
+++ b/src/lib/VSD6Parser.cpp
@@ -139,7 +139,8 @@ void libvisio::VSD6Parser::readCharIX(librevenge::RVNGInputStream *input)
if (fontMod & 1) superscript = true;
if (fontMod & 2) subscript = true;
- input->seek(4, librevenge::RVNG_SEEK_CUR);
+ double scaleWidth = (double)(readU16(input)) / 10000.0;
+ input->seek(2, librevenge::RVNG_SEEK_CUR);
double fontSize = readDouble(input);
fontMod = readU8(input);
@@ -150,7 +151,7 @@ void libvisio::VSD6Parser::readCharIX(librevenge::RVNGInputStream *input)
if (m_isInStyles)
m_collector->collectCharIXStyle(m_header.id, m_header.level, charCount, font, fontColour, fontSize,
bold, italic, underline, doubleunderline, strikeout, doublestrikeout,
- allcaps, initcaps, smallcaps, superscript, subscript);
+ allcaps, initcaps, smallcaps, superscript, subscript, scaleWidth);
else
{
if (m_isStencilStarted)
@@ -160,10 +161,10 @@ void libvisio::VSD6Parser::readCharIX(librevenge::RVNGInputStream *input)
m_shape.m_charStyle.override(VSDOptionalCharStyle(charCount, font, fontColour, fontSize,
bold, italic, underline, doubleunderline, strikeout, doublestrikeout,
- allcaps, initcaps, smallcaps, superscript, subscript));
+ allcaps, initcaps, smallcaps, superscript, subscript, scaleWidth));
m_shape.m_charList.addCharIX(m_header.id, m_header.level, charCount, font, fontColour, fontSize,
bold, italic, underline, doubleunderline, strikeout, doublestrikeout,
- allcaps, initcaps, smallcaps, superscript, subscript);
+ allcaps, initcaps, smallcaps, superscript, subscript, scaleWidth);
}
}