将 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 文件。