有没有办法在移动浏览器中显示使用mpdf内联生成的pdf?
我浏览了mpdf文档并尝试了目标选项mpdf->output('filename.pdf','I').除了IE之外,它在桌面上的每个浏览器上运行良好,并且在Firefox,Chrome等移动浏览器中不起作用.它开始自动下载,而不是在桌面和所有移动浏览器中在IE中显示内联.
无论如何要处理这个?
我发现当canvas元素位于react组件内时,canvas元素会在窗口调整大小时正确调整大小.与PaperJS一起使用时,它们也可以正确调整大小.但是,与PaperJS和ReactJS一起使用时,它们不会调整大小.
这是PaperJS和ReactJS之间的不兼容还是我错误地实例化PaperJS?我在包含canvas元素的react组件的componentDidMount函数中调用paper.setup(canvas).这是正确的地方吗?
我在下面列出了代码段.
注意:出于某种原因,"运行代码片段"功能会在ReactJS代码段上出现问题,因此我已经包含了JSFiddle链接,它们可以正常工作.
PaperJS Only [SUCCESS] - Canvas在窗口调整大小时调整大小 https://jsfiddle.net/eadlam/srmracev/
// Instantiate the paperScope with the canvas element
var myCanvas = document.getElementById('myCanvas');
paper.setup(myCanvas);
// Draw a circle in the center
var width = paper.view.size.width;
var height = paper.view.size.height;
var circle = new paper.Shape.Circle({
center: [width / 2, height / 2],
fillColor: 'grey',
radius: 10
});
// render
paper.view.draw();Run Code Online (Sandbox Code Playgroud)
canvas {
width: 100%;
height: 100%;
border: solid 1px red;
}Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/paper.js/0.9.22/paper-core.min.js"></script>
<canvas id="myCanvas" resize="true"></canvas>Run Code Online (Sandbox Code Playgroud)
ReactJS Only …
我将Chrome更新到最新的官方稳定版本并观察到一种奇怪的行为.
当浏览器在任何网页中最小化并恢复时,由于Chrome进行了某种优化,整个页面将再次呈现,无法呈现某些元素,如PDF,Canvas等.但同样的情况在Firefox,Opera中运行良好,IE11,Edge等浏览器.这是最新Chrome版本的问题吗?有没有解决这个问题?
测试用例: PDFJS-Viewer
重现步骤:
禁用硬件加速时,相同的情况正常.
我检查了一些不同的来源并查看了选项,但我似乎无法让我的图例留在一列中。例如,
在上图中,您会注意到图例的一部分被切掉并放置在一侧。这种情况发生在 <= 550 像素左右。我想强迫他们都留在一列。这是一个重新创建图表的 JSFiddle。我必须在 JS 文件的开头粘贴一些导入,因为我在小提琴选项中找不到它们。滚动到底部查看相关内容。任何帮助,将不胜感激。https://jsfiddle.net/lochrine/02yrpcxg/
相关JS如下:
//Line Graph Script
$('.line-graph').each(function () {
var legendlabels = $(this).data('legendlabels');
var datapoints = $(this).data('datapoints');
var suppliers = $(this).data('suppliers');
var datatype = $(this).data('datatype');
var yAxisString = "Amounts";
if (datatype == "units") { yAxisString = "Units Sold"; }
else if (datatype == "money") { yAxisString = "Amount (Dollars)"; }
console.log(datatype);
new Chart($(this).get(0).getContext('2d'), {
type: 'line',
data: {
labels: legendlabels,
datasets: $.map(datapoints, function (e, i) {
return {
backgroundColor: lineChartColors[i],
borderColor: lineChartColors[i],
fill: …Run Code Online (Sandbox Code Playgroud) 我使用这个库对音频文件进行 fft,之后我想用canvasjs可视化结果,但我不知道如何做到这一点。
我不确定应该使用什么 asx和yaxes。如果是频率和幅度,怎么办?最大x轴值应等于最大频率,如果是,则步长值是多少?(我计算了幅度和最大频率)。
如果有人能提供帮助,我将不胜感激。
编辑:我尝试重现这个,但我得到了以下结果。幅度并没有那么糟糕,但相位却很可怕。我认为这Math.atan2()将是问题所在,因为这是根据两个数字计算的,所以我尝试使用 Math.js 和数组,但得到了相同的结果。(链接中的预期结果)
for (var i = 0; i < 10 - 1/50; i+=1/50) {
realArray.push(Math.sin(2 * Math.PI * 15 * i) + Math.sin(2 * Math.PI * 20 * i));
}
//Phase
counter = 0;
for (var i = 0; i < realArray.length ; i++) {
rnd.push({x: i, y: (Math.atan2(imag[counter], realArray[counter]) * (180 / Math.PI))});
counter++;
}
//Magnitude
counter = 0 …Run Code Online (Sandbox Code Playgroud)