diff options
Diffstat (limited to 'src/svg')
-rw-r--r-- | src/svg/qsvgtinydocument_p.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/svg/qsvgtinydocument_p.h b/src/svg/qsvgtinydocument_p.h index c69c5de..aa51751 100644 --- a/src/svg/qsvgtinydocument_p.h +++ b/src/svg/qsvgtinydocument_p.h @@ -141,11 +141,14 @@ private: inline QSize QSvgTinyDocument::size() const { - if (m_size.isEmpty()) { + if (m_size.isEmpty()) return viewBox().size().toSize(); - } else { - return m_size; + if (m_widthPercent || m_heightPercent) { + const int width = m_widthPercent ? qRound(0.01 * m_size.width() * viewBox().size().width()) : m_size.width(); + const int height = m_heightPercent ? qRound(0.01 * m_size.height() * viewBox().size().height()) : m_size.height(); + return QSize(width, height); } + return m_size; } inline int QSvgTinyDocument::width() const |