Skip to main content

Rust Imaging Library's Python binding: A performant and high-level image processing library for Python written in Rust

Project description

ril-py

Rust Imaging Library for Python: Python bindings for ril, a performant and high-level image processing library written in Rust.

What's this?

This is a python binding around ril designed to provide an easy-to-use, high-level interface around image processing in Rust. Image and animation processing has never been this easy and fast before.

Support

⚠ This package is a work in progress and it heavily depends on the progress of ril

By the first stable release, we plan to support the following image encodings:

Encoding Format Current Status
PNG / APNG Supported
JPEG Supported
GIF Supported
WebP Not yet supported
BMP Not yet supported
TIFF Not yet supported

Installation

Prebuilt wheels

There will be prebuilt wheels for these platforms:

  • Linux x86-64: Cpython 3.7, 3.8, 3.9, 3.10, PyPy 3.7, 3.8, 3.9
  • MacOS x86-64: Cpython 3.7, 3.8, 3.9, 3.10, PyPy 3.7, 3.8, 3.9
  • Windows x86-64: Cpython 3.7, 3.8, 3.9, 3.10, PyPy 3.7, 3.8, 3.9
  • Linux i686: Cpython 3.7, 3.8, 3.9, 3.10, PyPy 3.7, 3.8, 3.9
  • MacOS aarch64: Cpython 3.8, 3.9, 3.10

If you want another platform to have prebuilt wheels, please open an issue.

CPython 3.11 support will be available once its ABI has been stabilized.

If your platform has prebuilt wheels, installing is as simple as

pip install ril

Building from Source

In order to build from source, you will need to have the Rust compiler available in your PATH. See documentation on https://rust-lang.org to learn how to install Rust on your platform.

Then building is as simple as

pip install ril

or from Github

pip install git+https://github.com/Cryptex-github/ril-py

Pip will handle the building process.

Examples

Open an image, invert it, and then save it:

from ril import Image

image = Image.open("example.png")
image.invert()

image.save("example.png")

Create a new black image, open the sample image, and paste it on top of the black image:

from ril import Image, Pixel

image = Image.new(600, 600, Pixel.from_rgb(0, 0, 0))
image.paste(100, 100, Image.open("sample.png"))

image.save("sample_on_black.png", "PNG") # You can also specify format if you like

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

ril-0.4.0.tar.gz (35.9 kB view details)

Uploaded Source

Built Distributions

ril-0.4.0-pp39-pypy39_pp73-win_amd64.whl (807.7 kB view details)

Uploaded PyPy Windows x86-64

ril-0.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ril-0.4.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.9 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

ril-0.4.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (981.2 kB view details)

Uploaded PyPy macOS 10.9+ x86-64

ril-0.4.0-pp38-pypy38_pp73-win_amd64.whl (807.7 kB view details)

Uploaded PyPy Windows x86-64

ril-0.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ril-0.4.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.9 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

ril-0.4.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (981.0 kB view details)

Uploaded PyPy macOS 10.9+ x86-64

ril-0.4.0-pp37-pypy37_pp73-win_amd64.whl (808.8 kB view details)

Uploaded PyPy Windows x86-64

ril-0.4.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ril-0.4.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.9 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

ril-0.4.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (979.0 kB view details)

Uploaded PyPy macOS 10.9+ x86-64

ril-0.4.0-cp37-abi3-win_amd64.whl (807.5 kB view details)

Uploaded CPython 3.7+ Windows x86-64

ril-0.4.0-cp37-abi3-win32.whl (695.2 kB view details)

Uploaded CPython 3.7+ Windows x86

ril-0.4.0-cp37-abi3-musllinux_1_1_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.7+ musllinux: musl 1.1+ x86-64

ril-0.4.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ x86-64

ril-0.4.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (1.9 MB view details)

Uploaded CPython 3.7+ manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

ril-0.4.0-cp37-abi3-macosx_11_0_arm64.whl (820.2 kB view details)

Uploaded CPython 3.7+ macOS 11.0+ ARM64

ril-0.4.0-cp37-abi3-macosx_10_9_x86_64.whl (981.2 kB view details)

Uploaded CPython 3.7+ macOS 10.9+ x86-64

ril-0.4.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (1.8 MB view details)

Uploaded CPython 3.7+ macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

File details

Details for the file ril-0.4.0.tar.gz.

File metadata

  • Download URL: ril-0.4.0.tar.gz
  • Upload date:
  • Size: 35.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for ril-0.4.0.tar.gz
Algorithm Hash digest
SHA256 5677d6448b04baf5cf13da77c42be912d35220aae0258ac248e2b97bf4a5f248
MD5 3073d9b85c30c80d765bb15122e336ac
BLAKE2b-256 4b754cef29921f281dec2c6fb3a64cb5ebec4afeedd1c47e9c1511338e871c08

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 6fdb13d0fada523795c4f2e349fc946937ee7550aeef89245a4196d2f6452405
MD5 894648414698082880dc704337738aba
BLAKE2b-256 512885d197b2d29d0464249e2c31637d57bef08ce498535d60166c96e14e8638

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 024e7f0e778fdbc8676f442e4728ea7ef47ed91f0e49ff4b9767675c62aa2cc6
MD5 77174218b60dcb2946761bb2575207ee
BLAKE2b-256 76f4cdb9b357bd4286a96091be0fb4470cf371e0e830959b7f9c4429a349282f

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2eb1e007e080f558169aa5764f5a7af31b5431a44c0de8c733b8705350e117b9
MD5 bbb5ee78c603a629637ff502281be866
BLAKE2b-256 b1ec0d351a8e054134b7db838036edd8aa80695c6ef239e524da69e611a25fb1

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 16f86507022bba33e0f0819ef550148121d84720b24e5f28d59cdd64636047d9
MD5 2346301bd899ff0e75e6c65b6d1296fc
BLAKE2b-256 4bcf3bdde88cd608ee2fa0da31a3b4d4b67cfe5f3e691af4bd19c501ab7b6a74

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp38-pypy38_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 8906dea0ab80970561acf131a79028971cbbb18515de20fed788d82c7fd1b0e2
MD5 02d0299237f80cea04dd657bbb5ed83b
BLAKE2b-256 a6dcafb72280865baccd0745c4025d7c219e37e46de35bcb21663d056f5d0680

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 add8e9978fdc5626dd7408c3891b2e792cafc3257464fc13393eb67babe60048
MD5 f2add18e63caeb2e57e28ebf7d91742a
BLAKE2b-256 8cb910c7e7ff6427d1c3563cd4c6b48fb9c8a2c1a1f7fda02d176cd41e4f1b9b

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 047fbe5182854543094c6eaa43d6e293a1d724283172a839079125fbf4636997
MD5 74c2a753b9497109f990db13861e5831
BLAKE2b-256 f5aba93b140cf0d0dfd84898136d7a0d5d8ae3d204e8779cb4521f5f7fc34be7

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c4870e9cf17d186666f34dc9dec632b86e7129b388bee7599ed7b1ca6b91c5be
MD5 8ba1d379a4663d9ca16b6efb69d1076d
BLAKE2b-256 a941bdef6d1de1e1a226d0de0dd25b12550b2c1f5753bf22acdb6c6e7665de50

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp37-pypy37_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp37-pypy37_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 7c43e288018e2bccde40e02491220d2ab6ccfd08a45edacd8cd757e296840a2f
MD5 0fc9238eb5ce0b96d98998456c907e8a
BLAKE2b-256 725c8285dd5783443e9469b9153363ea811c2f609ffbf5552fa79865583da86f

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 911525799dfa6428a638b609c9e8d855d2869c36689b8e4630e6c7884e6848fb
MD5 7280ef763385087215e2f146c1f96f68
BLAKE2b-256 4441435fb0de4759a64012e4c15fb7db7a0126bd4329ef21640adeab3728dbf2

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0e2b01b72e43bae4f26d736c36d72e8224f1cb7b4a3b0eb28eb6384a32fd6c75
MD5 b0c54338854bc2d6ddd16c54483de93d
BLAKE2b-256 72543e753d96591dc6dfb2b981a58921fe348bfc060d4ac85c1a239abad297ca

See more details on using hashes here.

File details

Details for the file ril-0.4.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 14c2ed2a9a0a5b1d6f282d5c985110117a76ecb7f35474aff2a5b6190f6c181e
MD5 460865d4f7916ff07885f356468942a9
BLAKE2b-256 cbdd4222b55b8fafd08fbae635d373d2c47f0fd8a05913d4f6ef0dd428d92d47

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-win_amd64.whl.

File metadata

  • Download URL: ril-0.4.0-cp37-abi3-win_amd64.whl
  • Upload date:
  • Size: 807.5 kB
  • Tags: CPython 3.7+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for ril-0.4.0-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e1eb3d4a04663012e39a72c282b66e51cf14dd4e90ffcffeeb87f11624f8413b
MD5 4122d5d4b9266d91280f38e9cc8c26ee
BLAKE2b-256 194ed391fd5c1a9cbae53219e89cee443557ab1fb5840605989edd4b703acd79

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-win32.whl.

File metadata

  • Download URL: ril-0.4.0-cp37-abi3-win32.whl
  • Upload date:
  • Size: 695.2 kB
  • Tags: CPython 3.7+, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for ril-0.4.0-cp37-abi3-win32.whl
Algorithm Hash digest
SHA256 aede770ea16cc6a9d52797113f1032012aca7347eba8303c32f97705840bcb4b
MD5 be7e5ca18ebedb3d549010ad632b54d9
BLAKE2b-256 92c64efe3e777f2ca1ae7e5ef5c6109c8291a0a5ccc42bdb243e3692ad13655d

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-cp37-abi3-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 22985938f6e3de254a4ecafaa41c4a3bd65252a59717e3c356c141824d63c918
MD5 fa6fdc918f6521c56713b12a7b3cd2b6
BLAKE2b-256 3f82210f2083226f17757ae49ddd933f713004b201efaf43e5281673c7c850f1

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 be33ec499d957cab232271c50f6076da2e09b4c7f4fd49aa145bd7be25e0e7ec
MD5 ed2d2efa09590ce30ab8924546259fa4
BLAKE2b-256 16d32418efae4e8041cb50506874ad52eee0de7c7a7c116abce5b4da3f2ca3f2

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ril-0.4.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a49a34d75640aade88d8105d396e185be01be5bb62846457c407120f8e64fd0b
MD5 f8d32fabf3b898df9fab2351951be616
BLAKE2b-256 9334664d002226ef598cb822524b810e70fdd59bcf1085d04fa1f332410725a9

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ril-0.4.0-cp37-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 820.2 kB
  • Tags: CPython 3.7+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for ril-0.4.0-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 02afa3129e7af6d4bf92d3659d25b0310d1ebc9c9e0f8435b2831b745c0d9625
MD5 937d9fc29a2837f95c064b703b34abbc
BLAKE2b-256 3e565b71c8becc8a6b1edb8fd725a6ce7d2e1ba37a6eec7a02fa0f544b4c9059

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for ril-0.4.0-cp37-abi3-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 08007fc2e9604dd3b78a2c4b1db0ced2f3724f57c429544a222cb858b1bc5550
MD5 85cd1335272791b1db0a3d740760935b
BLAKE2b-256 f6c6edc0c8d7d11a5890d29506b1c04e83a129c908f4780773db24096d137bcc

See more details on using hashes here.

File details

Details for the file ril-0.4.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for ril-0.4.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e05bb121714b6209a050dab83b0326b13d6a668a8153ccc84366f38f5333b276
MD5 3fdb1bef57b78a1d190983e4d2d6307d
BLAKE2b-256 d2a72ccf3edd87425f0291c444781b2f4e720617283f6351afa8a2f7ea252513

See more details on using hashes here.

Supported by

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