4.2.4 • Published 2 years ago

antd-img-crop-fix v4.2.4

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

antd-img-crop

An image cropper for Ant Design Upload

npm npm npm bundle size GitHub npm type definitions

English | 简体中文

Demo

Edit antd-img-crop

Install

yarn add antd-img-crop

# npm install antd-img-crop

Usage

import ImgCrop from 'antd-img-crop';
import { Upload } from 'antd';

const Demo = () => (
  <ImgCrop>
    <Upload>+ Add image</Upload>
  </ImgCrop>
);

Props

PropTypeDefaultDescription
aspectnumber1 / 1Aspect of crop area , width / height
shapestring'rect'Shape of crop area, 'rect' or 'round'
gridbooleanfalseShow grid of crop area (third-lines)
qualitynumber0.4Image quality, 0 ~ 1
fillColorstring'white'Fill color when cropped image smaller than canvas
zoombooleantrueEnable zoom for image
rotatebooleanfalseEnable rotate for image
minZoomnumber1Minimum zoom factor
maxZoomnumber3Maximum zoom factor
modalTitlestring'Edit image'Title of modal
modalWidthnumber | string520Width of modal in pixels number or percentages
modalOkstring'OK'Text of modal confirm button
modalCancelstring'Cancel'Text of modal cancel button
modalMaskTransitionNamestring'fade'MaskTransitionName of modal, use 'none' to disable the default transition effect
modalTransitionNamestring'fade'TransitionName of modal, use 'none' to disable the default transition effect
modalClassNamestring''Provide your own classname for the Modal container
onModalOkfunction-Call when click modal confirm button
onModalCancelfunction-Call when click modal mask, top right "x", or cancel button
beforeCropfunction-Call before modal open, if return false, it'll not open
onUploadFailfunction-Call when upload failed
cropperPropsobject-Props of react-easy-crop (* existing props cannot be overridden)

Styles

To prevent overwriting the custom styles to antd, antd-img-crop does not import the style files of components.

Therefore, if you configured babel-plugin-import and no Modal or Slider were used, please import the styles manually:

import 'antd/es/modal/style';
import 'antd/es/slider/style';

FAQ

ConfigProvider not work?

If using craco-antd, please try to add libraryDirectory: 'es' to craco.config.js:

module.exports = {
  plugins: [
    {
      plugin: CracoAntDesignPlugin,
      options: {
        // other options...
+       babelPluginImportOptions: {
+         libraryDirectory: 'es',
+       },
      },
    },
  ],
};

Or if configuring babel-plugin-import manually, please try to set libraryDirectory: 'es' to .babelrc.js:

module.exports = {
  plugins: [
    ['import', { libraryName: 'antd', libraryDirectory: 'es', style: true }],
  ],
};

License

MIT License (c) nanxiaobei

FUTAKE

Try FUTAKE in WeChat. A mini app for your inspiration moments. 🌈

npm.io