Commit graph

247 commits

Author SHA1 Message Date
asturur
fd658ce29b remove path positioning fixes
in different branch.
2014-06-19 23:46:06 +02:00
asturur
9c444b4ecb Path positioning
This path positioning change renders correctly the svg 170 ( the many red triangles ) and change the visualization of issue #1363. Need extensive testing. Consider that viewbox has to be implemented better, so don't take too much negatively the errors on svgs that have viewbox with negative numbers.

if this is not a solution i hope at least it can inspire someone
2014-06-19 23:33:12 +02:00
asturur
2dc5e298a3 Update ellipse.class.js 2014-06-19 21:38:26 +02:00
asturur
66d6b633ba Update ellipse.class.js 2014-06-19 21:37:33 +02:00
asturur
3f47559589 Start to fix the position of ellipses
Till this library won't use ctx.ellipse() this weird transformation will be a huge mess.
This little fix imroves position of not transformed ellipses.
You can see the fixes on the example i will post below.
It needs improvement to work with other transformMatrix.
2014-06-19 21:05:39 +02:00
asturur
190973f6c9 Update ellipse.class.js
Always transparency rendering related.
2014-06-19 17:14:36 +02:00
asturur
8482c1c29b Update polygon.class.js
Apply opacity property to poligon class.
2014-06-19 10:42:55 +02:00
asturur
572038b0e5 Update path.class.js
apply opacity property on paths.
2014-06-19 10:42:05 +02:00
Jim Rodovich
1201cfb1e1 Make closepath commands update current x/y coordinates.
Per the SVG spec,
> If a "closepath" is followed immediately by any other command, then
> the next subpath starts at the same initial point as the current
> subpath.
2014-06-06 13:50:54 -05:00
Jim Rodovich
ff04efdc76 Don't ever draw lines to explicit M/m commands.
#1365 converted multiple M/m coordinates to L/l commands when importing paths. The `_render` function was already attempting to connect those coordinates, but that's no longer necessary as the only consecutive M/m commands in `_render` were explicitly defined as M/m commands.
2014-06-06 10:31:54 -05:00
Jim Rodovich
6f8444c86a Convert extra "moveto" coordinates to "lineto" commands.
Per the [SVG spec](http://www.w3.org/TR/SVG11/paths.html#PathDataMovetoCommands):

> If a moveto is followed by multiple pairs of coordinates, the
> subsequent pairs are treated as implicit lineto commands. Hence,
> implicit lineto commands will be relative if the moveto is relative,
> and absolute if the moveto is absolute."
2014-05-30 10:08:03 -05:00
Kienz
5ea264ae3d fabric.Object.setAngle consider different originX/originY values other than "center"
Closes issue #1093
2014-05-12 20:36:59 +02:00
kangax
f5691b4b4f Set default originX as center. Closes #974 2014-05-09 23:29:11 +02:00
Jim Rodovich
6a478e6791 Use a cubic bezier approximation for rounded rectangle corners.
According to the SVG spec these corners are supposed to be elliptical arcs.  HTML canvas does not have methods for elliptical arcs, but a cubic approximation can get within 0.02%.

Using the "magic number" from http://itc.ktu.lt/itc354/Riskus354.pdf.
2014-05-08 14:20:13 -05:00
Jim Rodovich
76314abd95 Optimize for common case of radius 0. 2014-05-07 19:02:18 -05:00
Jim Rodovich
7b4455f29a Constrain rounded rect radii to half the width & height. 2014-05-07 10:25:34 -05:00
Grzegorz Godlewski
ce786cc3ad Transform matrix and isInPathGroup fix for images 2014-04-28 21:37:52 +02:00
Juriy Zaytsev
c7b4b52981 Merge pull request #1282 from wilsonwc/master
Fix for #1237
2014-04-22 14:28:02 -04:00
kangax
b3600e62a4 Add support for text-anchor's 2014-04-18 16:07:49 -04:00
Ross Wilson
14338a9559 Fix for #1237
Only set crossorigin on the element if something is specified
2014-04-16 13:03:02 -06:00
kangax
5e385e5ed0 Fix text offsets and size in SVG 2014-04-16 13:39:32 -04:00
kangax
f3b7884827 Add support for "evenodd" fill rule. Closes #1021 2014-04-15 20:09:01 -04:00
kangax
d6a73aa7f5 Make isSameColor cave-insensitive. Closes #1272 2014-04-14 12:17:06 -04:00
kangax
cfd71e9550 Fix viewBox parsing 2014-04-10 13:57:24 -04:00
Max Kaplan
54f9c0428f add spaces before { 2014-03-07 17:32:09 -05:00
Max Kaplan
fd38b8f4a4 formatting for fixes 2014-03-07 01:15:56 -05:00
Max Kaplan
6f3f1ff7c9 Fix loadFromJSON 404s breaking fabric (Image)
Prevent image 404s in Images from loadFromJSON from breaking everything
trying to get attributes of a source which is null, while passing it
upwards to allow dealing with images which failed to load outside of
Fabric.JS Issue #1079
2014-03-07 01:12:50 -05:00
kangax
eb919f9a04 Fix ellipse borders. Closes #1099 Thanks @xnramx 2014-03-06 19:47:55 -05:00
kangax
2acdc7e85b Fix few bracketless statements. Down to 257 failures on JSCS. 2014-02-27 15:00:42 -05:00
XhmikosR
67e9c8829c Remove extra commas. 2014-02-23 20:25:23 +02:00
kangax
0dbf03835d Fix typo, build dist 2014-02-19 14:59:50 -05:00
Juriy Zaytsev
8f2d29f5d6 Merge pull request #1172 from kreig/patch-1
fabric.Object.fillRule support using globalCompositeOperation
2014-02-19 14:44:05 -05:00
kangax
631226d26b More JSCS fixes; down to 295 failures 2014-02-17 11:55:54 -05:00
kangax
d2f6a9033e Add JSCS validation & change bunch of things for conformance. Down to 333 failures from ~1000. 2014-02-16 16:36:14 -05:00
kreig
e89c9c84bd fabric.Object.fillRule support using globalCompositeOperation
Full support for the fabric.Object.fillRule option for any visual objects.
_setupFillRule(ctx) is used to set CanvasRenderingContext2D.globalCompositeOperation (from fillRule property).
_restorFillRule(ctx) restores previously saved globalCompositeOperation.
Both methods are called form the render() method, so individual blending settings for each object can be specified.
2014-02-16 19:00:53 +02:00
kangax
0460e4e248 Fix recent group addition 2014-02-11 12:47:09 -05:00
kangax
93ac070918 Make _calcBounds more flexible 2014-02-10 23:24:29 -05:00
Maciej Filip Szkodziński
7d72d0500f Removed Line._getCenterToCenter helpers
Pre-rendering context translation for lines in path-groups uses the
pre-existing getCenterPoint.

Removed tests for removed code.
2014-02-05 17:33:20 +01:00
Maciej Filip Szkodziński
df764728e0 Fix group mocks in Line tests
Added missing semicolons in tests.

Refactored Line centerToCenterGetter to improve readability.
2014-02-05 17:07:45 +01:00
Maciej Filip Szkodziński
6b1e144c44 Line coordinates are correct
fabric.Line._setWidthHeight was assigning left and top as if both
origins were 'center'.

It now uses private helper methods to calculate the distances from
left and top edges of canvas to the line origins.

The data for existing Line.toObject test is updated with origin-relative
coordinates.

Rendering of line inside a path-group was assuming a 'center' origin
for both coordinates.

Context translation done before rendering for lines inside path-groups
now uses private helper methods to calculate distances from the center
of path-group to center of line.
2014-02-05 15:42:52 +01:00
kangax
512b0186c8 Tweak iText after PR 2014-02-01 14:24:25 -05:00
Juriy Zaytsev
4a967b7ddf Merge pull request #1114 from GordoRank/Improve-IText-performance
Improve overall IText performance with varying styles > 1000%
2014-02-01 11:22:20 -08:00
kangax
68d4a74def Tweak few things in iText; build distribution 2014-02-01 13:18:22 -05:00
Juriy Zaytsev
93bd41f356 Merge pull request #1113 from GordoRank/Reduce-calls-to-fillText/strokeText-for-IText
Reduce calls to fillText/fillStroke in IText
2014-02-01 10:15:39 -08:00
Juriy Zaytsev
213b99eb9f Merge pull request #1127 from GordoRank/Optimize-searchPossibleTargets-for-IText
Optimize searchPossibleTargets for I-text
2014-01-27 12:54:02 -08:00
kangax
e977372236 Remove node 0.6 from travis until jsdom fixes it 2014-01-23 11:25:04 -05:00
kangax
3dd2f1572d Move for in body into a separate method (to allow inlining) 2014-01-23 10:49:23 -05:00
kangax
dbbfb992cb Add all properties onto prototype (not to invalidate hidden classes) 2014-01-23 10:49:23 -05:00
GordoRank
531faae418 revert master 2014-01-23 10:15:30 +00:00
GordoRank
4183bddd26 revert 2014-01-23 10:14:58 +00:00