如何以 Camunda Embedded 形式显示 PDF
How to display PDF in Camunda Embedded form
我看到很多关于如何在嵌入式表单(用户任务)中显示 PDF 文件的讨论,但意识到 camunda 不支持这一点。有什么解决办法吗?
我试过使用 IFrame、Object、embed 和直接链接到变量都不起作用?
我的解决方案是获取变量并转换为 blob,如下所示:
HTML
<embed class="col-sm-12" style="height:100vh;width:100%" type="application/pdf" id="pdf-frame">
JS
<script cam-script type="text/javascript">
camForm.on('form-loaded', function () {
fetch("http://localhost:8181/camunda/api/engine/engine/default/task/" + camForm.taskId + "/variables/ACORD_FORM/data").then(function (response) {
return response.blob();
}).then(function (myBlob) {
var objectURL = URL.createObjectURL(myBlob);
document.querySelector('#pdf-frame').src = '';
document.querySelector('#pdf-frame').src = objectURL;
objectURL = URL.revokeObjectURL(myBlob);
});
});
</script>
我看到很多关于如何在嵌入式表单(用户任务)中显示 PDF 文件的讨论,但意识到 camunda 不支持这一点。有什么解决办法吗?
我试过使用 IFrame、Object、embed 和直接链接到变量都不起作用?
我的解决方案是获取变量并转换为 blob,如下所示:
HTML
<embed class="col-sm-12" style="height:100vh;width:100%" type="application/pdf" id="pdf-frame">
JS
<script cam-script type="text/javascript">
camForm.on('form-loaded', function () {
fetch("http://localhost:8181/camunda/api/engine/engine/default/task/" + camForm.taskId + "/variables/ACORD_FORM/data").then(function (response) {
return response.blob();
}).then(function (myBlob) {
var objectURL = URL.createObjectURL(myBlob);
document.querySelector('#pdf-frame').src = '';
document.querySelector('#pdf-frame').src = objectURL;
objectURL = URL.revokeObjectURL(myBlob);
});
});
</script>