如何裁剪转换为 Uint8Array 的图像?
How to crop an image converted to Uint8Array?
我有一个转换为 base64 字符串的图像。我通过代码将 base64 字符串转换为 Uint8Array:
const BASE64_MARKER = ';base64,';
function convertDataURIToBinary(dataURI) {
const base64Index = dataURI.indexOf(BASE64_MARKER) + BASE64_MARKER.length;
const base64 = dataURI.substring(base64Index);
const raw = window.atob(base64);
const rawLength = raw.length;
const array = new Uint8Array(new ArrayBuffer(rawLength));
for (let i = 0; i < rawLength; i++) {
array[i] = raw.charCodeAt(i);
}
return array;
}
我不知道如何裁剪它。你能帮我实现算法吗?
谢谢 mpm 和 YAHsaves。
我决定使用 canvas,它工作起来简单快捷。
这里是link到npm package。我希望,它可以帮助其他人使用 canvas.
在浏览器中裁剪和调整图像大小
我有一个转换为 base64 字符串的图像。我通过代码将 base64 字符串转换为 Uint8Array:
const BASE64_MARKER = ';base64,';
function convertDataURIToBinary(dataURI) {
const base64Index = dataURI.indexOf(BASE64_MARKER) + BASE64_MARKER.length;
const base64 = dataURI.substring(base64Index);
const raw = window.atob(base64);
const rawLength = raw.length;
const array = new Uint8Array(new ArrayBuffer(rawLength));
for (let i = 0; i < rawLength; i++) {
array[i] = raw.charCodeAt(i);
}
return array;
}
我不知道如何裁剪它。你能帮我实现算法吗?
谢谢 mpm 和 YAHsaves。 我决定使用 canvas,它工作起来简单快捷。 这里是link到npm package。我希望,它可以帮助其他人使用 canvas.
在浏览器中裁剪和调整图像大小