
Replace {sp} with space when svgText elements are deserialized. Added error handling for missing genmac macros. Changed lookup to internal to check for missing genmac macros.
132 lines
3.4 KiB
C#
132 lines
3.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
using System.Xml.Serialization;
|
|
using System.ComponentModel;
|
|
|
|
namespace Volian.Svg.Library
|
|
{
|
|
[XmlRoot("svg")]
|
|
public partial class Svg : SvgGroup
|
|
{
|
|
private static System.Drawing.Color _OverrrideColor = System.Drawing.Color.Empty;
|
|
public static System.Drawing.Color OverrideColor
|
|
{
|
|
get { return Svg._OverrrideColor; }
|
|
set { Svg._OverrrideColor = value; }
|
|
}
|
|
#region XML Serializer Namespaces
|
|
private XmlSerializerNamespaces _Namespaces = null;
|
|
[XmlNamespaceDeclarations]
|
|
public XmlSerializerNamespaces Namespaces
|
|
{
|
|
get
|
|
{
|
|
if (_Namespaces == null)
|
|
{
|
|
_Namespaces = new XmlSerializerNamespaces();
|
|
_Namespaces.Add("xlink", "http://www.w3.org/1999/xlink");
|
|
}
|
|
return _Namespaces;
|
|
}
|
|
set { _Namespaces = value; }
|
|
}
|
|
#endregion
|
|
#region Width
|
|
private SvgMeasurement _Width = new SvgMeasurement();
|
|
[XmlIgnore]
|
|
public SvgMeasurement Width
|
|
{
|
|
get { return _Width; }
|
|
set { _Width = value; }
|
|
}
|
|
[System.ComponentModel.DefaultValueAttribute("0")]
|
|
[XmlAttribute("width")]
|
|
[Browsable(false)]
|
|
[EditorBrowsable(EditorBrowsableState.Never)]
|
|
public string Width_XmlSurrogate
|
|
{
|
|
get { return SvgXmlConverter<SvgMeasurement>.GetString(_Width); }
|
|
set { _Width = SvgXmlConverter<SvgMeasurement>.GetObject(value); }
|
|
}
|
|
//private string _Watermark="";
|
|
//[XmlAttribute("watermark")]
|
|
//public string Watermark
|
|
//{
|
|
// get { return _Watermark; }
|
|
// set { _Watermark = value; }
|
|
//}
|
|
//public void SetValidWaterMark(string token, string watermark)
|
|
//{
|
|
// if (token == "{" + watermark.ToUpper() + "PAGE}" )
|
|
// _Watermark = watermark;
|
|
//}
|
|
#endregion
|
|
#region Height
|
|
private SvgMeasurement _Height = new SvgMeasurement();
|
|
[XmlIgnore]
|
|
public SvgMeasurement Height
|
|
{
|
|
get { return _Height; }
|
|
set { _Height = value; }
|
|
}
|
|
[System.ComponentModel.DefaultValueAttribute("0")]
|
|
[XmlAttribute("height")]
|
|
[Browsable(false)]
|
|
[EditorBrowsable(EditorBrowsableState.Never)]
|
|
public string Height_XmlSurrogate
|
|
{
|
|
get { return SvgXmlConverter<SvgMeasurement>.GetString(_Height); }
|
|
set { _Height = SvgXmlConverter<SvgMeasurement>.GetObject(value); }
|
|
}
|
|
#endregion
|
|
#region ViewBox
|
|
private SvgViewBox _ViewBox = new SvgViewBox("0 0 0 0");
|
|
[XmlIgnore]
|
|
public SvgViewBox ViewBox
|
|
{
|
|
get { return _ViewBox; }
|
|
set { _ViewBox = value; }
|
|
}
|
|
[System.ComponentModel.DefaultValueAttribute("0 0 0 0")]
|
|
[XmlAttribute("viewBox")]
|
|
[Browsable(false)]
|
|
[EditorBrowsable(EditorBrowsableState.Never)]
|
|
public string SVGViewBox_XmlSurrogate
|
|
{
|
|
get { return SvgXmlConverter<SvgViewBox>.GetString(_ViewBox); }
|
|
set { _ViewBox = SvgXmlConverter<SvgViewBox>.GetObject(value); }
|
|
}
|
|
#endregion
|
|
//#region Setup Inheritance
|
|
//private void SetupInheritance()
|
|
//{
|
|
// SvgParts.SetupInheritance(_MyInheritedSettings);
|
|
//}
|
|
////override internal void SetupInheritance(SvgInheritedSettings myParentsSettings)
|
|
////{
|
|
//// _MyInheritedSettings.MyParentsSettings = myParentsSettings;
|
|
//// SvgParts.SetupInheritance(_MyInheritedSettings);
|
|
////}
|
|
//#endregion
|
|
#region Part Lookup
|
|
private Dictionary<string, SvgPart> _LookUp;
|
|
[XmlIgnore]
|
|
internal Dictionary<string, SvgPart> LookUp
|
|
{
|
|
get
|
|
{
|
|
if (_LookUp == null)
|
|
{
|
|
_LookUp = new Dictionary<string, SvgPart>();
|
|
AddLookup(_LookUp);
|
|
}
|
|
return _LookUp;
|
|
}
|
|
}
|
|
public SvgPart this[string id]
|
|
{ get { return LookUp[id]; } }
|
|
#endregion
|
|
}
|
|
}
|