- 24 Sep, 2014 1 commit
-
-
Dan Backes authored
- Because querying the Bounds property of an ISvgBoundable or SvgVisualElement is expensive, we introduced an ImmutableBoundable that is used by the SvgRenderer. This class stores the bounds of the supplied ISvgBoundable so that multiple queries for the bounds do not hamper performance when rendering. - Converted the Bounds property on ISvgBoundable and SvgVisualElement to a CalculateBounds method to indicate that it is an expensive operation that returns a new value each time it is called. - Removed redundant ISvgBoundable Location and Size properties. - Fixed a bug in SvgFragment.Path property by converting it to a method that indicates it returns a new GraphicsPath instance when called and by disposing of that instance in CalculateBounds. There are many more instances of GraphicsPath not being disposed in the code base but we did not address that here.
-
- 25 Aug, 2014 1 commit
-
-
Eric Domke authored
- Improving rendering of SVG images - Allow markers on lines, polygons, and polylines - Implement different line joins and line caps - Improve CSS handling
-
- 23 Aug, 2014 1 commit
-
-
Eric Domke authored
- Better parser for dealing with parsing edge cases - Fix corner radius for rectangles - Fix to gradients. Most tests now pass - Add the possibility for a fallback paint server - Initial fixes to clipping - Start marking passed test - Fixes to pattern rendering
-
- 17 Aug, 2014 1 commit
-
-
Eric Domke authored
- Extraction interface for SvgRenderer - Initial support for Text on a Path - Initial support for Svg Fonts - Support for symbol element - Minor bug fixes with image pattern rendering - Additional support for Text whitespace modes
-
- 10 Aug, 2014 1 commit
-
-
Eric Domke authored
- Support of generic fonts (serif, sans-serif, monospace) - Initial support of filters - Fixes to gradient rendering
-
- 04 Aug, 2014 1 commit
-
-
Eric Domke authored
- Adding W3C test cases and a test fixture - Fixed support for CSS stylesheets (particularly when class names are referenced) - Refactoring unit calculations so that percentages and fractions calculate more accurately - SvgImage: - Support PreserveAspectRatio attribute - Support for referencing svg images - Refactored text rendering to use the AttributeCollection inheritance scheme - Initial attempt at 'ex' unit support - Added support for system color names - Changed parsing of entities to support XML entities - Supporting loading of a svg document directly from a XmlDocument with requiring serializing the document as a string first. - ...
-
- 31 Jul, 2014 1 commit
-
-
Eric Domke authored
-
- 26 Jul, 2014 1 commit
-
-
Eric Domke authored
-
- 25 Jul, 2014 1 commit
-
-
Chris Moore authored
GDI Pen was crashing with some bad (Adobe Illustrator) data that had: stroke-dasharray="10,10,0"
-
- 24 Jul, 2014 1 commit
-
-
James Welle authored
- Added support for the "gradientTransform" attribute on both linear and radial gradients. The matrix in this attribute needs to be applied to attributes with coordinate values on the gradient element in order to transform them into the correct coordinate space. - Added support for a value of "pad" for the "spreadMode" attribute on both linear and radial gradients. This is the default value but was not implemented correctly. In order to implement, we examine the properties of the gradient along with the element to which the gradient is being applied to determine if we need to expand the bounds of the gradient to fill the element. If so, we do so and adjust the color stops and positions so they are correct for the new gradient bounds. - Divided ISvgStylable into ISvgBoundable and ISvgStylable. The SvgUnit.ToDeviceValue method just needs bounds so it can take ISvgBoundable. Moved SvgDocument.GetDimensions() to SvgFragment and made SvgFragment ISvgBoundable. - Fixed a bug in SvgFragment.PushTransforms where it was calling the SvgUnit.ToDeviceValue overload that takes no parameters. This overload doesn't work if the value being converted is a percentage. (The overload should probably be removed entirely, but we didn't take that on in this commit.) - Fixed an issue in SvgGroup.Bounds where a child with empty bounds would cause the group's bounds to be reported as empty. - Fixed broken build by adding missing SvgMarker.MarkerUnits property. - Converted files that we touched with mixed tabs and spaces to spaces. Also removed unused usings from files we touched. - Converted SvgLinearGradientServer to use properties without backing fields for X1, Y1, etc. in order to match SvgRadialGradientServer. - Moved default value assignments into constructors for consistency.
-
- 14 Jul, 2014 1 commit
-
-
James Welle authored
- Added support for the "gradientTransform" attribute on both linear and radial gradients. The matrix in this attribute needs to be applied to attributes with coordinate values on the gradient element in order to transform them into the correct coordinate space. - Added support for a value of "pad" for the "spreadMode" attribute on both linear and radial gradients. This is the default value but was not implemented correctly. In order to implement, we examine the properties of the gradient along with the element to which the gradient is being applied to determine if we need to expand the bounds of the gradient to fill the element. If so, we do so and adjust the color stops and positions so they are correct for the new gradient bounds. - Divided ISvgStylable into ISvgBoundable and ISvgStylable. The SvgUnit.ToDeviceValue method just needs bounds so it can take ISvgBoundable. Moved SvgDocument.GetDimensions() to SvgFragment and made SvgFragment ISvgBoundable. - Fixed a bug in SvgFragment.PushTransforms where it was calling the SvgUnit.ToDeviceValue overload that takes no parameters. This overload doesn't work if the value being converted is a percentage. (The overload should probably be removed entirely, but we didn't take that on in this commit.) - Fixed an issue in SvgGroup.Bounds where a child with empty bounds would cause the group's bounds to be reported as empty. - Fixed broken build by adding missing SvgMarker.MarkerUnits property. - Converted files that we touched with mixed tabs and spaces to spaces. Also removed unused usings from files we touched. - Converted SvgLinearGradientServer to use properties without backing fields for X1, Y1, etc. in order to match SvgRadialGradientServer. - Moved default value assignments into constructors for consistency.
-
- 21 May, 2014 1 commit
-
-
C Moore authored
Moved Display="none" hack & Added .Render check for : if (!Visible || !Displayable) Also, minor change to logic of SvgBoolConverter so bad visibility values (other than "hidden" or "collapse") wouldn't accidentally hide element
-
- 24 Mar, 2014 1 commit
-
-
Bigous authored
-
- 17 Nov, 2013 1 commit
-
- 30 Jul, 2013 1 commit
-
-
Tebjan Halm authored
-
- 11 Jul, 2013 1 commit
-
-
Tebjan Halm authored
-
- 19 Mar, 2012 1 commit
-
-
G Money authored
- Changes to get texts displaying bold / normal weight - Changes to get textspans work correctly - Made (semi-hardcoded) document metadata section - allow reading and regurgitating metdata tag from an original source document - Included image - Modified paths to allow for scientific notation - Included ability to have markers for path ends (arrow ends etc)
-
- 11 Nov, 2011 1 commit
-
-
Tebjan Halm authored
* fill can be null -> none in XML * added type converters for enums * added type converter for unitcollection * fixes several viewbox bugs * document can now draw into a given bitmap * content of SVG tag is written (used by the text tag) * changed font handling in text element, still need proper alignment * changed intersparse character of SvgTransformConverter.cs to space, because inkscape couldn't parse comma * added class diagram for basic shapes
-
- 04 Mar, 2010 1 commit
-
-
davescriven authored
-
- 24 Aug, 2009 1 commit
-
-
ddpruitt authored
Removed some compiler warnings.
-
- 26 Dec, 2008 1 commit
-
-
davescriven authored
- Fixed a bug that caused <text/> elements to be parsed incorrectly, leading to exceptions within the document.
-
- 20 Dec, 2008 1 commit
-
-
davescriven authored
- Refactored SvgElementFactory to use the new SvgElementAttribute to get available elements.
-
- 19 Dec, 2008 1 commit
-
-
davescriven authored
-
- 18 Oct, 2008 3 commits
-
-
davescriven authored
- Fixed "#7845 - Arc Path Renders incorrectly" as described in the work item - W3C example now renders correctly. - Ensured that a divide by zero exception could not occur during rendering of stroke dash arrays.
-
davescriven authored
- Changed the ISvgStylable interface StrokeDashArray property to be of type SvgUnitCollection instead of SvgUnit[] and updated SvgGraphicsElement to implement this change.
-
davescriven authored
- Added SvgMatrix, SvgShear and SvgSkew missing files from the previous check-in.
-
- 17 Oct, 2008 1 commit
-
-
davescriven authored
- Made all transforms (SvgTranslate, SvgMatrix etc) sealed types.
-
- 17 Jun, 2008 1 commit
-
-
davescriven authored
- Fixed #6324: SvgElement.PushTransforms and ViewBox - not necessarily related to ViewBox but every element was 'resetting' the current graphics transform if the element contained it's own transform. This was a very small fix for a large problem (SvgElement.PushTransforms Matrix transformMatrix = new Matrix(); changed to Matrix transformMatrix = renderer.Transform; in order to inherit the current transform.) - Fixed #6344: Parsing document incorrectly parents elements when it encounters empty nodes which are in a different namespace. Empty nodes are now ignored and current nodes are closed as required. We'll see how this fix goes. - Fixed #6381: Units in inches are incorrectly parsed as millimeters - problem was caused by some copy/paste work. - Graphics has been replaced by SvgRenderer. This is essentially a wrapper around graphics but will allow custom svg related properties in the future when needed. - Removed ISvgRenderer: A concrete implementation is suitable. - SvgElement.ElementName has been changed to non-virtual and is set by the parser instead of the developer having to specify it when developing the class. - Added more XML API documentation.
-
- 07 Mar, 2008 1 commit
-
-
davescriven authored
-