javascript - Canvas 到 Blob 质量

标签 javascript image html5-canvas

我们的应用程序获取 Canvas 内容,然后将其显示为最大高度为 150 像素的缩略图

Canvas 可以和显示器一样大,现在我们选择 2560x1440

如果转换为 webp,

是否有一个方程可以得到大致保持图像质量的质量数? ,也许

targetHeight = 150
originalHeight = 1440

quality = targetHeight / originalHeight 
// 150px / 1440px ~ 0.1 ?

canvas.toBlob((blob) => {

    const currentScreenshot = URL.createObjectURL(blob);

}, "image/webp", quality);

最佳答案

只能通过使用image/jpegimage/webp定义mime类型来设置质量值。

默认值分别为0.920.80。其他值将被忽略。

请引用此MDN link了解 HTMLCanvasElement.toBlob() 详细信息。

关于javascript - Canvas 到 Blob 质量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57881985/

相关文章:

javascript - 在 jQuery 中加载 YouTube API

javascript - 如何匹配引用风格的 Markdown 链接?

javascript - toBeCloseTo 等效于 Jest 中的递归相等性测试

image - Octave imread() 问题。我不知道为什么他们不同

javascript - jQuery 或 Javascript 客户端图像在上传前调整大小

javascript - 如何在 Canvas 中绘制读取 json?

javascript - 将 @Html.TextBox 更改为常规 html 代码

css - 无法将 div 层定位在 html slider 之上

javascript - 如何将嵌入式 YouTube 视频的帧(通过 iframe)写入 Canvas ?

javascript - 在小 Canvas 上看到大 Canvas 的一部分