我正在努力解决这种情况,我在JavaScript变量中有一些HTML标记。
我想要的是,将该变量的值转换为图像并获取base64值:
var print_markup = '';
print_markup += '<h2 style="text-align:center">' + $scope.config.business_name + '</h2>';
print_markup += '<p style="text-align:center">' + $scope.config.business_address + '</p>';
我尝试了这个html2canvas但它需要一个dom元素作为其参数而不是HTML字符串,或者我没有正确使用它。
html2canvas(print_markup, {
onrendered: function(canvas) {
var dataURL = canvas.toDataURL();
var base64String = dataURL.split(',')[1];
}
})
但我明白了:
html2canvas.js:592 Uncaught(in promise)渲染网址时必须使用代理
答案 0 :(得分:0)
请参阅链接:here
<?php
use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $model backend\models\Student */
$this->title = 'Student';
?>
<div class="title">
<?= Html::encode($this->title) ?>
</div>
<?=
$this->render('_form', [
'model' => $model,
])
?>
答案 1 :(得分:0)
正如@Kaiido建议的那样,html2canvas
的第一个参数是附加到原始文档的元素,
有关更多信息,请参阅此html2canvas