From 22eed8104091f1a36999efe1515145a25d813544 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Wed, 10 May 2023 05:45:59 +0000 Subject: automatic import of python-xbrz-py --- .gitignore | 1 + python-xbrz-py.spec | 250 ++++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 252 insertions(+) create mode 100644 python-xbrz-py.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..569d40e 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/xbrz.py-1.0.2.tar.gz diff --git a/python-xbrz-py.spec b/python-xbrz-py.spec new file mode 100644 index 0000000..ded78fd --- /dev/null +++ b/python-xbrz-py.spec @@ -0,0 +1,250 @@ +%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 diff --git a/sources b/sources new file mode 100644 index 0000000..c751d44 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +055428b3b6c393cff3cb5cb2516c05aa xbrz.py-1.0.2.tar.gz -- cgit v1.2.3