OpenXML 将 xml 样式表导入 xml 工作表?
OpenXML import xml stylesheet into xml worksheet?
我有一个 xml 文件,其中只有一个正在使用 reportjs 呈现的工作表。对于正在生成的不同报告,有许多这些单独的 xml 文件,每个文件都有自己的 <styleSheet>
标签和一堆重复的代码。
采用这种格式:
<worksheet>
...custom report...
</worksheet>
<styleSheet>
...tonnes of duplicated styling...
</styleSheet>
我想将该 <styleSheet>
代码提取到一个单独的文件中,并创建一组标准样式,然后我可以将其导入到每个报告中。
我试过:
<!DOCTYPE doc [
<!ENTITY customStyles SYSTEM "./style.xml">
]>
&customStyles;
其中 &customStyles
在很多地方都没有运气,我也尝试过使用许多 jsreport 功能但没有运气。
我怎样才能简单地将样式表内联导入到每个报告中?
这是 jsreport asset 的任务。将样式表 xml 作为资产上传并使用 xlsxReplace 将其添加到特定模板。
{{#xlsxReplace "xl/styles.xml"}}
{#asset style.xml}}
{{/xlsxReplace}}
{{#xlsxAdd "xl/worksheets/sheet1.xml" "worksheet.sheetData[0].row"}}
<row>
<c t="inlineStr" s="1"><is><t>Hello world</t></is></c>
</row>
{{/xlsxAdd}}
{{{xlsxPrint}}}
可以找到 playground 示例 here。
- 您需要加载您加载的源文件。
- 为该文件创建一个单独的样式sheet并将其保存到sheet。
- 将单独的样式应用到您的单元格。
这是我最后做的:
我已经在读取 xml 文件,获取它的内容,并使用
渲染它
fs.readFile(templatePath, 'utf8', function(err, content){
...
}
所以我只是将样式提取到一个新文档中,嵌套了一些读取文件并连接了结果。
fs.readFile(templatePath, 'utf8', function(err, content){
fs.readFile(stylesPath, 'utf8', function(err, styles){
...
content: `${content}{$styles}`
}
}
我有一个 xml 文件,其中只有一个正在使用 reportjs 呈现的工作表。对于正在生成的不同报告,有许多这些单独的 xml 文件,每个文件都有自己的 <styleSheet>
标签和一堆重复的代码。
采用这种格式:
<worksheet>
...custom report...
</worksheet>
<styleSheet>
...tonnes of duplicated styling...
</styleSheet>
我想将该 <styleSheet>
代码提取到一个单独的文件中,并创建一组标准样式,然后我可以将其导入到每个报告中。
我试过:
<!DOCTYPE doc [
<!ENTITY customStyles SYSTEM "./style.xml">
]>
&customStyles;
其中 &customStyles
在很多地方都没有运气,我也尝试过使用许多 jsreport 功能但没有运气。
我怎样才能简单地将样式表内联导入到每个报告中?
这是 jsreport asset 的任务。将样式表 xml 作为资产上传并使用 xlsxReplace 将其添加到特定模板。
{{#xlsxReplace "xl/styles.xml"}}
{#asset style.xml}}
{{/xlsxReplace}}
{{#xlsxAdd "xl/worksheets/sheet1.xml" "worksheet.sheetData[0].row"}}
<row>
<c t="inlineStr" s="1"><is><t>Hello world</t></is></c>
</row>
{{/xlsxAdd}}
{{{xlsxPrint}}}
可以找到 playground 示例 here。
- 您需要加载您加载的源文件。
- 为该文件创建一个单独的样式sheet并将其保存到sheet。
- 将单独的样式应用到您的单元格。
这是我最后做的:
我已经在读取 xml 文件,获取它的内容,并使用
渲染它fs.readFile(templatePath, 'utf8', function(err, content){
...
}
所以我只是将样式提取到一个新文档中,嵌套了一些读取文件并连接了结果。
fs.readFile(templatePath, 'utf8', function(err, content){
fs.readFile(stylesPath, 'utf8', function(err, styles){
...
content: `${content}{$styles}`
}
}