Commit graph

199 commits

Author SHA1 Message Date
Jürg Lehni
1376d75e61 SvgImporter: Shorten percentage code. 2012-11-08 09:41:58 -08:00
Jürg Lehni
b04f852667 Rename convertStringTo() to convertValue(), and add missing break statement. 2012-11-08 09:38:42 -08:00
Jonathan Puckey
126a631200 SVG Importer: remove handling of default value for path fill color for now. 2012-11-08 18:27:35 +01:00
Jonathan Puckey
56c90839ab SVG Importer: fillcolor of path items should default to black. 2012-11-08 18:02:38 +01:00
Jonathan Puckey
485bc83b65 SVG Importer: ignore viewBox for svg element for now. 2012-11-08 17:48:21 +01:00
Jonathan Puckey
a1e38ee52e SVG Importer: implement initial support for viewBox attributes. 2012-11-08 17:32:07 +01:00
Jonathan Puckey
24ecf7840e SVG Importer: move string conversion code into seperate convertStringTo function for reuse. 2012-11-08 17:31:23 +01:00
Jonathan Puckey
f92e842644 SVG Importer: more work on Symbol importing. 2012-11-08 17:22:32 +01:00
Jonathan Puckey
2cc56c767e SVG Importer: remove todo. 2012-11-08 15:55:50 +01:00
Jonathan Puckey
71d3cca2d8 SVG Importer: support percentage values for gradient stop offset. 2012-11-08 15:55:24 +01:00
Jonathan Puckey
b7c50a16d1 SvgImporter: Various cleanups and improvements. 2012-11-08 14:32:09 +01:00
Jonathan Puckey
494874ec8f Svg Importer: Fix handling of getDefinition for color values. 2012-11-08 14:29:48 +01:00
Jonathan Puckey
6bbc78eaef SVG Importer: initial support for gradients and gradient examples. 2012-11-07 19:32:35 +01:00
Jonathan Puckey
b7486a7e4d SvgImport: Fix typo. 2012-11-07 17:28:09 +01:00
Jonathan Puckey
9e00a6282f SVG Importer: Add support for 'use' element. 2012-11-07 17:21:35 +01:00
Jonathan Puckey
c704d285f2 SVG Importer: Use importGroup to import defs. 2012-11-07 17:21:02 +01:00
Jürg Lehni
0e22430993 Only set opacity and visibility when they differ from the defaults. 2012-11-07 01:02:28 -08:00
Jürg Lehni
e9a9066d7f Use group creation without explicit array declaration, as that's been supported all along. 2012-11-06 20:37:50 -08:00
Jürg Lehni
b1c24e2762 Improve importGroup() code a bit by directly filling an Item instead of an array first. 2012-11-06 20:28:20 -08:00
Jürg Lehni
1581d44c06 Have newly created group parent in applyAttribute() propagate back up. 2012-11-06 20:13:29 -08:00
Jürg Lehni
b6ca26092f SvgImporter: Do not add defs to the DOM. 2012-11-06 20:12:25 -08:00
Jürg Lehni
6d69c86962 Unbox CompoundPaths first when adding to clipping CompoundPaths, as CompoundPaths cannot be nested. 2012-11-06 18:38:09 -08:00
Jürg Lehni
4e1db6a1d1 Fix a row of documentation issues. 2012-11-06 13:35:50 -08:00
Jürg Lehni
7a0752eb11 No need for private exportItem() / exportProject() functions. 2012-11-06 13:14:39 -08:00
Jürg Lehni
142bf28a70 Convert SvgExporter / SvgImporter code to function scopes that only expose functionality through methods on Item and Project. 2012-11-06 13:07:18 -08:00
Jürg Lehni
88e6ac09d7 Add methods to Item and Project to directly use SvgImporter / Exporter functionality. 2012-11-06 12:49:12 -08:00
Jürg Lehni
28642bd1c8 Rename Path.Oval() to Path.Ellipse(), and deprecate Path.Oval(). 2012-11-06 11:37:00 -08:00
Jürg Lehni
e26197cf1f Optimise loops. 2012-11-06 11:28:50 -08:00
Jürg Lehni
16de863aa5 SvgExporter: Some more work on determineAngle(). 2012-11-06 11:26:00 -08:00
Jürg Lehni
4c463eb1f1 SvgExporter: Some more code shortening. 2012-11-06 11:19:54 -08:00
Jürg Lehni
cd924f066e SvgImporter: Reverse parameter sequence. 2012-11-06 11:14:08 -08:00
Jürg Lehni
eb0fb99b12 SvgExporter: Fix matrix conversion to rotate() command. 2012-11-06 11:06:53 -08:00
Jürg Lehni
00f710b599 SvgExporter: Rearrange code sequence. 2012-11-06 11:00:58 -08:00
Jürg Lehni
b24ee0de66 Document isColinear() and isArc(). 2012-11-06 10:55:53 -08:00
Jürg Lehni
7dc453b58b No need to escape ) inside [] in regular expressions. 2012-11-06 10:52:03 -08:00
Jürg Lehni
19fe762e10 SvgImporter: Rename all attributes and styles related functions to use shorter names. 2012-11-06 10:49:34 -08:00
Jürg Lehni
e26b56f88e SvgImporter: Further optimise style parsing. 2012-11-06 10:43:32 -08:00
Jürg Lehni
dd3a242ee1 SvgImporter: Improve 'none' style handling, and shorten code. 2012-11-06 10:37:03 -08:00
Jürg Lehni
7b32e611b7 Use SVG type to determine Group constructor, not a function factory. 2012-11-06 10:29:14 -08:00
Jürg Lehni
09e845cfd1 SvgImporter: Move importPath() to its own function and restructure importer sequence. 2012-11-06 10:28:34 -08:00
Jürg Lehni
fd8fe9c08e Rename CompoundPath#simplify() to #flatten() to avoid clashes with Path#simplify(), and add Path#flatten(), returning itself. 2012-11-06 10:16:03 -08:00
Jürg Lehni
d9bfc2fa35 Implement Matrix support in SvgExporter. 2012-11-06 10:04:04 -08:00
Jürg Lehni
a6b8201cf4 Minor clean-ups. 2012-11-06 10:04:04 -08:00
Jonathan Puckey
d1eb09176f SVGImporter: add support for clip-path. 2012-11-06 18:14:17 +01:00
Jonathan Puckey
9f3a0fc002 SVGImporter: fix importing of visibility attribute. 2012-11-06 18:12:55 +01:00
Jonathan Puckey
f825969570 SVGImporter: add comments linking to the SVG specification. 2012-11-06 18:11:54 +01:00
Jürg Lehni
88a7fcc92b Convert null to 'none' as style values. 2012-11-06 08:22:22 -08:00
Jürg Lehni
9ad0cb5d63 Implement roundrect conversion properly. 2012-11-06 08:02:46 -08:00
Jürg Lehni
18b6ad4907 Simplify roundrect detection since we assume the same point sequence always. 2012-11-06 07:52:45 -08:00
Jürg Lehni
40390f8309 Make drawCurve() a private function of drawPath(). 2012-11-06 07:49:31 -08:00
Jürg Lehni
3c14b3042b Remove isOrthogonal() as we don't use it anymore. 2012-11-06 07:47:31 -08:00
Jürg Lehni
7acd82b3f5 More work on primitive shape detection.
Implement roundrect properly.
2012-11-06 07:46:59 -08:00
Jürg Lehni
dbdf75c998 Make new drawPath() code actually work. 2012-11-06 07:31:29 -08:00
Jürg Lehni
aa35226916 No need for two parameter version of formatPoint(). 2012-11-06 07:16:25 -08:00
Jürg Lehni
345309867e Implement number formating in SvgExporter, and further simplify drawPath(). 2012-11-06 07:14:11 -08:00
Jürg Lehni
4c51544b6e Implement correct checks for primitives (rect, ellipse, circle). 2012-11-06 01:22:16 -08:00
Jürg Lehni
a6d19ac681 More work on SvgExporter code. 2012-11-05 23:45:23 -08:00
Jürg Lehni
ad76e65119 Further optimise determination of rotation and start implementing rotating of primitives. 2012-11-05 23:27:02 -08:00
Jürg Lehni
fe4da8e7a4 Embed determineIfTransformed() code into exportPath(). 2012-11-05 21:24:01 -08:00
Jürg Lehni
ce5ee2dae8 Simplify exportPath(). 2012-11-05 21:19:53 -08:00
Jürg Lehni
ab014c3328 Clean up determineType() and roundrect code. 2012-11-05 21:16:36 -08:00
Jürg Lehni
125fa1c051 Split SVG exporters apart more, and organise code better. 2012-11-05 20:50:31 -08:00
Jürg Lehni
f576ca3e9e More SvgExporter simplifications. 2012-11-05 20:31:45 -08:00
Jürg Lehni
5a061da4e3 Introduce private getDistance() function for shorter code. 2012-11-05 20:10:31 -08:00
Jürg Lehni
7511511ec7 More SVG path code simplifications. 2012-11-05 20:06:54 -08:00
Jürg Lehni
a9a14fb458 More work on SVG path commands. 2012-11-05 20:03:03 -08:00
Jürg Lehni
d3d74fb513 Further simplify SvgExporter code. 2012-11-05 19:56:49 -08:00
Jürg Lehni
37f87a3c03 Some minor clean-ups in importer. 2012-11-05 19:48:00 -08:00
Jürg Lehni
b559f6e4f3 Merge polyline and polygon code. 2012-11-05 19:47:47 -08:00
Jürg Lehni
2c17ff7831 Directly access private properties rather than using getters. 2012-11-05 19:45:18 -08:00
Jürg Lehni
a0a04a0bc1 Remove separate point, handleIn and handleOut arrays and just use segments instead. 2012-11-05 19:44:23 -08:00
Jürg Lehni
4c93ce546a There is no font attribute on Path#style. 2012-11-05 19:32:39 -08:00
Jürg Lehni
6211bc7ed6 More work on SvgStyles. 2012-11-05 19:26:54 -08:00
Jürg Lehni
03b94a92b5 More work on style meta-data, and fix yet another default style issue. 2012-11-05 19:03:42 -08:00
Jürg Lehni
07ce57c456 Implement SvgStyles as meta information about style-attribute mappings for both Svg Importer and Exporter. 2012-11-05 18:58:16 -08:00
Jürg Lehni
3714cd8706 Fix typo. 2012-11-05 18:27:50 -08:00
Jürg Lehni
05bf52b6af Minor tweaks in SvgImporter code. 2012-11-05 18:27:13 -08:00
Jürg Lehni
f6c7143920 Implement constant substitution for SVG constants. 2012-11-05 18:26:29 -08:00
Jürg Lehni
65f1e5c66d Improve style handling in SvgExporter. 2012-11-05 09:05:32 -08:00
Jürg Lehni
61531949b0 Rework horizontal / vertical lineto command code a bit. 2012-11-05 08:54:10 -08:00
Jonathan Puckey
6f19f64233 SvgImporter: fix support for vertical and horizontal lineTo commands. 2012-11-05 16:16:36 +01:00
Jürg Lehni
973211bbe2 Improve style handling in SvgExporter.
Work in progress, with some regressions for now.
2012-11-04 09:01:11 -08:00
Jürg Lehni
0eaabd667c Further clean up exporter code. 2012-11-04 00:09:44 -07:00
Jürg Lehni
e2cf7e1ace Use Path#isPolygon() in SvgExporter. 2012-11-04 00:04:15 -07:00
Jürg Lehni
5577e7e1ee Start restructuring SvgExporter, similar to SvgImporter. 2012-11-03 23:43:45 -07:00
Jürg Lehni
420e62e1dc Simplify compound path support in SvgImporter a little. 2012-11-03 19:45:19 -07:00
Jürg Lehni
76dab534a9 Add half-assed support for fill-opacity / stroke-opacity. 2012-11-03 19:28:18 -07:00
Jonathan Puckey
b0a82fdc06 SvgImporter: Fix importing of compound-paths. 2012-11-03 22:38:36 +01:00
Jürg Lehni
ddddd499ca Avoid name-clash with recently renamed variable. 2012-11-02 22:57:19 -07:00
Jürg Lehni
93372da384 Further shorten code. 2012-11-02 22:57:06 -07:00
Jürg Lehni
57103545cb Rename some variables. 2012-11-02 22:53:33 -07:00
Jürg Lehni
c755eba0c2 Switch to using Base.camelize(). 2012-11-02 22:53:24 -07:00
Jürg Lehni
4cd6d6f230 Add support for conversion of text-anchor to justification. 2012-11-02 21:11:30 -07:00
Jürg Lehni
81f8c32d7b Replace SVGTransform constants with their numeric values as well. 2012-11-02 20:21:08 -07:00
Jürg Lehni
9fbe1260b2 Comment out ARC code for now. 2012-11-02 20:11:40 -07:00
Jürg Lehni
964eb521ee Clean up and Streamline path importer.
Replacing SVGPathSeg constants with numeric values should reduce code quite a bit.
2012-11-02 20:09:12 -07:00
Jürg Lehni
d600536390 Shorten applyTransform(). 2012-11-02 19:39:59 -07:00
Jürg Lehni
99a39bebc3 Clean up applyAttributeOrStyle().
Do not use style properties directly, but setters instead.
2012-11-02 19:26:15 -07:00
Jürg Lehni
118a02bf05 Restructure SVGImporter code a bit. 2012-11-02 19:16:23 -07:00
Jürg Lehni
d52fff7425 Shorten importAttributesAndStyles() 2012-11-02 19:11:28 -07:00