diff options
Diffstat (limited to 'src/svg')
-rw-r--r-- | src/svg/qsvghandler.cpp | 9 | ||||
-rw-r--r-- | src/svg/qsvgstyle.cpp | 2 | ||||
-rw-r--r-- | src/svg/qsvgstyle_p.h | 2 |
3 files changed, 8 insertions, 5 deletions
diff --git a/src/svg/qsvghandler.cpp b/src/svg/qsvghandler.cpp index 68929e3..0d2e28e 100644 --- a/src/svg/qsvghandler.cpp +++ b/src/svg/qsvghandler.cpp @@ -1362,9 +1362,12 @@ static void parseFont(QSvgNode *node, } if (!fontStyle) fontStyle = new QSvgFontStyle; - - if (!attributes.fontFamily.isEmpty() && attributes.fontFamily != QT_INHERIT) - fontStyle->setFamily(attributes.fontFamily.toString().trimmed()); + if (!attributes.fontFamily.isEmpty() && attributes.fontFamily != QT_INHERIT) { + QString family = attributes.fontFamily.toString().trimmed(); + if (family.at(0) == QLatin1Char('\'') || family.at(0) == QLatin1Char('\"')) + family = family.mid(1, family.length() - 2); + fontStyle->setFamily(family); + } if (!attributes.fontSize.isEmpty() && attributes.fontSize != QT_INHERIT) { // TODO: Support relative sizes 'larger' and 'smaller'. diff --git a/src/svg/qsvgstyle.cpp b/src/svg/qsvgstyle.cpp index f981931..924cca0 100644 --- a/src/svg/qsvgstyle.cpp +++ b/src/svg/qsvgstyle.cpp @@ -232,7 +232,7 @@ void QSvgFontStyle::apply(QPainter *p, const QSvgNode *, QSvgExtraStates &states QFont font = m_oldQFont; if (m_familySet) { states.svgFont = m_svgFont; - font.setFamily(m_qfont.family()); + font.setFamilies(m_qfont.families()); } if (m_sizeSet) diff --git a/src/svg/qsvgstyle_p.h b/src/svg/qsvgstyle_p.h index 5e0b7cc..41d0e11 100644 --- a/src/svg/qsvgstyle_p.h +++ b/src/svg/qsvgstyle_p.h @@ -348,7 +348,7 @@ public: void setFamily(const QString &family) { - m_qfont.setFamily(family); + m_qfont.setFamilies({family}); m_familySet = 1; } |