%global _empty_manifest_terminate_build 0 Name: python-xbrz.py Version: 1.0.2 Release: 1 Summary: ctypes-based binding library for the xBRZ pixel-art image scaling algorithm License: AGPL-3.0-or-later URL: https://github.com/iomintz/xbrz.py Source0: https://mirrors.nju.edu.cn/pypi/web/packages/a7/47/b2718f5151454f0ccfb8b77ca2b1aacac1d6319fa7bbee6f22ccb1d0cfdb/xbrz.py-1.0.2.tar.gz Requires: python3-Pillow Requires: python3-Wand %description # xbrz.py [![Build Status](https://travis-ci.com/ioistired/xbrz.py.svg?branch=master)](https://travis-ci.org/iomintz/xbrz.py) xbrz.py is a simple ctypes-based binding library for [xBRZ], a high-quality pixel-art image scaling algorithm. ## Installation Wheels are available for many platforms. If there isn't one for your platform, make sure you have a C++ compiler handy. ``` pip install xbrz.py ``` ## Usage ```py import xbrz # pixels is a list of 32 bit ints representing RGBA colors. # It is 32 * 24 long. pixels = ... scaled_pixels = xbrz.scale(pixels, 6, 32, 24, xbrz.ColorFormat.RGBA) # scaled_pixels is a 32 * 24 * 6 ** 2 long list of 32 bit ints representing the scaled image. ``` ## Wand / Pillow support You can pass a Wand image to `xbrz.scale_wand(img, factor)` or a Pillow image to `xbrz.scale_pillow(img, factor)`. Neither libraries are required to use xbrz.py, however they can be installed via: ``` pip install xbrz.py[wand] # or pip install xbrz.py[pillow] ``` ## xbrz.py as an executable module Passing raw RGBA pixels to `python3 -m xbrz ` via stdin will output scaled raw RGBA pixels to stdout. ## License AGPLv3, see LICENSE.md. The original xBRZ code is GPLv3 licensed. - lib/ is based on code provided by Zenju under the GPLv3 license. See lib/License.txt for details. Some changes were made: - Added some `extern "C"` declarations to the functions I intended to call from python. - Removed some namespace use to avoid being mangled. - Replaced a C++ template with a simple function that takes two arguments. - Converted the library to use RGBA instead of ARGB. - xbrz.py is based on lib/ and is released under the AGPLv3 license, see LICENSE.md for details. [xbrz]: https://sourceforge.net/projects/xbrz/ %package -n python3-xbrz.py Summary: ctypes-based binding library for the xBRZ pixel-art image scaling algorithm Provides: python-xbrz.py BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip BuildRequires: python3-cffi BuildRequires: gcc BuildRequires: gdb %description -n python3-xbrz.py # xbrz.py [![Build Status](https://travis-ci.com/ioistired/xbrz.py.svg?branch=master)](https://travis-ci.org/iomintz/xbrz.py) xbrz.py is a simple ctypes-based binding library for [xBRZ], a high-quality pixel-art image scaling algorithm. ## Installation Wheels are available for many platforms. If there isn't one for your platform, make sure you have a C++ compiler handy. ``` pip install xbrz.py ``` ## Usage ```py import xbrz # pixels is a list of 32 bit ints representing RGBA colors. # It is 32 * 24 long. pixels = ... scaled_pixels = xbrz.scale(pixels, 6, 32, 24, xbrz.ColorFormat.RGBA) # scaled_pixels is a 32 * 24 * 6 ** 2 long list of 32 bit ints representing the scaled image. ``` ## Wand / Pillow support You can pass a Wand image to `xbrz.scale_wand(img, factor)` or a Pillow image to `xbrz.scale_pillow(img, factor)`. Neither libraries are required to use xbrz.py, however they can be installed via: ``` pip install xbrz.py[wand] # or pip install xbrz.py[pillow] ``` ## xbrz.py as an executable module Passing raw RGBA pixels to `python3 -m xbrz ` via stdin will output scaled raw RGBA pixels to stdout. ## License AGPLv3, see LICENSE.md. The original xBRZ code is GPLv3 licensed. - lib/ is based on code provided by Zenju under the GPLv3 license. See lib/License.txt for details. Some changes were made: - Added some `extern "C"` declarations to the functions I intended to call from python. - Removed some namespace use to avoid being mangled. - Replaced a C++ template with a simple function that takes two arguments. - Converted the library to use RGBA instead of ARGB. - xbrz.py is based on lib/ and is released under the AGPLv3 license, see LICENSE.md for details. [xbrz]: https://sourceforge.net/projects/xbrz/ %package help Summary: Development documents and examples for xbrz.py Provides: python3-xbrz.py-doc %description help # xbrz.py [![Build Status](https://travis-ci.com/ioistired/xbrz.py.svg?branch=master)](https://travis-ci.org/iomintz/xbrz.py) xbrz.py is a simple ctypes-based binding library for [xBRZ], a high-quality pixel-art image scaling algorithm. ## Installation Wheels are available for many platforms. If there isn't one for your platform, make sure you have a C++ compiler handy. ``` pip install xbrz.py ``` ## Usage ```py import xbrz # pixels is a list of 32 bit ints representing RGBA colors. # It is 32 * 24 long. pixels = ... scaled_pixels = xbrz.scale(pixels, 6, 32, 24, xbrz.ColorFormat.RGBA) # scaled_pixels is a 32 * 24 * 6 ** 2 long list of 32 bit ints representing the scaled image. ``` ## Wand / Pillow support You can pass a Wand image to `xbrz.scale_wand(img, factor)` or a Pillow image to `xbrz.scale_pillow(img, factor)`. Neither libraries are required to use xbrz.py, however they can be installed via: ``` pip install xbrz.py[wand] # or pip install xbrz.py[pillow] ``` ## xbrz.py as an executable module Passing raw RGBA pixels to `python3 -m xbrz ` via stdin will output scaled raw RGBA pixels to stdout. ## License AGPLv3, see LICENSE.md. The original xBRZ code is GPLv3 licensed. - lib/ is based on code provided by Zenju under the GPLv3 license. See lib/License.txt for details. Some changes were made: - Added some `extern "C"` declarations to the functions I intended to call from python. - Removed some namespace use to avoid being mangled. - Replaced a C++ template with a simple function that takes two arguments. - Converted the library to use RGBA instead of ARGB. - xbrz.py is based on lib/ and is released under the AGPLv3 license, see LICENSE.md for details. [xbrz]: https://sourceforge.net/projects/xbrz/ %prep %autosetup -n xbrz.py-1.0.2 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-xbrz.py -f filelist.lst %dir %{python3_sitearch}/* %files help -f doclist.lst %{_docdir}/* %changelog * Wed May 10 2023 Python_Bot - 1.0.2-1 - Package Spec generated