我找到了一个从HTML创建Word文档的函数。我的目标是将CSS作为函数参数嵌入。该函数如下所示:
function exportWordDoc(nameOfFileToCreate, elementGetHTMLFrom)
{
var html, link, blob, url, css;
// EU A4 use: size: 841.95pt 595.35pt;
// US Letter use: size:11.0in 8.5in;
css = (
'<style>' +
'@page WordSection1{size: 841.95pt 595.35pt;mso-page-orientation: landscape;}' +
'div.WordSection1 {page: WordSection1;}' +
'table{border-collapse:collapse;}td{border:1px gray solid;width:5em;padding:2px;}'+
'</style>'
);
html = $(elementGetHTMLFrom).html();
blob = new Blob(['\ufeff', css + html], {
type: 'application/msword'
});
url = URL.createObjectURL(blob);
link = document.createElement('A');
link.href = url;
// Set default file name.
// Word will append file extension - do not add an extension here.
link.download = nameOfFileToCreate;
document.body.appendChild(link);
if (navigator.msSaveOrOpenBlob ) navigator.msSaveOrOpenBlob( blob, nameOfFileToCreate + '.doc'); // IE10-11
else link.click(); // other browsers
document.body.removeChild(link);
};
该功能运作良好。但是,它的用途不够多。我可以选择文件名元素和元素。我的问题 - 是否可以指定我想要使用的CSS?要将它作为函数参数传递,而不是以纯文本形式传递(这真的很痛苦),但作为外部.css
文件,让我们说吧?提前谢谢。