Changelog
1.5.7 (May 23, 2020)
- Improve container resizing (#636).
- Improve touch device detection (#614).
1.5.6 (Oct 4, 2019)
- Improve event type determining for iOS 13+ (#571).
1.5.5 (Aug 3, 2019)
- Clone the image's
crossOrigin attribute always even though the checkCrossOrigin is set to false (#535).
- Improve browser environment detecting (#554).
1.5.4 (Jul 20, 2019)
- Avoid removing the events of the original image.
- Avoid requesting any Data URLs by XMLHttpRequest for better performance (#526).
- Add an
alt attribute to all internal images for better accessibility (#548).
- Transform
enums to types from the definition files for TypeScript (#550).
1.5.3 (Jul 10, 2019)
- Compute the size of the image for all browsers that use WebKit as the layout engine in iOS devices, such as Safari and in-app browsers (#544).
1.5.2 (Jun 30, 2019)
- Alway add a timestamp to the URL of a cross-origin image (#519).
1.5.1 (Mar 10, 2019)
- Revert the minimum container width from
300 to 200.
- Revert the minimum container height from
150 to 100.
1.5.0 (Mar 10, 2019)
- Add
passive: false and capture: true to wheel event for better performance.
- Improve touch event binding.
- Ignore the pointer events are not triggered by the primary button.
- Fix typed array spreading error in IE or Safari 9.
- Fix the RegExp for the Safari browser detecting to ignore Chrome (#478).
1.4.3 (Oct 24, 2018)
- Ignore range error when the image does not have correct Exif information
1.4.2 (Oct 15, 2018)
- Read orientation only when it is a JPEG image.
- Improve cropper instance storage to avoid side effect (#394).
- Fix parameter error of
Object.assign in iOS devices (#432).
- Improve typed array loop for better performance (#435).
1.4.1 (Jul 15, 2018)
- Not to restrict the canvas position when it is not cropped.
- Fix wrong crop box size in view mode 1 and 2 (#381).
1.4.0 (Jun 1, 2018)
- Added 1 new option:
initialAspectRatio.
- Improve the smoothness of crop box resizing.
1.3.6 (May 20, 2018)
- Check orientation only when both the
rotatable and scalable options are set to true.
- In case rounding off leads to extra 1px in right or bottom border we should round the top-left corner and the dimension (#343).
1.3.5 (Apr 15, 2018)
- Ensure the cloned image loads completely before trigger the
ready event to avoid side effect (#303).
- Add namespace to data attribute names (from
data-* to data-cropper-*) to avoid side effect (#319).
1.3.4 (Mar 31, 2018)
- Compute destination sizes with image's aspect ratio when draw image (#326).
1.3.3 (Mar 18, 2018)
- Improve event binding.
- Add missing
pivot definition to zoomTo method (#320)
1.3.2 (Mar 3, 2018)
- Fix the bug of cropping image with orientation (#313).
1.3.1 (Feb 28, 2018)
- Add missing
width and height definitions (#302).
- Fix incorrect behavior of
viewMode: 2 (#304).
- Fix the bug of multiple starts (#306).
- Remove
browser field from the package.json file (#307).
1.3.0 (Feb 25, 2018)
- Add type definition files for TypeScript.
- Enhance the
preview option to support Array and NodeList.
- Fix incorrect cropped canvas sizes when max/min sizes provided.
1.2.2 (Jan 3, 2018)
- Fix incorrect image natural sizes in iOS Safari (#279).
1.2.1 (Dec 17, 2017)
- Add
style field to package.json.
- Fix size error when load SVG image (#256).
1.2.0 (Dec 17, 2017)
- Allow to set the pivot of zoom (#144).
- Fixed a bug of rotation (#260).
1.1.3 (Oct 21, 2017)
- Fixed a bug of render when disable one of
rotatable and scalable options (#241).
1.1.2 (Oct 18, 2017)
- Normalize related decimal numbers when crop an image with canvas.
1.1.1 (Oct 11, 2017)
- Supports to load in node environment (#237).
- Fixed a bug of event binding (#238).
1.1.0 (Oct 8, 2017)
- Added 4 new options to
getCroppedCanvas method: minWidth, minHeight, maxWidth and maxHeight.
- Enhanced image scaling: the
scaleX and scaleY values should only be 1 or -1 before, but now they can be any numbers.
- Improved crop box resizing behavior in the northeast, northwest, southeast and southwest directions. (#222).
1.0.0 (Sep 3, 2017)
- Fixed a bug of zoom out after cleared the crop box in view mode 1, 2 and 3 (#209).
- Improve crop box resizing behavior in the east, west, south and north directions (#222).
1.0.0-rc.3 (Jul 7, 2017)
- Added two new options (
imageSmoothingEnabled and imageSmoothingQuality) to getCroppedCanvas method.
- Fixed a bug of RegExp using (#195 by @arusakov).
1.0.0-rc.2 (May 30, 2017)
- Fixed the issue of canvas box initialization (#179).
1.0.0-rc.1 (Apr 30, 2017)
- Change the
main field value from dist/cropper.js (UMD) to dist/cropper.common.js (CommonJS).
- Added
module and browser fields to package.json.
1.0.0-rc (Mar 25, 2017)
- Fixed the bug of touch zoom (#161).
- Fixed the bug of window resize (#162).
- Improve the
toggleDragModeOnDblclick option (only available when the dragMode option is set to crop or move)
1.0.0-beta.2 (Feb 25, 2017)
- Fixed the bug of rotate square image lead image shrink (#155).
- Improved RegExps for DataURL processing (#156).
1.0.0-beta.1 (Jan 21, 2017)
- Use CSS3 2D Transforms instead of
left and top for better performance (#138).
- Set
withCredentials attribute when read the image data by XMLHttpRequest (#141).
1.0.0-beta (Jan 1, 2017)
- Supports to set an element for preview (#113).
- Improved event handler for Pointer Events (#127).
1.0.0-alpha (Dec 4, 2016)
- Built JavaScript with Rollup.
- Build CSS with PostCSS.
- Fixed a bug of auto crop when replace the image (#83).
0.8.1 (Sep 3, 2016)
- Fixed the bug of cropping (#80).
- Fixed the bug of calling
ready event twice when call replace method (#81).
- Fixed the bug of
getCroppedCanvas when set scalable or rotatable to false (#82).
0.8.0 (Aug 18, 2016)
- Removed
build event.
- Renamed
built event to ready.
- Fixed the error of orientation transform.
- Ported code to ECMAScript 6.
0.7.2 (Jun 8, 2016)
- Fixed a bug of
data-* attributes setting and getting.
- Fixed the calling order of
scale and rotate.
0.7.1 (May 28, 2016)
- Improved the rotate and scale transform behavior.
- Improved the
getCroppedCanvas method (returns the whole canvas if it is not cropped).
- Check cross origin setting when load image by XMLHTTPRequest.
0.7.0 (Mar 20, 2016)
- Supports 7 custom events:
build, built, cropstart, cropmove, cropend, crop and zoom.
- The original callback options become shortcuts of these events now.
- IE8 is no longer supported after added these custom events.
0.6.0 (Feb 22, 2016)
- Added a new parameter to the
replace method for applying filters.
- Improved the image initializing for Safari.
- Fixed incorrect size limitation of the crop box (#30).
- Fixed incorrect cropped canvas when scaleX or scaleY great than 1.
0.5.6 (Jan 18, 2016)
- Fixed crossOriginUrl undefined error when exists the
crossOrigin property.
- Fixed the issue in the "destroy" method (#24).
- Optimized tests.
0.5.5 (Jan 1, 2016)
- Fixed a dimension bug in the "getCroppedCanvas" method.
- Added an example for cropping round image.
0.5.4 (Dec 28, 2015)
- Supports to zoom from event triggering point.
0.5.3 (Dec 24, 2015)
- Limit wheel speed to prevent zoom too fast (#21)
- Improve the
setCropBoxData method (#22)
0.5.2 (Dec 15, 2015)
0.5.1 (Dec 12, 2015)
- Handle Data URL (avoid to use XMLHttpRequest to open a Data URL)
- Handle ajax error when load ArrayBuffer
- Not to transform the image to base64 when Orientation equals to
1
- Fix some typos
0.5.0 (Dec 5, 2015)
- Added a new option:
checkOrientation
- Added a timestamp to the url of preview image
0.4.0 (Dec 2, 2015)
- Added a new option:
restore
- Fixed #12: Added vendor prefixes to CSS
transform
0.3.3 (Nov 30, 2015)
- Floor the numerical parameters for
CanvasRenderingContext2D.drawImage
0.3.2 (Nov 18, 2015)
- Fixed #10: improve new crop box creating
0.3.1 (Nov 11, 2015)
- Fixed #7: reset the
crossOrigin when call the replace method
0.3.0 (Oct 28, 2015)
- Supports four view modes
- Supports three drag modes
- Makes the crop box's borders and handlers visible when overflow
- Added some examples
- Fixed some issues
Options
- Added
viewMode
- Added
dragMode
- Renamed
touchDragZoom to zoomOnTouch
- Renamed
mouseWheelZoom to zoomOnWheel
- Renamed
doubleClickToggle to toggleDragModeOnDblclick
- Renamed
checkImageOrigin to checkCrossOrigin
- Removed
strict (supported by viewMode: 1)
- Removed
dragCrop (supported by dragMode: 'crop')
0.2.1 (Oct 28, 2015)
- Fix the error jQuery reference on the
setCanvasData method
- Fix typo on the
destroy method
0.2.0 (Oct 25, 2015)
- Added 5 new methods:
moveTo, zoomTo, rotateTo, scaleX and scaleY
- Improved 4 methods:
move, zoom, rotate and getCanvasData
- Improved cropping
0.1.1 (Oct 10, 2015)
- Improved canvas limitation
- Improved crop box limitation
- Improved preview for cross origin image
0.1.0 (Sep 25, 2015)
- Supports touch (mobile)
- Supports zoom
- Supports rotation
- Supports scale (flip)
- Supports canvas
- Supports multiple croppers
- Cross-browser support
- Supports 37 options:
aspectRatio, data, preview, strict, responsive, checkImageOrigin, modal, guides, center, highlight, background, autoCrop, autoCropArea, dragCrop, movable, rotatable, scalable, zoomable, mouseWheelZoom, wheelZoomRatio, touchDragZoom, cropBoxMovable, cropBoxResizable, doubleClickToggle, minCanvasWidth, minCanvasHeight, minCropBoxWidth, minCropBoxHeight, minContainerWidth, minContainerHeight, build, built, cropstart, cropmove, cropend, crop, zoom.
- Support 22 methods:
crop, reset, clear, replace, enable, disable, destroy, move, zoom, rotate, scale, getData, setData, getContainerData, getImageData, getCanvasData, setCanvasData, getCropBoxData, setCropBoxData, getCroppedCanvas, setAspectRatio, setDragMode.