Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/viliusle/Hermite-resize

Canvas image resize/resample using Hermite filter with JavaScript.
https://github.com/viliusle/Hermite-resize

canvas resample resize

Last synced: about 1 month ago
JSON representation

Canvas image resize/resample using Hermite filter with JavaScript.

Awesome Lists containing this project

README

        

# Hermite-resize
Fast canvas image resize/resample using Hermite filter with JavaScript.
Supports transparency, gives good quality.
Library was created for canvas manipulation, but it also can resize HTML images.

Uses web workers with transferable objects. Also single core version is supported.

**Install** with NPM:
```
npm install https://github.com/viliusle/Hermite-resize.git
```

**Usage** with NPM:
```
import Hermite_class from 'hermite-resize';
var HERMITE = new Hermite_class();
```

**Usage**:
```javascript

var HERMITE = new Hermite_class();
//default resize
HERMITE.resample(canvas, width, height);
//more options
HERMITE.resample(canvas, width, height, true, finish_handler); //true=resize canvas
//single core
HERMITE.resample_single(canvas, width, height);

//resize image to 300x100
HERMITE.resize_image('image_id', 300, 100);
//resize image to 50%
HERMITE.resize_image('image_id', null, null, 50);

```

- demo file included: ```test/demo.html```
- single core demo - http://jsfiddle.net/9g9Nv/460/

### Version 1.0
Single core version - stable. Multi core version - experimental.
- demo: http://viliusle.github.io/miniPaint/

### Build instructions

- git clone https://github.com/viliusle/Hermite-resize.git
- cd Hermite-resize
- npm install
- edit files...
- npm run build (build for production)