HTML 元素未显示在 Visualforce 页面中,在 Salesforce 中呈现为 PDF
HTML elements not displaying in the Visualforce Page rendered as PDF in Salesforce
在 Salesforce 中:
我在 Visualforce 页面中使用 SVG 标签打印了一个条形码。但是,当使用组件的 'renderAs' 属性将 Visualforce 页面呈现为 pdf 时,条形码不会显示!
<apex:page renderAs="pdf" sidebar="false" showHeader="false" applyBodyTag="false">
<head>
<script src="http://cdn.jsdelivr.net/jsbarcode/3.6.0/JsBarcode.all.min.js"></script>
<script></script>
</head>
<body>
<svg id="barcodesvg" >Hello World!</svg> <!-- style="width:80px; height:25px;" -->
</body>
<script>
JsBarcode("#barcodesvg", "Hey World!");
console.log(JsBarcode("#barcodesvg", "Hey World!"));
</script>
</apex:page>
花了一个星期的时间来研究它。任何帮助将不胜感激!
Visualforce 的 PDF 渲染使用(或至少用于)Java 名为 Flying Saucer 的库。
没有这样的浏览器,没有 Java脚本引擎 运行 您的代码。
您必须以不同的方式生成条形码。寻找 Java 能够预渲染您的图像并将其保存为 PNG 附件的脚本库,然后在 VF 中使用它。或者,如果它是一个相对简单的条形码,您可以在 Apex 中进行计算并以纯 html 显示为一系列黑白 <span>
s(应该很容易找到 [=22= 的示例实现] 或 .NET 的语法与 Apex 差别不大...甚至可以使用 JavaScript 的源代码作为灵感)。或者也许调用另一个可以生成图像的服务器,也许将您自己的 https://github.com/zxing/zxing 实例放在某个地方(Heroku?)并为图像调用它。
如果你可以在没有真正的 Visualforce renderAs="pdf" 的情况下生活(忘记在电子邮件模板、附件、任何类型的服务器代码中使用它,例如在 SF 中生成文件并上传到某处)那么它可以在Java脚本中。指导用户如何将页面打印为 PDF,或者您可能会遇到 https://github.com/MrRio/jsPDF
在 Salesforce 中: 我在 Visualforce 页面中使用 SVG 标签打印了一个条形码。但是,当使用组件的 'renderAs' 属性将 Visualforce 页面呈现为 pdf 时,条形码不会显示!
<apex:page renderAs="pdf" sidebar="false" showHeader="false" applyBodyTag="false">
<head>
<script src="http://cdn.jsdelivr.net/jsbarcode/3.6.0/JsBarcode.all.min.js"></script>
<script></script>
</head>
<body>
<svg id="barcodesvg" >Hello World!</svg> <!-- style="width:80px; height:25px;" -->
</body>
<script>
JsBarcode("#barcodesvg", "Hey World!");
console.log(JsBarcode("#barcodesvg", "Hey World!"));
</script>
</apex:page>
花了一个星期的时间来研究它。任何帮助将不胜感激!
Visualforce 的 PDF 渲染使用(或至少用于)Java 名为 Flying Saucer 的库。 没有这样的浏览器,没有 Java脚本引擎 运行 您的代码。
您必须以不同的方式生成条形码。寻找 Java 能够预渲染您的图像并将其保存为 PNG 附件的脚本库,然后在 VF 中使用它。或者,如果它是一个相对简单的条形码,您可以在 Apex 中进行计算并以纯 html 显示为一系列黑白 <span>
s(应该很容易找到 [=22= 的示例实现] 或 .NET 的语法与 Apex 差别不大...甚至可以使用 JavaScript 的源代码作为灵感)。或者也许调用另一个可以生成图像的服务器,也许将您自己的 https://github.com/zxing/zxing 实例放在某个地方(Heroku?)并为图像调用它。
如果你可以在没有真正的 Visualforce renderAs="pdf" 的情况下生活(忘记在电子邮件模板、附件、任何类型的服务器代码中使用它,例如在 SF 中生成文件并上传到某处)那么它可以在Java脚本中。指导用户如何将页面打印为 PDF,或者您可能会遇到 https://github.com/MrRio/jsPDF