这个问题有点长,所以我会尽量清楚。
在我共同开发的一个网站上,我创建了一个绘图应用程序,它将有关在<canvas>
元素上绘制的线条的数据发送到服务器以创建图像并将其保存为多种尺寸,这很有效。有保存为 320x212 的标准保存,较小的版本保存为 240x176。但是,我网站上的一些用户使用相当陈旧的设备/浏览器来运行该应用程序。它还具有较小的视口,因此图像更小,因此服务器端我目前正在乘以坐标以在将图像保存为标准尺寸时进行补偿。但这具有显示图像的随机未填充部分的副作用,这些部分已填充在画布上。
(来源:socialcu.be)
(在较小设备视口的画布上,整个底部都是绿色的,而我乘以坐标来补偿的方法导致许多未填充的部分出现在放大的图像上)
所以我的第一个问题是,将图像制作为矢量图像,将其放大(同时仍然是矢量),然后将其保存为光栅图像可以解决该问题吗?
其次(如果第一个答案是肯定的),那么在 PHP 中执行此操作的最佳方法是什么?我听说过 Cairo,但是关于它的信息(即 PHP 包的教程)相当缺乏。最理想的是,有没有办法在 Imagick 中做到这一点,或者有关于如何使用 Cairo 的教程?