1. 01 Oct, 2015 1 commit
    • drbassett's avatar
      Fix calculation of rectangle path · 1be9ccff
      drbassett authored
      The rectangle path width/height was computed using the full stroke width.
      It should have been using the half stroke width instead.
      1be9ccff
  2. 17 Sep, 2015 1 commit
  3. 21 Aug, 2015 1 commit
  4. 20 Aug, 2015 1 commit
  5. 28 Jul, 2015 1 commit
  6. 27 Jul, 2015 1 commit
  7. 11 Jun, 2015 1 commit
  8. 10 Jun, 2015 1 commit
  9. 25 Mar, 2015 1 commit
  10. 26 Sep, 2014 1 commit
  11. 24 Sep, 2014 1 commit
    • Dan Backes's avatar
      Performance Improvement · 1b8cb43f
      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.
      1b8cb43f
  12. 25 Aug, 2014 1 commit
    • Eric Domke's avatar
      Bug Fixes · 4200d302
      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
      4200d302
  13. 23 Aug, 2014 1 commit
    • Eric Domke's avatar
      Gradient, Pattern, and Clip Fixes · 3f4ee333
      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
      3f4ee333
  14. 18 Aug, 2014 1 commit
    • Eric Domke's avatar
      Bug Fixes · 46e375e4
      Eric Domke authored
      - Fixing path parsing algorithm to deal with nuanced arc cases and
      hopefully improve performance
      - Attempts at better memory management
      - Working toward getting symbols to render correctly
      46e375e4
  15. 17 Aug, 2014 1 commit
    • Eric Domke's avatar
      Text on a Path & SVG Fonts · 7c70bd11
      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
      7c70bd11
  16. 10 Aug, 2014 1 commit
  17. 04 Aug, 2014 2 commits
    • Eric Domke's avatar
      Bug Fixes · 2187be3e
      Eric Domke authored
      - Remove WPF dependency
      - Fix compilation error after merge
      - Add support for underline and strike through
      - Fix whitespace handling with text rendering
      2187be3e
    • Eric Domke's avatar
      Refactoring while working through W3C tests · d5c659a5
      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.
      - ...
      d5c659a5
  18. 31 Jul, 2014 1 commit
  19. 26 Jul, 2014 1 commit
  20. 25 Jul, 2014 2 commits
    • Eric Domke's avatar
      Iteration 2 of tspan functionality · 968a8f43
      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
      968a8f43
    • Chris Moore's avatar
      Fix for GDI crash if stroke-dasharray contains value<=0 · 45a2f4e8
      Chris Moore authored
      GDI Pen was crashing with some bad (Adobe Illustrator) data that had: stroke-dasharray="10,10,0"
      45a2f4e8
  21. 24 Jul, 2014 1 commit
    • James Welle's avatar
      Gradient Improvements · 9e269139
      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.
      9e269139
  22. 14 Jul, 2014 1 commit
    • James Welle's avatar
      Gradient Improvements · 3987f281
      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.
      3987f281
  23. 21 May, 2014 1 commit
    • C Moore's avatar
      Requested Changes from PR #67 Review · c04111fc
      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
      c04111fc
  24. 26 Apr, 2014 1 commit
  25. 29 Mar, 2014 1 commit
  26. 24 Mar, 2014 1 commit
  27. 20 Mar, 2014 2 commits
  28. 11 Mar, 2014 1 commit
  29. 19 Dec, 2013 1 commit
  30. 17 Dec, 2013 1 commit
  31. 28 Nov, 2013 1 commit
  32. 17 Nov, 2013 1 commit
  33. 08 Aug, 2013 1 commit
  34. 31 Jul, 2013 1 commit
  35. 30 Jul, 2013 1 commit
  36. 11 Jul, 2013 1 commit
  37. 08 Jul, 2013 1 commit