将 css 文件传递给 PDFMake 样式
Pass css file into PDFMake styles
我目前正在尝试使用 HTML-to-pdfmake 和 pdf make 库将包含 HTML 标记的字符串打印为 pdf。 HTML 包含很多 类 和 id,我在 CSS 文件中为它们设置了样式。有没有办法将 CSS 文件传递给 pdfmake 中的 styles
属性,而不是在内容定义部分中写入所有样式?
这是我目前拥有的:
let documentDefinition = {
pageSize: "A4",
pageOrientation: "portrait",
footer: footer,
header: header,
content: [
{
text: htmlToPdfmake(documentBody, {
window: window,
}),
},
],
styles: {
header: {
fontSize: 22,
bold: true,
},
anotherStyle: {
italics: true,
alignment: "right",
},
},
}
目标是从 css 中引用这些样式,而不是因为我有 1000 行长的 css 样式。所以会是这样的:
let documentDefinition = {
pageSize: "A4",
pageOrientation: "portrait",
footer: footer,
header: header,
content: [
{
text: htmlToPdfmake(documentBody, {
window: window,
}),
},
],
styles: {
path: "./styles/style.css"
}
}
仅供参考:pdfmake style's are not CSS and the html-to-pdfmake module only supports a limited set of CSS properties。
CSS can create very complex design, however this framework can only handle the most simple HTML / CSS. The support of CSS style is limited and might not work in all cases with all values:
话虽如此,如果您想将配置的这一部分外部化,您可以将其移动到不同的 JS(甚至 JSON)文件并使用您喜欢的模块加载器加载它,就像您使用任何常规 JS 或 JSON 文件。
我目前正在尝试使用 HTML-to-pdfmake 和 pdf make 库将包含 HTML 标记的字符串打印为 pdf。 HTML 包含很多 类 和 id,我在 CSS 文件中为它们设置了样式。有没有办法将 CSS 文件传递给 pdfmake 中的 styles
属性,而不是在内容定义部分中写入所有样式?
这是我目前拥有的:
let documentDefinition = {
pageSize: "A4",
pageOrientation: "portrait",
footer: footer,
header: header,
content: [
{
text: htmlToPdfmake(documentBody, {
window: window,
}),
},
],
styles: {
header: {
fontSize: 22,
bold: true,
},
anotherStyle: {
italics: true,
alignment: "right",
},
},
}
目标是从 css 中引用这些样式,而不是因为我有 1000 行长的 css 样式。所以会是这样的:
let documentDefinition = {
pageSize: "A4",
pageOrientation: "portrait",
footer: footer,
header: header,
content: [
{
text: htmlToPdfmake(documentBody, {
window: window,
}),
},
],
styles: {
path: "./styles/style.css"
}
}
仅供参考:pdfmake style's are not CSS and the html-to-pdfmake module only supports a limited set of CSS properties。
CSS can create very complex design, however this framework can only handle the most simple HTML / CSS. The support of CSS style is limited and might not work in all cases with all values:
话虽如此,如果您想将配置的这一部分外部化,您可以将其移动到不同的 JS(甚至 JSON)文件并使用您喜欢的模块加载器加载它,就像您使用任何常规 JS 或 JSON 文件。