diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/docx/styles-reader.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/docx/styles-reader.js b/lib/docx/styles-reader.js new file mode 100644 index 0000000..d896d3d --- /dev/null +++ b/lib/docx/styles-reader.js @@ -0,0 +1,25 @@ +exports.readStylesXml = readStylesXml; + +function Styles(paragraphStyles) { + return { + findParagraphStyleById: function(styleId) { + return paragraphStyles[styleId]; + } + }; +} + +function readStylesXml(xml) { + var paragraphStyles = []; + + xml.root.getElementsByTagName("w:style").forEach(function(styleElement) { + var style = readStyleElement(styleElement); + paragraphStyles[style.styleId] = style; + }); + + return new Styles(paragraphStyles); +} + +function readStyleElement(styleElement) { + var styleId = styleElement.attributes["w:styleId"]; + return {styleId: styleId}; +} |
