Kategori arşivi: Uncategorized

createImageBitmap function polyfill with ImageData

Edge browser does not contain createBitmapImage function.

if you want to use it with ImageData

you can use this function as polyfill with typescript


Window.prototype.createImageBitmap = function(imageData):Promise{

return new Promise((resolve,reject)=>{

let canvas=document.createElement('canvas');
canvas.width=imageData.width;
canvas.height=imageData.height;
let context= canvas.getContext("2d");
context.putImageData(imageData,0,0);
return resolve(canvas);

});

}

typescript extension methods

Typescript ile extension method nasıl yazılır.

let x: number = 5.5;

let rounded = Math.round(x);

böyle yazmaktan sıkıldıysanız.

let rounded = x.extRound(); 

şeklinde yazmak isterseniz.

 

extensions.ts adlı bir dosya açalım

 

 

interface Number {

    extRound: () => number;

}

Number.prototype.extRound = function(): number {

    return Math.round(this);

}

calculator.ts dosyasında söyle kullanalım

 

 

import "./extensions";

export class calculator {

 public   roundedVal(): number {
   let test = 5.5;
   return test.extRound();
 }

}

Tabiki burada extension methodlar yazarken dikkat edilmesi gereken, methodlara mutlaka unique bir isim vermeniz. aksi takdirde kullandığınız diğer library’lerden aynı isimli methodları ezme ihtimaliniz var. bu yüzden ben methodun başına ext koydum.