我正在用 oTree 在 Python 中编写一个实验,其中涉及在矩阵中查找一些字符的真正努力任务(每个页面中的矩阵都不同)。
为了避免受试者作弊,我想使用矩阵的图像而不是矩阵本身(这样受试者就不能使用搜索功能)。我在 oTree 中生成字符数组,并使用 vars_for_template 将其传递给 html。
我遇到了如何创建矩阵图像的问题。我不需要将矩阵存储在数据集中,所以我想将矩阵转换为html页面上的图像。但是我无法在 html 页面上隐藏原始矩阵,如果这样做,将没有矩阵的图像。
我使用类似于Convert Text to Images with JavaScript的方法,下面是我的代码:
<div>
<img id="textScreenshot" src="" />
</div>
<div id="random_matrix_html">
{{ random_matrix_html }}
</div>
<br>
<style>
table, th, td {
border: 1px solid black;
}
table {
width: 50%;
}
td {
text-align: center;
}
th {
display: none;
}
</style>
<!-- Include the HTMl2Canvas library -->
<script src="//cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.min.js"></script>
<script>
html2canvas(document.getElementById("random_matrix_html"), {
onrendered: function (canvas) {
var screenshot = canvas.toDataURL("image/png");
document.getElementById("textScreenshot").setAttribute("src", screenshot);
},
});
</script>
这里,random_matrix_html是矩阵的html代码,我在html页面上设置样式。
有没有解决这个问题的好方法?也就是说,我只想在 html 页面上显示矩阵的图像而不是可搜索的矩阵。我对编码很陌生,所以如果这看起来是一个非常简单的问题,请提前道歉!
非常感谢!