- 20 Dec, 2015 1 commit
-
-
HeinrichAD authored
Fix: Now the application make sure to set back the old culture even an error occurred. SvgColourConverter.ConvertFrom SvgPathBuilder.ConvertTo SvgDocument.Write SvgExtentions.GetXML Add: Attribute: "shape-rendering" Change: - Many other properties were unknowingly overloaded. I changed them to override. - Some methods or structures need the [CLSCompliant(false)] Attribute. For example the Enums.TryParse extension. This extension has the where condition IConvertible. IConvertible is [CLSCompliant(false)] and that the reason why it is correct to mark the Enums.TryParse extension also as [CLSCompliant(false)]. - Property "float Opacity" in SvgElement was unknowingly overloaded in SvgGradientStop as string [stop-opacity]. In the end this property was only used as float. I changed the SvgGradientStop.Opacity property from string to float and to override.
-
- 17 Sep, 2015 1 commit
-
-
tebjan authored
-
- 26 Aug, 2015 1 commit
-
-
Gertjan van Heertum authored
Fixed problems when running in multiple threads. The use of a static matrix and the use of StringFormat.GenericTypographic seemed to cause problems when used in multi-threading. This is resolved by making the matrix non static and use a copy of the StringFormat. Also created a new exception for memory overflows. When using multithreading to render a large amount of big images the bitmap creation can fail (due to memory allocation) throwing an error. This is now caught and a specific exception is thrown.
-
- 20 Aug, 2015 2 commits
-
-
Gertjan van Heertum authored
-
Gertjan van Heertum authored
Extended the Marker start/mid/end getters with a function to return null if the property was set to none. This will prevent nullpointer issues when having none as one of the items.
-
- 26 Sep, 2014 1 commit
-
-
Tebjan Halm authored
-
- 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 2 commits
-
-
Eric Domke authored
- Remove WPF dependency - Fix compilation error after merge - Add support for underline and strike through - Fix whitespace handling with text rendering
-
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. - ...
-
- 01 Aug, 2014 1 commit
-
-
Eric Domke authored
- Very initial support of CSS stylesheets in the SVG via including the ExCss and Fizzler libraries - Bug fixes with path rendering - Improvements to the API for loading an SVG file
-
- 30 Jul, 2014 1 commit
-
-
Eric Domke authored
-
- 25 Jul, 2014 2 commits
-
-
Eric Domke authored
- Support more font styles - Fix problems with parsing 'em' svg units introduced by trying to parse 2e-5 double formats - Move font properties to SvgVisualElement class as grouping elements can also contain them - Properly inherit font properties via the parent list - Properly handle tspan offsets - Support for .Net 3.5
-
Eric Domke authored
-
- 24 Jul, 2014 4 commits
-
-
Eric Domke authored
- Implemented .Net 3.5 support mostly by removing ISvgEventCaller functionality in .Net 3.5 build - Added ability to parse colors such as rgb(#%, #%, #%) - Fix issues with calculating the next coordinate after a close figure and a relative move - Allow the std. deviation in a gaussian blur to be a float. - Allow "none" for a unit collection - Allow gradients to reference other gradients defined later in the SVG - Fix href attribute bug on the SVG use element - Adding a descendants convenience methods (similar to the Xml to Linq API) - Removed non-functional property from the SvgDescription class to encourage use of the Content property instead
-
Guymestef authored
Add support for unknown svg element and non svg element: useful for not removing unknown xml tag from document when loading a file
-
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.
-
Tebjan Halm authored
-
- 21 Jul, 2014 1 commit
-
-
Guymestef authored
Add support for unknown svg element and non svg element: useful for not removing unknown xml tag from document when loading a file
-
- 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.
-
- 02 Jul, 2014 1 commit
-
-
Tebjan Halm authored
-
- 01 Jul, 2014 1 commit
-
-
Eric Domke authored
- Adding a descendants convenience methods (similar to the Xml to Linq API) - Removed non-functional property from the SvgDescription class to encourage use of the Content property instead - Added unit test project for unit test of new functionality.
-
- 30 Jun, 2014 1 commit
-
-
Eric Domke authored
- Fix issues with calculating the next coordinate after a close figure and a relative move - Allow the std. deviation in a gaussian blur to be a float. - Allow "none" for a unit collection - Allow a marker to scale with either the stroke width or the use a custom coordinate space - Allow gradients to reference other gradients defined later in the SVG - Respect the font and fill styles of TextSpan elements. Current support is still partial. - Fix href attribute bug on the SVG use element
-
- 28 Jun, 2014 1 commit
-
-
Brian C. Barnes authored
-
- 27 Jun, 2014 1 commit
-
-
Eric Domke authored
- Implemented .Net 3.5 support mostly by removing ISvgEventCaller functionality in .Net 3.5 build - Added ability to parse orient="auto" - Added ability to parse colors such as rgb(#%, #%, #%) - Fixed marker rendering implementation
-
- 13 Mar, 2014 1 commit
-
-
tebjan authored
-
- 12 Mar, 2014 1 commit
-
-
tebjan authored
-
- 08 Mar, 2014 1 commit
-
-
tebjan authored
-
- 25 Nov, 2013 1 commit
-
-
Tebjan Halm authored
-
- 17 Nov, 2013 1 commit
-
- 10 Oct, 2013 1 commit
-
-
Bartosz Raczek authored
-
- 28 Jun, 2013 1 commit
-
-
Tebjan Halm authored
-
- 26 Jun, 2013 1 commit
-
-
Tebjan Halm authored
-
- 04 Jun, 2013 1 commit
-
-
Tebjan Halm authored
-
- 16 Jul, 2012 1 commit
-
-
Tebjan Halm authored
-
- 16 Apr, 2012 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)
-