[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: koffice/filters/karbon/svg
From: Jan Hambrecht <jaham () gmx ! net>
Date: 2009-03-01 0:33:57
Message-ID: 1235867637.618399.8840.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 933472 by jaham:
take care of stretched repeat mode when exporting and importing patterns
M +14 -3 svgexport.cc
M +5 -0 svgimport.cc
--- trunk/koffice/filters/karbon/svg/svgexport.cc #933471:933472
@@ -501,9 +501,20 @@
*m_defs << "<pattern id=\"" << uid << "\"";
*m_defs << " x=\"" << toUserSpace(offset.x()) << "\"";
*m_defs << " y=\"" << toUserSpace(offset.y()) << "\"";
- *m_defs << " width=\"" << toUserSpace(patternSize.width()) << "\"";
- *m_defs << " height=\"" << toUserSpace(patternSize.height()) << "\"";
- *m_defs << " patternUnits=\"userSpaceOnUse\"";
+
+ if( pattern->repeat() == KoPatternBackground::Stretched )
+ {
+ *m_defs << " width=\"100%\"";
+ *m_defs << " height=\"100%\"";
+ *m_defs << " patternUnits=\"objectBoundingBox\"";
+ }
+ else
+ {
+ *m_defs << " width=\"" << toUserSpace(patternSize.width()) << "\"";
+ *m_defs << " height=\"" << toUserSpace(patternSize.height()) << "\"";
+ *m_defs << " patternUnits=\"userSpaceOnUse\"";
+ }
+
*m_defs << " viewBox=\"0 0 " << imageSize.width() << " " << imageSize.height() << "\"";
//*m_defs << " patternContentUnits=\"userSpaceOnUse\"";
*m_defs << ">" << endl;
--- trunk/koffice/filters/karbon/svg/svgimport.cc #933471:933472
@@ -1434,6 +1434,11 @@
QSizeF tileSize = pattern->size( objectBound );
bg->setPatternDisplaySize( tileSize );
+ if( pattern->patternUnits() == SvgPatternHelper::ObjectBoundingBox )
+ {
+ if( tileSize == objectBound.size() )
+ bg->setRepeat( KoPatternBackground::Stretched );
+ }
// calculate pattern reference point offset in percent of tileSize
// and relative to the topleft corner of the shape
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic