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.7.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.7-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: streamlit_cropper_fix-0.2.7.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.7.tar.gz
Algorithm Hash digest
SHA256 c67f8a8e4245e25fd0c7e64846f7ebdf7c198d73c122a03bd8ba1f0aac09ff76
MD5 5be076dcf623cffd572682bf373c7300
BLAKE2b-256 76be6d2e3aa41ce6a5c99fb1997e437e1e1e46ba34bc6aa7f4d6fc277f863a66

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for streamlit_cropper_fix-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d629816e52a0a3725533c83bbed9f65aff76127b10789721af8ee113c817db1b
MD5 a508d54e5f4e5d40a29e25aca0acd4ce
BLAKE2b-256 5f98c6fb1eae97009d45e33b8862f23ce9d8d07fe4f403d84d72d15fa0f94084

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