# Yalantis/uCrop

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/yalantis-ucrop).**

12,113 stars · 2,227 forks · Java

## Links

- GitHub: https://github.com/Yalantis/uCrop
- Homepage: https://yalantis.com/blog/introducing-ucrop-our-own-image-cropping-library-for-android/
- awesome-repositories: https://awesome-repositories.com/repository/yalantis-ucrop.md

## Topics

`android` `animation` `crop` `image` `java` `photo` `rotation` `scale`

## Description

uCrop is an Android library designed for cropping, rotating, and scaling images within mobile applications. It provides a reusable interface component that allows users to manipulate photos through touch gestures, enabling precise control over visual composition and aspect ratios.

The library distinguishes itself by offering extensive customization of the editing interface, allowing developers to adjust colors, frame shapes, and widget visibility to align with specific application design languages. It handles image processing tasks by managing quality, compression formats, and output dimensions, ensuring that assets are optimized for storage and loading requirements.

The tool utilizes hardware-accelerated scaling and background processing to maintain interface responsiveness during complex geometric transformations. It is distributed as a configurable component that integrates into existing Android projects to facilitate tasks such as user profile image preparation and general media asset management.

## Tags

### Graphics & Multimedia

- [Image Cropping Tools](https://awesome-repositories.com/f/graphics-multimedia/image-editing-processing/image-editors/image-cropping-tools.md) — Provides a specialized library for cropping, rotating, and scaling images within Android applications. ([source](https://yalantis.com/blog/introducing-ucrop-our-own-image-cropping-library-for-android/))
- [Image Processing](https://awesome-repositories.com/f/graphics-multimedia/image-editing-processing/image-processing.md) — Provides a toolkit for adjusting image quality, compression, and dimensions to optimize assets for mobile interfaces.
- [Image Optimization Tools](https://awesome-repositories.com/f/graphics-multimedia/image-editing-processing/image-optimization-tools.md) — Optimizes user-uploaded images by managing quality and dimensions to ensure efficient storage and fast loading.
- [Image Processing](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-manipulation/image-processing.md) — Performs pixel-level image manipulations including cropping, rotation, and scaling directly in memory.
- [Image Compression Tools](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-manipulation/image-processing/image-compression-tools.md) — Manages image quality, compression formats, and output dimensions to optimize assets for storage and loading. ([source](https://yalantis.com/blog/introducing-ucrop-our-own-image-cropping-library-for-android/))

### Mobile Development

- [Android UI Components](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-ui-components.md) — Offers a reusable Android UI component for geometric image transformations and interface styling.

### User Interface & Experience

- [Profile Customization](https://awesome-repositories.com/f/user-interface-experience/profile-customization.md) — Provides tools for users to frame and adjust their profile pictures within a mobile interface.
- [Background Processing](https://awesome-repositories.com/f/user-interface-experience/background-processing.md) — Offloads heavy image processing tasks to background threads to ensure the user interface remains responsive during geometric transformations.
- [Interface Customizers](https://awesome-repositories.com/f/user-interface-experience/terminal-user-interfaces/visual-styling-presentation/interface-appearance-customization/interface-customizers.md) — Allows developers to adjust colors, frame shapes, and widget visibility to align with specific application design languages. ([source](https://yalantis.com/blog/introducing-ucrop-our-own-image-cropping-library-for-android/))
- [Touch Gesture Detectors](https://awesome-repositories.com/f/user-interface-experience/touch-gesture-detectors.md) — Maps multi-touch input events to real-time matrix transformations for interactive image manipulation.

### Operating Systems & Systems Programming

- [Graphics Acceleration](https://awesome-repositories.com/f/operating-systems-systems-programming/hardware-interfacing-drivers/hardware-acceleration/graphics-acceleration.md) — Utilizes native graphics APIs to perform high-performance image resizing and resampling while maintaining visual fidelity.
