Skip to main content

A simple image cropper for Streamlit, with fixes added

Project description

Streamlit - Cropper

A Forked version of the original streamlit-cropper, with added fixes to should_resize_image

Installation

pip install streamlit-cropper-fix

Example Usage

import streamlit as st
from streamlit_cropper import st_cropper
from PIL import Image
st.set_option('deprecation.showfileUploaderEncoding', False)

# Upload an image and set some options for demo purposes
st.header("Cropper Demo")
img_file = st.sidebar.file_uploader(label='Upload a file', type=['png', 'jpg'])
realtime_update = st.sidebar.checkbox(label="Update in Real Time", value=True)
box_color = st.sidebar.color_picker(label="Box Color", value='#0000FF')
aspect_choice = st.sidebar.radio(label="Aspect Ratio", options=["1:1", "16:9", "4:3", "2:3", "Free"])
aspect_dict = {
    "1:1": (1, 1),
    "16:9": (16, 9),
    "4:3": (4, 3),
    "2:3": (2, 3),
    "Free": None
}
aspect_ratio = aspect_dict[aspect_choice]

if img_file:
    img = Image.open(img_file)
    if not realtime_update:
        st.write("Double click to save crop")
    # Get a cropped image from the frontend
    cropped_img = st_cropper(img, realtime_update=realtime_update, box_color=box_color,
                                aspect_ratio=aspect_ratio)
    
    # Manipulate cropped image at will
    st.write("Preview")
    _ = cropped_img.thumbnail((150,150))
    st.image(cropped_img)

References

Acknowledgments

Big thanks to Turner Anderson, zoncrd and yanirs for their contributions

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

streamlit_cropper_fix-0.2.2.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

streamlit_cropper_fix-0.2.2-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file streamlit_cropper_fix-0.2.2.tar.gz.

File metadata

  • Download URL: streamlit_cropper_fix-0.2.2.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for streamlit_cropper_fix-0.2.2.tar.gz
Algorithm Hash digest
SHA256 630fb7fa2558a856e24cfb90e7b2e77afba7e0baec610ee3eb2df76329c447b0
MD5 58cca7112fdb76ffaa7f204fa8b80f6c
BLAKE2b-256 b445b7073ab8b87ca716a959176ca85e740e2151c28444d5c36d125634811d43

See more details on using hashes here.

File details

Details for the file streamlit_cropper_fix-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for streamlit_cropper_fix-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c6a62ae1fc8139f02635dc412868fbfd6171f69742e057dd4b9f3d2ad301f477
MD5 4bab0018e7945b47bdd3515c1f0c92f2
BLAKE2b-256 2bc9a84acce86e424d286a397666a985b618afd9c4df9a205167cc60386a32ef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page