Croppy는 모바일 중심의 접근 방식으로 설계되었으며 웹 및 데스크톱 플랫폼도 지원하는 완전히 사용자 정의 가능한 Flutter용 이미지 자르기 도구입니다. 직관적인 제스처와 유연한 구성 옵션을 통해 이미지 자르기에 원활한 경험을 제공합니다. 개발자가 자르기 인터페이스에 대해 세밀한 제어가 필요할 때 사용할 수 있으며, 비율, 자르기 경계 및 UI 요소를 맞춤 설정할 수 있습니다. 가볍고 반응성이 뛰어난 디자인으로 모든 기기에서 부드러운 성능을 보장합니다.
사용 사례
모바일 앱에서의 이미지 편집
웹 기반 사진 자르기 도구
데스크톱 이미지 처리 워크플로우
사용자 친화적인 사용자 정의 가능한 자르기 인터페이스
미디어 업로드 흐름에 이미지 자르기 통합하기
주요 기능
완전히 사용자 정의 가능한 자르기 영역
다중 플랫폼(웹, 모바일, 데스크톱) 지원
제스처 기반 자르기 컨트롤
사용자 정의 가능한 종횡비
반응형 및 적응형 사용자 인터페이스
확장 가능한 스타일 옵션
적합한 대상
미디어가 풍부한 애플리케이션을 개발하는 개발자
고급 이미지 조작이 필요한 앱
크로스 플랫폼 이미지 자르기 솔루션
Teams prioritizing user experience in image editing
경량이고 성능이 뛰어난 자르기 컴포넌트가 필요한 프로젝트
고려 사항
모바일이 아닌 플랫폼을 위한 추가 설정 필요
자르기 형식을 위한 내장 사전 설정이 제한적
브랜드에 맞는 UI를 위해 사용자 정의 스타일이 필요할 수 있습니다
대규모 고해상도 이미지 처리에 최적화되지 않음
플랫폼 고유의 렌더링 동작에 따라 다름
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
croppy
A fully customizable image cropper for Flutter, with built-in Material and Cupertino croppers.
Check out the example at https://kekland.github.io/croppy.
Supported platforms:
Android
iOS
Windows
Linux (untested, but should work)
macOS
Web (uses Dart's Cassowary instead of FFI because there's no FFI support in web)
NOTE: see https://github.com/kekland/croppy/issues/38. Currently I'm very busy with other projects so support might be limited.
Features
Material image cropper (similar to Google Photos)
iOS Photos app-like image cropper
Support for any linear transformations on the image: scaling, rotating, skewing, flipping, etc
Completely customizable (will create documentation with later releases)
Currently croppy supports a Material (Google Photos-like) and a Cupertino (iOS Photos-like) image croppers:
final result = awaitshowAdaptiveImageCropper(
context,
imageProvider: constNetworkImage('MY_IMAGE_URL'), // Or any other image provider
);
final result = awaitshowMaterialImageCropper(
context,
imageProvider: constNetworkImage('MY_IMAGE_URL'), // Or any other image provider
);
final result = awaitshowCupertinoImageCropper(
context,
imageProvider: constNetworkImage('MY_IMAGE_URL'), // Or any other image provider
);
Voilà! You can now start cropping images.
For a complete runnable example, see ./example. For the full in-depth documentation, including customization, see the documentation.
Localization
croppy currently supports the following languages:
English
Kazakh
Russian
Arabic (thanks @Milad-Akarie)
Vietnamese (thanks @ptanhVNU)
Portuguese (thanks @JCKodel)
Spanish (thanks @Thesergiolg99)
Chinese (thanks @yohom and @zhushenwudi)
Hebrew (thanks @kfiross)
German (thanks @jkoenig134)
Persian (thanks @mdpe-ir)
Turkish (thanks @BayramYARIM)
Polish (thanks @mekkolodziejski)
Romanian (thanks @AdrianSima)
Kyrgyz (thanks @warioddly)
If there's a language that you would like to add, please see the localization guide.
It's recommended to insert the CroppyLocalizations.delegate in your MaterialApp or CupertinoApp: