Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

dear-image

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dear-image

A collection of utility functions for the image examinations and transformations.

  • 0.0.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
30
decreased by-58.9%
Maintainers
1
Weekly downloads
 
Created
Source

DearImage

A collection of utility functions for the image examinations and transformations.

setup

npm

npm i paperimage
npm i canvas # to support node

es6

import DearImage from 'dear-image';

node

let DearImage = require('dear-image');

browser

<script src="https://unpkg.com/dear-image"></script>

The module is globally available as DearImage.

members

constructor

new DearImage(context)

argumentdescription
contextThe 2D rendering context.
let canvas = document.getElementById('my-canvas');
let context = canvas.getContext('2d');
let image = new DearImage(context);
console.log(image.canvas === canvas); // => true

static methods

.from(value)

Creates a DearImage instance from the given value.

argumentdescription
valueThe value to create from. Supported value types are HTMLCanvasElement, HTMLImageElement, OffscreenCanvas, Canvas from canvas and DearImage.

Returns the created DearImage instance.

let canvas = document.getElementById('my-canvas');
let image = DearImage.from(canvas);
console.log(image.canvas === canvas); // => false
let otherDuck = DearImage.from(image);
console.log(otherDuck.canvas === image.canvas); // => false

.fromExcept(value)

Creates a DearImage instance from the given value if it's not one.

argumentdescription
valueThe value to create from.

Returns the same or created DearImage instance.

let canvas = document.getElementById('my-canvas');
let image = DearImage.fromExcept(canvas);
console.log(image.canvas === canvas); // => false
let otherDuck = DearImage.fromExcept(image);
console.log(otherDuck === image); // => true

.loadFrom(value)

Loads a DearImage instance from the given value.

argumentdescription
valueThe value to load from. Supported value types are String, URL, Blob, HTMLImageElement, Buffer and everything the function .from supports.

Returns a promise that resolves to the created DearImage instance.

let image = await DearImage.loadFrom('/path/to/image.jpg');
document.body.appendChild(image.canvas);

.loadFromExcept(value)

Loads a DearImage instance from the given value if it's not one.

argumentdescription
valueThe value to load from.

Returns a promise that resolves to the same or created DearImage instance.


.blank(sizeX, sizeY)

Creates a DearImage instance with a transparent image.

argumentdescription
sizeThe size of the image.

Returns the created DearImage instance.

overloading

  • () => (0, 0)

properties

.canvas

The canvas.


.context

The 2D rendering context.


.sizeX

The size of the image along the x-axis.

let image = DearImage.blank(300, 150);
console.log(image.sizeX); // => 300

.sizeY

The size of the image along the y-axis.

let image = DearImage.blank(300, 150);
console.log(image.sizeY); // => 150

.size

The size of the image.

let image = DearImage.blank(300, 150);
console.log(image.size); // => {x: 300, y: 150}

.minSize

The minimum size of the image.


.maxSize

The maximum size of the image.

methods

.resize(sizeX, sizeY)

Changes the size of the image.

argumentdescription
sizeThe new size of the image.

Returns the created DearImage instance.

let image = DearImage.from(source).resize(300, 150);

.resizeX(sizeX, proportionally = false)

Changes the size of the image along the x-axis.

argumentdescription
sizeXThe new size of the image along the x-axis.
proportionallyIf true, keeps the aspect ratio of the image.

Returns the created DearImage instance.


.resizeY(sizeY, proportionally = false)

Changes the size of the image along the y-axis.

argumentdescription
sizeYThe new size of the image along the y-axis.
proportionallyIf true, keeps the aspect ratio of the image.

Returns the created DearImage instance.


.crop(originX, originY, sizeX, sizeY)

Selects an area from the image.

argumentdescription
originThe origin of the area. A negative number indicates the origin from the end of the image.
sizeThe size of the area. A negative number reverses the direction.

Returns the created DearImage instance.

let image = DearImage.from(source).crop(100, -200, -50, 150);

.reframe(sizeX, sizeY, alignmentX, alignmentY)

Aligns the image inside an area.

argumentdescription
sizeThe size of the area.
alignmentThe alignment of the image. Possible values are 'start', 'center' and 'end'.

Returns the created DearImage instance.

overloading

  • (sizeX: number, sizeY: number) => (sizeX, sizeY, 'center', 'center')
let image = DearImage.from(source).reframe(300, 150, 'start', 'end');

.scale(scalingX, scalingY)

Changes the size of the image factorially.

argumentdescription
scalingThe scaling factor.

Returns the created DearImage instance.

overloading

  • (scaling: number) => (scaling, scaling)
let image = DearImage.from(source).scale(3/2);

.flipX()

Flips the image along the x-axis.

Returns the created DearImage instance.


.flipY()

Flips the image along the y-axis.

Returns the created DearImage instance.


.toDataURL(format, quality)

Creates a data URL string representing the content.

Returns the created data URL string.


.toImageData()

Creates an ImageData object representing the content.

Returns the created ImageData object.


.toImage(format, quality)

browser only

Creates an Image instance representing the content.

Returns the created Image instance.

let image = DearImage.from(source);
let image = image.toImage('image/jpeg', 0.75);
image.style.border = '1px solid BlueViolet';
document.body.appendChild(image);

.toBlob(format, quality)

browser only

Creates a Blob instance representing the content.

Returns the created Blob instance.


.toBuffer(format, quality)

node only

Creates a Buffer instance representing the content.

Returns the created Buffer instance.

Keywords

FAQs

Package last updated on 29 Jul 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc