You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
2.1 KiB
97 lines
2.1 KiB
import { Jimp, getTestDir } from '@jimp/test-utils'; |
|
import configure from '@jimp/custom'; |
|
|
|
import png from '../src'; |
|
|
|
const jimp = configure({ types: [png] }, Jimp); |
|
|
|
describe('PNG', () => { |
|
const imagesDir = getTestDir(__dirname) + '/images'; |
|
|
|
it('load PNG', async () => { |
|
const image = await jimp.read(imagesDir + '/dice.png'); |
|
|
|
image.getPixelColor(10, 10).should.be.equal(0x00000000); |
|
image.getPixelColor(160, 80).should.be.equal(0x1c1cd4ff); |
|
image.getPixelColor(400, 250).should.be.equal(0x7e0c0cda); |
|
}); |
|
|
|
it('export PNG', async () => { |
|
const jgd = await jimp.read({ |
|
width: 3, |
|
height: 3, |
|
data: [ |
|
0xff0000ff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0x0000ffff |
|
] |
|
}); |
|
const buffer = await jgd.getBufferAsync('image/png'); |
|
|
|
buffer.toString().should.match(/^.PNG\r\n/); |
|
}); |
|
|
|
it('should use png options', async () => { |
|
const jgd = await jimp.read({ |
|
width: 20, |
|
height: 20, |
|
data: [ |
|
0xff0000ff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0x0000ffff, |
|
0xff0000ff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0x0000ffff, |
|
0xff0000ff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0x0000ffff, |
|
0xff0000ff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0xff0080ff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0xff00ffff, |
|
0x8000ffff, |
|
0x0000ffff |
|
] |
|
}); |
|
|
|
const image = await jgd |
|
.deflateStrategy(0) |
|
.colorType(0) |
|
.getBufferAsync(Jimp.MIME_PNG); |
|
|
|
const expected = await jimp.read(imagesDir + '/options.png'); |
|
const expectedBuffer = await expected |
|
.deflateStrategy(0) |
|
.colorType(0) |
|
.getBufferAsync(Jimp.MIME_PNG); |
|
|
|
image.should.be.deepEqual(expectedBuffer); |
|
}); |
|
});
|
|
|