Skip to content

Commit a6ed9ca

Browse files
committed
compress images
1 parent e328ac6 commit a6ed9ca

File tree

4 files changed

+40
-2
lines changed

4 files changed

+40
-2
lines changed

ghcjs/miso-functora/js/main.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import "./jsaddle-compat";
2+
import * as Compressor from "compressorjs";
23
import { defineCustomElements } from "@ionic/pwa-elements/loader";
34
import { Filesystem, Directory } from "@capacitor/filesystem";
45
import { WebviewPrint } from "capacitor-webview-print";
@@ -33,7 +34,17 @@ export async function selectClipboard() {
3334
const { value } = await Clipboard.read();
3435
try {
3536
const { buffer: u8a, typeFull: mime } = dataUriToBuffer(value);
36-
const blob = new Blob([u8a], { type: mime });
37+
let blob = new Blob([u8a], { type: mime });
38+
if (mime.startsWith("image")) {
39+
blob = await new Promise((resolve, reject) => {
40+
new Compressor(blob, {
41+
quality: 0.1,
42+
mimeType: "image/jpeg",
43+
success: resolve,
44+
error: reject,
45+
});
46+
});
47+
}
3748
return URL.createObjectURL(blob);
3849
} catch (e) {
3950
return value;

ghcjs/miso-functora/js/main.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ghcjs/miso-functora/package-lock.json

Lines changed: 26 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ghcjs/miso-functora/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
"@capacitor/toast": "^6.0.2",
2020
"@ionic/pwa-elements": "^3.3.0",
2121
"capacitor-webview-print": "^6.0.1",
22+
"compressorjs": "^1.2.1",
2223
"data-uri-to-buffer": "^6.0.2",
2324
"file-saver": "^2.0.5",
2425
"html5-qrcode": "^2.3.8"

0 commit comments

Comments
 (0)