ooo-build r13422 - in trunk: . patches/dev300



Author: thorstenb
Date: Mon Jul 28 23:12:17 2008
New Revision: 13422
URL: http://svn.gnome.org/viewvc/ooo-build?rev=13422&view=rev

Log:
    * patches/dev300/apply:
    * patches/dev300/svg-import-viewbox-fix.diff: fixed a bug in dash
    array parsing (space was not accepted as a valid delimiter);
    resettting viewBox to empty for new elements; applying line
    dashing in original coordinate space.



Added:
   trunk/patches/dev300/svg-import-viewbox-fix.diff
Modified:
   trunk/ChangeLog
   trunk/patches/dev300/apply

Modified: trunk/patches/dev300/apply
==============================================================================
--- trunk/patches/dev300/apply	(original)
+++ trunk/patches/dev300/apply	Mon Jul 28 23:12:17 2008
@@ -2070,6 +2070,9 @@
 # like svg-import-filter.diff, but adds a graphic filter for SVG
 svg-import-filter-gfxfilter.diff, thorsten
 
+# fixes some nastiness with viewbox
+svg-import-viewbox-fix.diff, thorsten
+
 [ SVGImport < dev300-m22 >= beb300-m1 ]
 svg-import-basegfx.diff, thorsten
 

Added: trunk/patches/dev300/svg-import-viewbox-fix.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/svg-import-viewbox-fix.diff	Mon Jul 28 23:12:17 2008
@@ -0,0 +1,41 @@
+diff -urN ../filter/source/svg/parserfragments.cxx ../current/filter/source/svg/parserfragments.cxx
+--- filter/source/svg/parserfragments.cxx	2008-07-29 01:07:05.000000000 +0200
++++ filter/source/svg/parserfragments.cxx	2008-07-29 00:36:24.000000000 +0200
+@@ -510,7 +510,8 @@
+             list_p.direct
+             (
+                 real_p[push_back_a(rOutputVector)], 
+-                ','
++                // list delimiter is either ',' or space
++                ',' | eps_p
+             )
+         ) >> end_p,
+         //  End grammar
+--- filter/source/svg/svgreader.cxx	2008-07-29 01:07:24.000000000 +0200
++++ filter/source/svg/svgreader.cxx	2008-07-29 00:58:39.000000000 +0200
+@@ -254,6 +254,7 @@
+ 		        // init state. inherit defaults from parent.
+     		    maCurrState = maParentStates.back(); 
+         		maCurrState.maTransform.identity();
++                maCurrState.maViewBox.reset();
+ 
+ 		        // scan for style info
+     		    const sal_Int32 nNumAttrs( xAttributes->getLength() );
+@@ -2468,10 +2469,16 @@
+             // vcl thick lines are severly borked - generate filled
+             // polygon instead
+             std::vector<basegfx::B2DPolyPolygon> aPolys;
+-            aPoly=basegfx::tools::adaptiveSubdivideByAngle(aPoly);
++            aPoly=basegfx::tools::adaptiveSubdivideByAngle(rPoly);
+             if( !aState.maDashArray.empty() )
+                 aPoly=basegfx::tools::applyLineDashing(aPoly,
+                                                        aState.maDashArray);
++
++            // applied line dashing to original rPoly above, to get
++            // correctly transformed lengths - need to transform
++            // again, now
++            aPoly.transform(aState.maCTM);
++
+             for( sal_uInt32 i=0; i<aPoly.count(); ++i )
+             {                
+                 // ugly. convert to integer-based tools polygon



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]