New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

image-wasm-for-war3

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

image-wasm-for-war3 - npm Package Compare versions

Comparing version

to
2.0.0-alpha.1

src/index.d.ts

8

package.json
{
"name": "image-wasm-for-war3",
"version": "1.0.5",
"version": "2.0.0-alpha.1",
"description": "image process by wasm",
"main": "index.js",
"main": "src/index.js",
"scripts": {

@@ -24,2 +24,4 @@ "tsc": "tsc",

"src/api.d.ts",
"src/index.js",
"src/index.d.ts",
"src/blp.js",

@@ -29,4 +31,2 @@ "src/blp.d.ts",

"src/struct.d.ts",
"index.js",
"index.d.ts",
"package.json",

@@ -33,0 +33,0 @@ "README.md"

@@ -19,3 +19,3 @@ # 简介

const fs = require("fs");
const { ImageType, encode } = require("../index");
const { ImageType, encode } = require("image-wasm-for-war3");

@@ -25,6 +25,15 @@ const data = new Uint8Array(

);
const image = {
width: 100,
height: 100,
buffer: data.buffer,
}
encode(data.buffer, 100, 100, ImageType.Tga).then((tgaContent) => {
encode(image, ImageType.Tga).then((tgaContent) => {
fs.writeFileSync("test.tga", Buffer.from(tgaContent));
});
encode(image, ImageType.Blp1).then((blp1Content) => {
fs.writeFileSync("test.blp", Buffer.from(blp1Content));
});
```

@@ -38,7 +47,9 @@

const data = new Uint8Array(
new Array(100 * 100 * 4).fill(0).map((_, i) => i % 255)
);
decode(fs.readFileSync('test.tga'), ImageType.Tga).then((rgbaData) => {
console.info(rgbaData.width);
console.info(rgbaData.height);
console.info(rgbaData.buffer);
});
encode(fs.readFileSync('test.tga').buffer, ImageType.Tga).then((rgbaData) => {
decode(fs.readFileSync('test.blp'), ImageType.Blp1).then((rgbaData) => {
console.info(rgbaData.width);

@@ -50,2 +61,15 @@ console.info(rgbaData.height);

## resize
```js
const fs = require("fs");
const { ImageType, encode, decode, resize } = require("image-wasm-for-war3");
decode(fs.readFileSync('big.tga'), ImageType.Tga)
.then((rgbaData) => resize(rgbaData, 50, 50))
.then(resizeImage => encode(resizeImage, ImageType.Tga))
.then((tgaContent) => {
fs.writeFileSync("small.tga", Buffer.from(tgaContent));
});
```
## blp1的处理

@@ -59,3 +83,3 @@

// 生成一个 mimap是一个 质量是80 的blp1文件
const blpContent = await Blp1File.encode(resizeImage).encode(1, 80);
const blpContent = await Blp1File.encode(resizeImage).encode(80, 1);
// 保存文件

@@ -65,5 +89,5 @@ fs.writeFileSync('some blp path', Buffer.from(blpContent));

// 获取blp的第一张mimap数据
const blpImageData = await Blp1File.decode(fs.readFileSync('some blp path').buffer).getMimapData(0);
const blpImageData = await Blp1File.decode(fs.readFileSync('some blp path')).getMimapData(0);
// 编码成png
const pngContent = await encode(blpImageData.buffer, blpImageData.width, blpImageData.height, ImageType.Png);
const pngContent = await encode(blpImageData, ImageType.Png);
// 保存成png

@@ -70,0 +94,0 @@ fs.writeFileSync('some png path', Buffer.from(pngContent));

@@ -1,2 +0,2 @@

declare function decodeJpeg(buffer: ArrayBufferLike, callback: (err: any, decoded: {
declare function decodeJpeg(buffer: ArrayBuffer, callback: (err: any, decoded: {
width: number;

@@ -7,10 +7,20 @@ height: number;

declare function encodeJpeg(buffer: ArrayBufferLike,
option: { width: number, height: number, quality: number },
declare function encodeJpeg(buffer: ArrayBuffer,
option: { width: number, height: number, quality: number },
callback: (err: any, encoded: ArrayBuffer) => void);
declare function resizeImage(buffer: ArrayBufferLike,
option: { width: number, height: number, outWidth: number, outHeight: number },
callback: (err: any, encoded: ArrayBuffer) => void);
declare function encodeImage(buffer: ArrayBuffer,
option: { width: number, height: number, type: number },
callback: (err: any, encoded: ArrayBuffer) => void);
export { decodeJpeg, encodeJpeg, resizeImage };
declare function decodeImage(buffer: ArrayBuffer, type: number, callback: (err: any, decoded: {
width: number;
height: number;
buffer: ArrayBuffer;
}) => void);
declare function resizeImage(buffer: ArrayBuffer,
option: { width: number, height: number, outWidth: number, outHeight: number },
callback: (err: any, encoded: ArrayBuffer) => void);
export { decodeJpeg, encodeJpeg, encodeImage, decodeImage, resizeImage };

@@ -389,2 +389,3 @@ var Module = require('../dist/libimage');

Jpeg: 2,
Blp1: 3,
}

@@ -391,0 +392,0 @@

@@ -0,1 +1,2 @@

/// <reference types="node" />
import { StringField, UInt32Field } from './struct';

@@ -44,3 +45,3 @@ export declare class Blp1Reader {

view: DataView;
buffer: ArrayBufferLike;
buffer: ArrayBuffer;
headerValue: {

@@ -62,3 +63,3 @@ magic: string;

};
constructor(buffer: ArrayBufferLike);
constructor(buffer: ArrayBuffer | Buffer);
get width(): number;

@@ -150,3 +151,3 @@ get height(): number;

}>;
encode(mipsCount?: number, quality?: number): Promise<ArrayBuffer>;
encode(quality?: number, mipsCount?: number): Promise<ArrayBuffer>;
}

@@ -205,3 +206,3 @@ export declare class Blp1File {

};
static decode(buffer: ArrayBufferLike): Blp1Reader;
static decode(buffer: ArrayBuffer | Buffer): Blp1Reader;
static encode(image: {

@@ -208,0 +209,0 @@ width: number;

@@ -46,4 +46,4 @@ "use strict";

constructor(buffer) {
this.buffer = buffer;
const view = new DataView(buffer);
this.buffer = new Uint8Array(buffer);
const view = new DataView(this.buffer);
const header = this.blpHeader.read(view, 0);

@@ -224,3 +224,3 @@ this.view = view;

}
async encode(mipsCount = this.mipMapsCount - 1, quality = 90) {
async encode(quality = 90, mipsCount = this.mipMapsCount - 1) {
if (mipsCount > this.mipMapsCount) {

@@ -227,0 +227,0 @@ throw new Error('mipsCount is too large');