SvgDocumentMetadata.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Xml;
  5. #pragma warning disable
  6. namespace Svg
  7. {
  8. /// <summary>
  9. /// Represents a list of re-usable SVG components.
  10. /// </summary>
  11. [SvgElement("metadata")]
  12. public class SvgDocumentMetadata : SvgElement
  13. {
  14. // private string _metadata;
  15. /// <summary>
  16. /// Initializes a new instance of the <see cref="SvgDocumentMetadata"/> class.
  17. /// </summary>
  18. public SvgDocumentMetadata()
  19. {
  20. Content = "";
  21. }
  22. //public string Metadata
  23. //{
  24. // get { return _metadata; }
  25. // set { _metadata = value; }
  26. //}
  27. /// <summary>
  28. /// Renders the <see cref="SvgElement"/> and contents to the specified <see cref="ISvgRenderer"/> object.
  29. /// </summary>
  30. /// <param name="renderer">The <see cref="ISvgRenderer"/> object to render to.</param>
  31. protected override void Render(ISvgRenderer renderer)
  32. {
  33. // Do nothing. Children should NOT be rendered.
  34. }
  35. protected override void WriteChildren(XmlTextWriter writer)
  36. {
  37. writer.WriteRaw(this.Content); //write out metadata as is
  38. }
  39. public override SvgElement DeepCopy()
  40. {
  41. return DeepCopy<SvgDocumentMetadata>();
  42. }
  43. public override void InitialiseFromXML(XmlTextReader reader, SvgDocument document)
  44. {
  45. base.InitialiseFromXML(reader, document);
  46. //read in the metadata just as a string ready to be written straight back out again
  47. Content = reader.ReadInnerXml();
  48. }
  49. }
  50. }
  51. #pragma warning restore