Увеличить размер изображение в 2 раза
У меня не получается, адекватно увеличить размер картинки. Пробую технологию WebAssembly. Есть байтовый массив исходного изображения, например [1,2,3,4], и в новый участок памяти я записываю байты [1,1,2,2,3,3,4,4], по идеи изображение после того как мы новый массив новых байтов присвоим Canvas'у, то изображение будет вдвое больше исходного.
Вот метод копирование байтов:
export function ZoomTest(width: i32, height:i32): void {
let offset = width * height * BYTE_PER_IMAGE;
for(let i = 0;i < offset - 2; i++){
for(let j = i; j < i + 2; j++){
store<u32>(offset + j * BYTE_PER_IMAGE, load<u32>( i* BYTE_PER_IMAGE));// сохраняем байты в память [1,2,3,4(исх. изображение), 1,1,2,2,3,3,4,4(новый участок памяти)],
//store первый параметр это индекс в памяти, второй параметр индекс байта в памяти
}
}
}
Если кто делал, подобное или знает как это сделать, буду благодарен за помощь.
На данный момент вот ссылка на сайт где это пытаюсь сделать https://assemblyweb.herokuapp.com/
Там нужно загрузить картинки и нажать кнопку Image ZOOM 2x