Я нашел функцию, которая создает документ Word из HTML.Моя цель - встроить 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
файла, скажем?Заранее спасибо.