70 XmlDocument xr =
new XmlDocument() { XmlResolver =
null };
71 using (XmlReader reader = XmlReader.Create(stream,
new XmlReaderSettings() { XmlResolver =
null }))
74 string prefix =
ReaderUtils.DiscoverPrefix(xr,
"theme");
75 XmlNodeList themes =
ReaderUtils.GetElementsByTagName(xr,
"theme", prefix);
77 Workbook.WorkbookTheme =
new Theme(themeName);
78 ColorScheme colorScheme =
new ColorScheme();
79 Workbook.WorkbookTheme.Colors = colorScheme;
80 XmlNodeList colors =
ReaderUtils.GetElementsByTagName(xr,
"clrScheme", prefix);
82 foreach (XmlNode color
in colors)
85 Workbook.WorkbookTheme.Colors.Name = colorSchemeName;
86 XmlNodeList colorNodes = color.ChildNodes;
87 foreach (XmlNode colorNode
in colorNodes)
89 string name = colorNode.LocalName;
93 colorScheme.Dark1 = ParseColor(colorNode.ChildNodes);
96 colorScheme.Light1 = ParseColor(colorNode.ChildNodes);
99 colorScheme.Dark2 = ParseColor(colorNode.ChildNodes);
102 colorScheme.Light2 = ParseColor(colorNode.ChildNodes);
105 colorScheme.Accent1 = ParseColor(colorNode.ChildNodes);
108 colorScheme.Accent2 = ParseColor(colorNode.ChildNodes);
111 colorScheme.Accent3 = ParseColor(colorNode.ChildNodes);
114 colorScheme.Accent4 = ParseColor(colorNode.ChildNodes);
117 colorScheme.Accent5 = ParseColor(colorNode.ChildNodes);
120 colorScheme.Accent6 = ParseColor(colorNode.ChildNodes);
123 colorScheme.Hyperlink = ParseColor(colorNode.ChildNodes);
126 colorScheme.FollowedHyperlink = ParseColor(colorNode.ChildNodes);
132 RederPlugInHandler.HandleInlineQueuePlugins(ref stream,
Workbook, PlugInUUID.ThemeInlineReader);
138 throw new IOException(
"The XML entry could not be read from the input stream. Please see the inner exception:", ex);