All Projects → react-cropper → React Cropper

react-cropper / React Cropper

Licence: mit
Cropperjs as React component

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to React Cropper

react-drop-n-crop
An opinionated implementation of react-dropzone and react-cropper
Stars: ✭ 17 (-98.94%)
Mutual labels:  crop, cropper, crop-image, react-cropper
Krop
Small widget for image cropping in Instagram-like style
Stars: ✭ 107 (-93.31%)
Mutual labels:  crop, crop-image, cropper
Tocropviewcontroller
A view controller for iOS that allows users to crop portions of UIImage objects
Stars: ✭ 4,210 (+163.13%)
Mutual labels:  crop, crop-image, cropper
pikaso
Seamless and headless HTML5 Canvas library
Stars: ✭ 23 (-98.56%)
Mutual labels:  crop, cropper, crop-image
Cropiwa
📐 Configurable Custom Crop widget for Android
Stars: ✭ 2,185 (+36.56%)
Mutual labels:  crop, crop-image, cropper
react-simple-crop
✂️ A React component library for cropping and previewing images
Stars: ✭ 19 (-98.81%)
Mutual labels:  crop, cropper, crop-image
Croppy
Image Cropping Library for Android
Stars: ✭ 906 (-43.37%)
Mutual labels:  crop, crop-image, cropper
crops
🌄 Image thumbnail generation server
Stars: ✭ 37 (-97.69%)
Mutual labels:  crop, crop-image
Croppr.js
A vanilla JavaScript image cropper that's lightweight, awesome, and has absolutely zero dependencies.
Stars: ✭ 294 (-81.62%)
Mutual labels:  crop, cropper
Tkimageview
An easy way to crop an image.
Stars: ✭ 342 (-78.62%)
Mutual labels:  crop, crop-image
Dragscalecircleview
a custom view that provides dragged and scaled
Stars: ✭ 513 (-67.94%)
Mutual labels:  crop, crop-image
Flyimg
Dockerized PHP7 application runs as a Microservice to resize and crop images on the fly. Get optimised images with MozJPEG, WebP or PNG using ImageMagick. Includes face detection, cropping, face blurring, image rotation and many other options. Abstract storage based on FlySystem in order to store images on any provider (local, AWS S3...).
Stars: ✭ 762 (-52.38%)
Mutual labels:  crop, crop-image
Bimg
Go package for fast high-level image processing powered by libvips C library
Stars: ✭ 1,394 (-12.87%)
Mutual labels:  crop, crop-image
react-native-avatar-crop
Highly customisable <Crop /> component for React Native < 💅 >
Stars: ✭ 47 (-97.06%)
Mutual labels:  crop, cropper
Cropme
Extremely Smooth and Easy Cropping library for you
Stars: ✭ 306 (-80.87%)
Mutual labels:  crop-image, cropper
Cropper
Android Library for cropping an image at ease.
Stars: ✭ 21 (-98.69%)
Mutual labels:  crop, cropper
ngx-cropper
An Angular image plugin, includes upload, cropper, save to server.
Stars: ✭ 14 (-99.12%)
Mutual labels:  crop, cropper
Smartcircle
✂️Automatically determine where to crop a circular image out of a rectangular.
Stars: ✭ 29 (-98.19%)
Mutual labels:  crop, crop-image
React Cropper
react cropper
Stars: ✭ 13 (-99.19%)
Mutual labels:  crop-image, cropper
React Easy Crop
A React component to crop images/videos with easy interactions
Stars: ✭ 1,093 (-31.69%)
Mutual labels:  crop, crop-image

react-cropper

Cropperjs as React component

NPM NPM NPM downloads Dependencies Language grade: JavaScript Total alerts Bundle Size minZip Bundle Size min License codecov

Demo

Click for a Demo

Docs

Installation

Install via npm

npm install --save react-cropper

You need cropper.css in your project which is from cropperjs. Since this project have dependency on cropperjs, it located in /node_modules/react-cropper/node_modules/cropperjs/dist/cropper.css or node_modules/cropperjs/dist/cropper.css for npm version 3.0.0 later

Breaking Change (version >= 2.0.0)

  1. Support for ref has been removed. Use the onInitialized method to get the cropper instance. Added back ref support in 2.1.0.
  2. To set initial aspect ratio, instead of using aspectRatio use initialAspectRatio.
  3. Props data, canvasData and cropBoxData are directly passed on to cropperjs and their respective setters are not called as earlier.
  4. React Cropper now does not try to use/execute moveTo as earlier. Directly use the moveTo method from the cropper instance.
  5. React Cropper does not depend on @types/react-cropper and provides its own types. Please uninstall/remove @types/react-cropper as they might 'cause issues.

Quick Example

import React, { useRef } from "react";
import Cropper from "react-cropper";
import "cropperjs/dist/cropper.css";

const Demo: React.FC = () => {
  const cropperRef = useRef<HTMLImageElement>(null);
  const onCrop = () => {
    const imageElement: any = cropperRef?.current;
    const cropper: any = imageElement?.cropper;
    console.log(cropper.getCroppedCanvas().toDataURL());
  };

  return (
    <Cropper
      src="https://raw.githubusercontent.com/roadmanfong/react-cropper/master/example/img/child.jpg"
      style={{ height: 400, width: "100%" }}
      // Cropper.js options
      initialAspectRatio={16 / 9}
      guides={false}
      crop={onCrop}
      ref={cropperRef}
    />
  );
};

Options

src

  • Type: string
  • Default: null
<Cropper src="http://fengyuanchen.github.io/cropper/images/picture.jpg" />

alt

  • Type: string
  • Default: picture

crossOrigin

  • Type: string
  • Default: null

dragMode

https://github.com/fengyuanchen/cropperjs#dragmode

scaleX

https://github.com/fengyuanchen/cropperjs#scalexscalex

scaleY

https://github.com/fengyuanchen/cropperjs#scalexscaley

enable

https://github.com/fengyuanchen/cropperjs#enable

disable

https://github.com/fengyuanchen/cropperjs#disable

zoomTo

https://github.com/fengyuanchen/cropperjs#zoomto

rotateTo

https://github.com/fengyuanchen/cropperjs#rotateto

Other options

Accept all options in the docs as properties.

Methods

Use the cropper instance from onInitialized to access cropperjs methods

Build

npm run build

Development

npm start

Author

Fong Kuanghuei

Maintainer

Shubhendu Shekhar

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].