Full featured image editor using HTML5 Canvas. It's easy to use and provides powerful filters.
π© Table of Contents
Collect statistics on the use of open source
TOAST UI ImageEditor applies Google Analytics (GA) to collect statistics on the use of open source, in order to identify how widely TOAST UI ImageEditor is used throughout the world. It also serves as important index to determine the future course of projects. location.hostname (e.g. > βui.toast.com") is to be collected and the sole purpose is nothing but to measure statistics on the usage. To disable GA, use the following usageStatistics
option when creating the instance.
const options = {
//...
usageStatistics: false,
};
const imageEditor = new tui.ImageEditor('#tui-image-editor-container', options);
Or, include tui-code-snippet
(v1.4.0 or later) and then immediately write the options as follows:
tui.usageStatistics = false;
πΎ Install
The TOAST UI products can be installed by using the package manager or downloading the source directly. However, we highly recommend using the package manager.
Via Package Manager
You can find TOAST UI products via npm and bower package managers. Install by using the commands provided by each package manager. When using npm, be sure Node.js is installed in the environment.
npm
1. ImageEditor installation
$ npm install --save tui-image-editor # Latest version
$ npm install --save tui-image-editor@<version> # Specific version
2. If the installation of the fabric.js
dependency module does not go smoothly
To solve the problem, you need to refer to Some Steps to solve the problem.
bower
$ bower install tui-image-editor # Latest version
$ bower install tui-image-editor#<tag> # Specific version
Via Contents Delivery Network (CDN)
TOAST UI products are available over the CDN powered by NHN Cloud.
You can use the CDN as below.
<link
rel="stylesheet"
href="https://uicdn.toast.com/tui-image-editor/latest/tui-image-editor.css"
/>
<script src="https://uicdn.toast.com/tui-image-editor/latest/tui-image-editor.js"></script>
If you want to use a specific version, use the tag name instead of latest
in the URL.
The CDN directory has the following structure.
tui-image-editor/
ββ latest/
β ββ tui-image-editor.js
β ββ tui-image-editor.min.js
β ββ tui-image-editor.css
ββ v3.1.0/
β ββ ...
Download Source Files
π¨ Usage
HTML
Add the container element where TOAST UI ImageEditor will be created.
<body>
...
<div id="tui-image-editor"></div>
...
</body>
javascript
Add dependencies & initialize ImageEditor class with given element to make an image editor.
const ImageEditor = require('tui-image-editor');
const FileSaver = require('file-saver'); //to download edited image to local. Use after npm install file-saver
const blackTheme = require('./js/theme/black-theme.js');
const locale_ru_RU = {
// override default English locale to your custom
Crop: 'ΠΠ±Π·ΡΠ΅Π·Π°ΡΡ',
'Delete-all': 'Π£Π΄Π°Π»ΠΈΡΡ Π²ΡΡ',
// etc...
};
const instance = new ImageEditor(document.querySelector('#tui-image-editor'), {
includeUI: {
loadImage: {
path: 'img/sampleImage.jpg',
name: 'SampleImage',
},
locale: locale_ru_RU,
theme: blackTheme, // or whiteTheme
initMenu: 'filter',
menuBarPosition: 'bottom',
},
cssMaxWidth: 700,
cssMaxHeight: 500,
selectionStyle: {
cornerSize: 20,
rotatingPointOffset: 70,
},
});
Or
const ImageEditor = require('tui-image-editor');
const instance = new ImageEditor(document.querySelector('#tui-image-editor'), {
cssMaxWidth: 700,
cssMaxHeight: 500,
selectionStyle: {
cornerSize: 20,
rotatingPointOffset: 70,
},
});
Menu svg icon setting
There are two ways to set icons.
- Use default svg built into imageEditor without setting svg file path (Features added since version v3.9.0).
- There is a way to use the actual physical svg file and set the file location manually.
Can find more details in this document.
TypeScript
If you use TypeScript, You must import module = require('module')
on importing.
export =
and import = require()
import ImageEditor = require('tui-image-editor');
const FileSaver = require('file-saver'); //to download edited image to local. Use after npm install file-saver
const instance = new ImageEditor(document.querySelector('#tui-image-editor'), {
cssMaxWidth: 700,
cssMaxHeight: 500,
selectionStyle: {
cornerSize: 20,
rotatingPointOffset: 70,
},
});
See details for additional information.