69 XmlDocument xr =
new XmlDocument() { XmlResolver =
null };
70 using (XmlReader reader = XmlReader.Create(stream,
new XmlReaderSettings() { XmlResolver =
null }))
73 string prefix =
ReaderUtils.DiscoverPrefix(xr,
"theme");
74 XmlNodeList themes =
ReaderUtils.GetElementsByTagName(xr,
"theme", prefix);
76 Workbook.WorkbookTheme =
new Theme(themeName);
77 ColorScheme colorScheme =
new ColorScheme();
78 Workbook.WorkbookTheme.Colors = colorScheme;
79 XmlNodeList colors =
ReaderUtils.GetElementsByTagName(xr,
"clrScheme", prefix);
81 foreach (XmlNode color
in colors)
84 Workbook.WorkbookTheme.Colors.Name = colorSchemeName;
85 XmlNodeList colorNodes = color.ChildNodes;
86 foreach (XmlNode colorNode
in colorNodes)
88 string name = colorNode.LocalName;
92 colorScheme.Dark1 = ParseColor(colorNode.ChildNodes);
95 colorScheme.Light1 = ParseColor(colorNode.ChildNodes);
98 colorScheme.Dark2 = ParseColor(colorNode.ChildNodes);
101 colorScheme.Light2 = ParseColor(colorNode.ChildNodes);
104 colorScheme.Accent1 = ParseColor(colorNode.ChildNodes);
107 colorScheme.Accent2 = ParseColor(colorNode.ChildNodes);
110 colorScheme.Accent3 = ParseColor(colorNode.ChildNodes);
113 colorScheme.Accent4 = ParseColor(colorNode.ChildNodes);
116 colorScheme.Accent5 = ParseColor(colorNode.ChildNodes);
119 colorScheme.Accent6 = ParseColor(colorNode.ChildNodes);
122 colorScheme.Hyperlink = ParseColor(colorNode.ChildNodes);
125 colorScheme.FollowedHyperlink = ParseColor(colorNode.ChildNodes);
131 RederPlugInHandler.HandleInlineQueuePlugins(ref stream,
Workbook, PlugInUUID.ThemeInlineReader);
137 throw new IOException(
"The XML entry could not be read from the input stream. Please see the inner exception:", ex);