image-js 1.6.0 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/image-js.esm.js +25 -14
- package/dist/image-js.esm.js.map +1 -1
- package/dist/image-js.esm.min.js +2 -2
- package/dist/image-js.esm.min.js.map +1 -1
- package/dist/image-js.umd.js +25 -14
- package/dist/image-js.umd.js.map +1 -1
- package/dist/image-js.umd.min.js +2 -2
- package/dist/image-js.umd.min.js.map +1 -1
- package/lib/load/decodePng.d.ts.map +1 -1
- package/lib/load/decodePng.js +26 -15
- package/lib/load/decodePng.js.map +1 -1
- package/package.json +8 -5
- package/src/load/decodePng.ts +25 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decodePng.d.ts","sourceRoot":"","sources":["../../src/load/decodePng.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"decodePng.d.ts","sourceRoot":"","sources":["../../src/load/decodePng.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,CAqCnD"}
|
package/lib/load/decodePng.js
CHANGED
|
@@ -35,21 +35,7 @@ export function decodePng(buffer) {
|
|
|
35
35
|
default:
|
|
36
36
|
throw new RangeError(`invalid number of channels: ${png.channels}`);
|
|
37
37
|
}
|
|
38
|
-
|
|
39
|
-
if (png.resolution) {
|
|
40
|
-
resolution =
|
|
41
|
-
png.resolution.unit === 1
|
|
42
|
-
? /*If the resolution unit is meters*/ {
|
|
43
|
-
x: png.resolution.x,
|
|
44
|
-
y: png.resolution.y,
|
|
45
|
-
unit: 'meter',
|
|
46
|
-
}
|
|
47
|
-
: /*If resolution unit is unknown */ {
|
|
48
|
-
x: png.resolution.x,
|
|
49
|
-
y: png.resolution.y,
|
|
50
|
-
unit: 'unknown',
|
|
51
|
-
};
|
|
52
|
-
}
|
|
38
|
+
const resolution = getResolution(png);
|
|
53
39
|
return new Image(png.width, png.height, {
|
|
54
40
|
colorModel,
|
|
55
41
|
bitDepth,
|
|
@@ -83,9 +69,11 @@ function loadPalettePng(png) {
|
|
|
83
69
|
data[dataIndex++] = paletteChannel;
|
|
84
70
|
}
|
|
85
71
|
}
|
|
72
|
+
const resolution = getResolution(png);
|
|
86
73
|
return new Image(png.width, png.height, {
|
|
87
74
|
data,
|
|
88
75
|
colorModel: png.palette[0].length === 4 ? 'RGBA' : 'RGB',
|
|
76
|
+
resolution,
|
|
89
77
|
});
|
|
90
78
|
}
|
|
91
79
|
function decodeBinary(png) {
|
|
@@ -105,4 +93,27 @@ function decodeBinary(png) {
|
|
|
105
93
|
}
|
|
106
94
|
return result;
|
|
107
95
|
}
|
|
96
|
+
/**
|
|
97
|
+
* Gets image's resolution from its parsed data.
|
|
98
|
+
* @param png - Parsed .png image.
|
|
99
|
+
* @returns Object with resolution data if exists.
|
|
100
|
+
*/
|
|
101
|
+
function getResolution(png) {
|
|
102
|
+
if (png.resolution) {
|
|
103
|
+
return png.resolution.unit === 1
|
|
104
|
+
? /*If the resolution unit is meters*/ {
|
|
105
|
+
x: png.resolution.x,
|
|
106
|
+
y: png.resolution.y,
|
|
107
|
+
unit: 'meter',
|
|
108
|
+
}
|
|
109
|
+
: /*If resolution unit is unknown */ {
|
|
110
|
+
x: png.resolution.x,
|
|
111
|
+
y: png.resolution.y,
|
|
112
|
+
unit: 'unknown',
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
return undefined;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
108
119
|
//# sourceMappingURL=decodePng.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decodePng.js","sourceRoot":"","sources":["../../src/load/decodePng.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAIvD;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,MAAkB;IAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAE3B,IAAI,UAA2B,CAAC;IAChC,MAAM,QAAQ,GAAa,GAAG,CAAC,KAAiB,CAAC;IACjD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE;YACtC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC;YACvB,UAAU,EAAE,MAAM;SACnB,CAAC,CAAC;IACL,CAAC;IACD,QAAQ,GAAG,CAAC,QAAQ,EAAE,CAAC;QACrB,KAAK,CAAC;YACJ,UAAU,GAAG,MAAM,CAAC;YACpB,MAAM;QACR,KAAK,CAAC;YACJ,UAAU,GAAG,OAAO,CAAC;YACrB,MAAM;QACR,KAAK,CAAC;YACJ,UAAU,GAAG,KAAK,CAAC;YACnB,MAAM;QACR,KAAK,CAAC;YACJ,UAAU,GAAG,MAAM,CAAC;YACpB,MAAM;QACR;YACE,MAAM,IAAI,UAAU,CAAC,+BAA+B,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxE,CAAC;IACD,
|
|
1
|
+
{"version":3,"file":"decodePng.js","sourceRoot":"","sources":["../../src/load/decodePng.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "image-js",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Image processing and manipulation in JavaScript",
|
|
6
6
|
"author": "Michaël Zasso",
|
|
@@ -63,16 +63,19 @@
|
|
|
63
63
|
"optionalDependencies": {
|
|
64
64
|
"skia-canvas": "^3.0.8"
|
|
65
65
|
},
|
|
66
|
+
"overrides": {
|
|
67
|
+
"yargs": "^18.0.0"
|
|
68
|
+
},
|
|
66
69
|
"lavamoat": {
|
|
67
70
|
"allowScripts": {
|
|
68
71
|
"@lavamoat/preinstall-always-fail": false,
|
|
69
|
-
"
|
|
70
|
-
"
|
|
72
|
+
"vite>esbuild": false,
|
|
73
|
+
"skia-canvas#3.0.8": true
|
|
71
74
|
}
|
|
72
75
|
},
|
|
73
76
|
"devDependencies": {
|
|
74
|
-
"@lavamoat/allow-scripts": "^
|
|
75
|
-
"@lavamoat/preinstall-always-fail": "^
|
|
77
|
+
"@lavamoat/allow-scripts": "^5.0.2",
|
|
78
|
+
"@lavamoat/preinstall-always-fail": "^3.0.0",
|
|
76
79
|
"@microsoft/api-extractor": "^7.55.2",
|
|
77
80
|
"@tailwindcss/forms": "^0.5.11",
|
|
78
81
|
"@tailwindcss/vite": "^4.1.18",
|
package/src/load/decodePng.ts
CHANGED
|
@@ -43,22 +43,7 @@ export function decodePng(buffer: Uint8Array): Image {
|
|
|
43
43
|
default:
|
|
44
44
|
throw new RangeError(`invalid number of channels: ${png.channels}`);
|
|
45
45
|
}
|
|
46
|
-
|
|
47
|
-
if (png.resolution) {
|
|
48
|
-
resolution =
|
|
49
|
-
png.resolution.unit === 1
|
|
50
|
-
? /*If the resolution unit is meters*/ {
|
|
51
|
-
x: png.resolution.x,
|
|
52
|
-
y: png.resolution.y,
|
|
53
|
-
unit: 'meter' as const,
|
|
54
|
-
}
|
|
55
|
-
: /*If resolution unit is unknown */ {
|
|
56
|
-
x: png.resolution.x,
|
|
57
|
-
y: png.resolution.y,
|
|
58
|
-
unit: 'unknown' as const,
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
|
|
46
|
+
const resolution = getResolution(png);
|
|
62
47
|
return new Image(png.width, png.height, {
|
|
63
48
|
colorModel,
|
|
64
49
|
bitDepth,
|
|
@@ -94,10 +79,11 @@ function loadPalettePng(png: DecodedPng): Image {
|
|
|
94
79
|
data[dataIndex++] = paletteChannel;
|
|
95
80
|
}
|
|
96
81
|
}
|
|
97
|
-
|
|
82
|
+
const resolution = getResolution(png);
|
|
98
83
|
return new Image(png.width, png.height, {
|
|
99
84
|
data,
|
|
100
85
|
colorModel: png.palette[0].length === 4 ? 'RGBA' : 'RGB',
|
|
86
|
+
resolution,
|
|
101
87
|
});
|
|
102
88
|
}
|
|
103
89
|
|
|
@@ -126,3 +112,25 @@ function decodeBinary(png: DecodedPng): Uint8Array {
|
|
|
126
112
|
}
|
|
127
113
|
return result;
|
|
128
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Gets image's resolution from its parsed data.
|
|
117
|
+
* @param png - Parsed .png image.
|
|
118
|
+
* @returns Object with resolution data if exists.
|
|
119
|
+
*/
|
|
120
|
+
function getResolution(png: DecodedPng): Resolution | undefined {
|
|
121
|
+
if (png.resolution) {
|
|
122
|
+
return png.resolution.unit === 1
|
|
123
|
+
? /*If the resolution unit is meters*/ {
|
|
124
|
+
x: png.resolution.x,
|
|
125
|
+
y: png.resolution.y,
|
|
126
|
+
unit: 'meter' as const,
|
|
127
|
+
}
|
|
128
|
+
: /*If resolution unit is unknown */ {
|
|
129
|
+
x: png.resolution.x,
|
|
130
|
+
y: png.resolution.y,
|
|
131
|
+
unit: 'unknown' as const,
|
|
132
|
+
};
|
|
133
|
+
} else {
|
|
134
|
+
return undefined;
|
|
135
|
+
}
|
|
136
|
+
}
|