Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jsxc/jsxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/ImageHelper.ts')
-rw-r--r--src/util/ImageHelper.ts24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/util/ImageHelper.ts b/src/util/ImageHelper.ts
index 12249914..e428149c 100644
--- a/src/util/ImageHelper.ts
+++ b/src/util/ImageHelper.ts
@@ -42,4 +42,28 @@ export default class ImageHelper {
img.src = data;
});
}
+
+ public static convertToPNG(data: string): Promise<string> {
+ const canvas = <HTMLCanvasElement>$('<canvas>').get(0);
+ const img = new Image();
+
+ return new Promise((resolve, reject) => {
+ img.onload = () => {
+ canvas.width = img.width;
+ canvas.height = img.height;
+
+ const ctx = canvas.getContext('2d');
+
+ ctx.drawImage(img, 0, 0, img.width, img.width, 0, 0, img.width, img.width);
+
+ resolve(canvas.toDataURL());
+ };
+
+ img.onerror = () => {
+ reject(new Error('Could not load image'));
+ };
+
+ img.src = data;
+ });
+ }
}