diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-05-15 07:47:38 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-05-15 07:47:38 +0000 |
| commit | 0a73dd2919308f58a539a00a14b0d7462144eeab (patch) | |
| tree | 51ff07d3f6a7cd56a71e27e14bd096d5e91c06ef /python-memepy.spec | |
| parent | 572b191657f3ad52e481b99a7a355150d86d38ba (diff) | |
automatic import of python-memepy
Diffstat (limited to 'python-memepy.spec')
| -rw-r--r-- | python-memepy.spec | 407 |
1 files changed, 407 insertions, 0 deletions
diff --git a/python-memepy.spec b/python-memepy.spec new file mode 100644 index 0000000..b1b5a8f --- /dev/null +++ b/python-memepy.spec @@ -0,0 +1,407 @@ +%global _empty_manifest_terminate_build 0 +Name: python-MemePy +Version: 1.2.1 +Release: 1 +Summary: Meme Generator for python +License: MIT +URL: https://github.com/julianbrandt/MemePy +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/fd/43/1327072e1f4c75909ddfa7e799e3f944d1e988926fe46a86833c3273caac/MemePy-1.2.1.tar.gz +BuildArch: noarch + +Requires: python3-pillow +Requires: python3-requests + +%description +# MemePy + +*Meme generator library for your everyday needs* + +Python meme generator originally made for the discord-chat-bot [HydroBot](https://github.com/julianbrandt/Hydrobot3), but migrated to its own package for increased modularity and ease of use. + +## Installation + +MemePy can be downloaded as a package from `PyPi`: + +``` +>python -m pip install MemePy +``` + +You can alternatively just download the zip from here. + +## How it works + +MemePy uses the Python Imaging Library *PIL* to edit existing templates of memes and return them to the user. + +MemePy has a list of defined `MemeImage` templates that are fed to a `MemeFactory`. The factory then produces an image with all the arguments, given by the user, pasted onto the image in the correct formats of the specific meme. + +In addition to just text-based memes, MemePy also supports substituting the text-argument with an image. Just supply an image-link in `< ... >` angle brackets as an argument, and the text will be substituted for the image. ENDLESS POTENTIAL!!! + +The available meme templates can be found in the [Image Library](./MemePy/Resources/ImageLibrary). The specifications of each meme template can be found in the [Meme Library](./MemePy/Resources/MemeLibrary). Where `builtin.JSON` is the place for default templates. You can define your own templates as well, which is described below. + +## Usage + +### Importing MemePy into your own project + +If you wish to import the meme-generation functionality into your own project, usually all you will need can be found in [MemePy/MemeGenerator.py](./MemePy/MemeGenerator.py). + +#### The functions available in this file are: + +* `save_meme_to_disk(template, path, args)` + + * Generates a meme of the given template, with given args and saves it to disk at the given path. + +* `get_meme_image(template, args)` + + * Generates a meme of the given template, with given args and returns it as a `PIL`Image object. Used if you wanna pass an image to your own project instead of saving it. + +* `get_meme_image_bytes(template, args)` + + * Generates a meme of the given template, with given args and returns it as a BytesIO object. This allows for treating the output image as a file, and thus making it possible to open as other objects (e.g. `discord.py File` objects). + +* `get_meme_factory(template, args)` + + * Generates a meme factory with the given template and args. This exposes more of the specifications of the factory, in case you need more rich details. + +* `add_external_resource_dir(resource_path)` + + * Allows you to add your own external resource library without having access to the package's internal resource directory. The given resource directory *HAS* to follow the following rules for resource directories: + + ``` + <resources> + +---FontLibrary + | <font>.ttf + | + +---ImageLibrary + | <image>.png + | + \---MemeLibrary + <meme-definition>.JSON + ``` + + In other words. The folders inside the given directory *MUST* be named **FontLibrary**, **ImageLibrary** and **MemeLibrary**. The font you choose to use in your extension can be left out of the fonts directory, if it already exists internally in the package resources. + + + +## Creating memes on the Command-Line + +Using the command-line, you can generate images from templates and save them to disk. + +#### Generating a meme: + +```console +MemePy <path> <template> <*args> <*options> +``` + +- __path__ is where on your computer you want to save the meme. +- __template__ is the underlying template to use for the meme (not case sensitive). +- __\*args__ are all arguments to be placed onto the template. + - Multi-word arguments must be surrounded by "" quotation marks + - Arguments can be images, pasted onto the template. Image-links should be given in '<>' angle brackets. +- __\*options__ are the options that modify behavior of the generation. + - Options are passed with '{}' curly braces. + - Currently supported options: "stretch". +## Built-In template docs +| Template name | Arguments | Image | +| ------------- | --------------- | ----- | +| MeAlsoMe | **Required**: 2<br>**Optional**: 0 |  | +| ItsRetarded | **Required**: 1<br>**Optional**: 0 |  | +| Headache | **Required**: 1<br>**Optional**: 0 |  | +| ItsTime | **Required**: 2<br>**Optional**: 0 |  | +| ClassNote | **Required**: 1<br>**Optional**: 0 |  | +| NutButton | **Required**: 1<br>**Optional**: 0 |  | +| Pills | **Required**: 1<br>**Optional**: 0 |  | +| Balloon | **Required**: 3<br>**Optional**: 0 |  | +| Classy | **Required**: 2<br>**Optional**: 0 |  | +| Cola | **Required**: 2<br>**Optional**: 0 |  | +| Loud | **Required**: 1<br>**Optional**: 1 |  | +| Milk | **Required**: 1<br>**Optional**: 1 |  | +| Finally | **Required**: 1<br>**Optional**: 1 |  | +| Cliff | **Required**: 2<br>**Optional**: 0 |  | +| PredatorHandshake | **Required**: 3<br>**Optional**: 0 |  | +| Knight | **Required**: 2<br>**Optional**: 0 |  | +| Vape | **Required**: 2<br>**Optional**: 0 |  | +| Hate | **Required**: 1<br>**Optional**: 0 |  | + + + + +%package -n python3-MemePy +Summary: Meme Generator for python +Provides: python-MemePy +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-MemePy +# MemePy + +*Meme generator library for your everyday needs* + +Python meme generator originally made for the discord-chat-bot [HydroBot](https://github.com/julianbrandt/Hydrobot3), but migrated to its own package for increased modularity and ease of use. + +## Installation + +MemePy can be downloaded as a package from `PyPi`: + +``` +>python -m pip install MemePy +``` + +You can alternatively just download the zip from here. + +## How it works + +MemePy uses the Python Imaging Library *PIL* to edit existing templates of memes and return them to the user. + +MemePy has a list of defined `MemeImage` templates that are fed to a `MemeFactory`. The factory then produces an image with all the arguments, given by the user, pasted onto the image in the correct formats of the specific meme. + +In addition to just text-based memes, MemePy also supports substituting the text-argument with an image. Just supply an image-link in `< ... >` angle brackets as an argument, and the text will be substituted for the image. ENDLESS POTENTIAL!!! + +The available meme templates can be found in the [Image Library](./MemePy/Resources/ImageLibrary). The specifications of each meme template can be found in the [Meme Library](./MemePy/Resources/MemeLibrary). Where `builtin.JSON` is the place for default templates. You can define your own templates as well, which is described below. + +## Usage + +### Importing MemePy into your own project + +If you wish to import the meme-generation functionality into your own project, usually all you will need can be found in [MemePy/MemeGenerator.py](./MemePy/MemeGenerator.py). + +#### The functions available in this file are: + +* `save_meme_to_disk(template, path, args)` + + * Generates a meme of the given template, with given args and saves it to disk at the given path. + +* `get_meme_image(template, args)` + + * Generates a meme of the given template, with given args and returns it as a `PIL`Image object. Used if you wanna pass an image to your own project instead of saving it. + +* `get_meme_image_bytes(template, args)` + + * Generates a meme of the given template, with given args and returns it as a BytesIO object. This allows for treating the output image as a file, and thus making it possible to open as other objects (e.g. `discord.py File` objects). + +* `get_meme_factory(template, args)` + + * Generates a meme factory with the given template and args. This exposes more of the specifications of the factory, in case you need more rich details. + +* `add_external_resource_dir(resource_path)` + + * Allows you to add your own external resource library without having access to the package's internal resource directory. The given resource directory *HAS* to follow the following rules for resource directories: + + ``` + <resources> + +---FontLibrary + | <font>.ttf + | + +---ImageLibrary + | <image>.png + | + \---MemeLibrary + <meme-definition>.JSON + ``` + + In other words. The folders inside the given directory *MUST* be named **FontLibrary**, **ImageLibrary** and **MemeLibrary**. The font you choose to use in your extension can be left out of the fonts directory, if it already exists internally in the package resources. + + + +## Creating memes on the Command-Line + +Using the command-line, you can generate images from templates and save them to disk. + +#### Generating a meme: + +```console +MemePy <path> <template> <*args> <*options> +``` + +- __path__ is where on your computer you want to save the meme. +- __template__ is the underlying template to use for the meme (not case sensitive). +- __\*args__ are all arguments to be placed onto the template. + - Multi-word arguments must be surrounded by "" quotation marks + - Arguments can be images, pasted onto the template. Image-links should be given in '<>' angle brackets. +- __\*options__ are the options that modify behavior of the generation. + - Options are passed with '{}' curly braces. + - Currently supported options: "stretch". +## Built-In template docs +| Template name | Arguments | Image | +| ------------- | --------------- | ----- | +| MeAlsoMe | **Required**: 2<br>**Optional**: 0 |  | +| ItsRetarded | **Required**: 1<br>**Optional**: 0 |  | +| Headache | **Required**: 1<br>**Optional**: 0 |  | +| ItsTime | **Required**: 2<br>**Optional**: 0 |  | +| ClassNote | **Required**: 1<br>**Optional**: 0 |  | +| NutButton | **Required**: 1<br>**Optional**: 0 |  | +| Pills | **Required**: 1<br>**Optional**: 0 |  | +| Balloon | **Required**: 3<br>**Optional**: 0 |  | +| Classy | **Required**: 2<br>**Optional**: 0 |  | +| Cola | **Required**: 2<br>**Optional**: 0 |  | +| Loud | **Required**: 1<br>**Optional**: 1 |  | +| Milk | **Required**: 1<br>**Optional**: 1 |  | +| Finally | **Required**: 1<br>**Optional**: 1 |  | +| Cliff | **Required**: 2<br>**Optional**: 0 |  | +| PredatorHandshake | **Required**: 3<br>**Optional**: 0 |  | +| Knight | **Required**: 2<br>**Optional**: 0 |  | +| Vape | **Required**: 2<br>**Optional**: 0 |  | +| Hate | **Required**: 1<br>**Optional**: 0 |  | + + + + +%package help +Summary: Development documents and examples for MemePy +Provides: python3-MemePy-doc +%description help +# MemePy + +*Meme generator library for your everyday needs* + +Python meme generator originally made for the discord-chat-bot [HydroBot](https://github.com/julianbrandt/Hydrobot3), but migrated to its own package for increased modularity and ease of use. + +## Installation + +MemePy can be downloaded as a package from `PyPi`: + +``` +>python -m pip install MemePy +``` + +You can alternatively just download the zip from here. + +## How it works + +MemePy uses the Python Imaging Library *PIL* to edit existing templates of memes and return them to the user. + +MemePy has a list of defined `MemeImage` templates that are fed to a `MemeFactory`. The factory then produces an image with all the arguments, given by the user, pasted onto the image in the correct formats of the specific meme. + +In addition to just text-based memes, MemePy also supports substituting the text-argument with an image. Just supply an image-link in `< ... >` angle brackets as an argument, and the text will be substituted for the image. ENDLESS POTENTIAL!!! + +The available meme templates can be found in the [Image Library](./MemePy/Resources/ImageLibrary). The specifications of each meme template can be found in the [Meme Library](./MemePy/Resources/MemeLibrary). Where `builtin.JSON` is the place for default templates. You can define your own templates as well, which is described below. + +## Usage + +### Importing MemePy into your own project + +If you wish to import the meme-generation functionality into your own project, usually all you will need can be found in [MemePy/MemeGenerator.py](./MemePy/MemeGenerator.py). + +#### The functions available in this file are: + +* `save_meme_to_disk(template, path, args)` + + * Generates a meme of the given template, with given args and saves it to disk at the given path. + +* `get_meme_image(template, args)` + + * Generates a meme of the given template, with given args and returns it as a `PIL`Image object. Used if you wanna pass an image to your own project instead of saving it. + +* `get_meme_image_bytes(template, args)` + + * Generates a meme of the given template, with given args and returns it as a BytesIO object. This allows for treating the output image as a file, and thus making it possible to open as other objects (e.g. `discord.py File` objects). + +* `get_meme_factory(template, args)` + + * Generates a meme factory with the given template and args. This exposes more of the specifications of the factory, in case you need more rich details. + +* `add_external_resource_dir(resource_path)` + + * Allows you to add your own external resource library without having access to the package's internal resource directory. The given resource directory *HAS* to follow the following rules for resource directories: + + ``` + <resources> + +---FontLibrary + | <font>.ttf + | + +---ImageLibrary + | <image>.png + | + \---MemeLibrary + <meme-definition>.JSON + ``` + + In other words. The folders inside the given directory *MUST* be named **FontLibrary**, **ImageLibrary** and **MemeLibrary**. The font you choose to use in your extension can be left out of the fonts directory, if it already exists internally in the package resources. + + + +## Creating memes on the Command-Line + +Using the command-line, you can generate images from templates and save them to disk. + +#### Generating a meme: + +```console +MemePy <path> <template> <*args> <*options> +``` + +- __path__ is where on your computer you want to save the meme. +- __template__ is the underlying template to use for the meme (not case sensitive). +- __\*args__ are all arguments to be placed onto the template. + - Multi-word arguments must be surrounded by "" quotation marks + - Arguments can be images, pasted onto the template. Image-links should be given in '<>' angle brackets. +- __\*options__ are the options that modify behavior of the generation. + - Options are passed with '{}' curly braces. + - Currently supported options: "stretch". +## Built-In template docs +| Template name | Arguments | Image | +| ------------- | --------------- | ----- | +| MeAlsoMe | **Required**: 2<br>**Optional**: 0 |  | +| ItsRetarded | **Required**: 1<br>**Optional**: 0 |  | +| Headache | **Required**: 1<br>**Optional**: 0 |  | +| ItsTime | **Required**: 2<br>**Optional**: 0 |  | +| ClassNote | **Required**: 1<br>**Optional**: 0 |  | +| NutButton | **Required**: 1<br>**Optional**: 0 |  | +| Pills | **Required**: 1<br>**Optional**: 0 |  | +| Balloon | **Required**: 3<br>**Optional**: 0 |  | +| Classy | **Required**: 2<br>**Optional**: 0 |  | +| Cola | **Required**: 2<br>**Optional**: 0 |  | +| Loud | **Required**: 1<br>**Optional**: 1 |  | +| Milk | **Required**: 1<br>**Optional**: 1 |  | +| Finally | **Required**: 1<br>**Optional**: 1 |  | +| Cliff | **Required**: 2<br>**Optional**: 0 |  | +| PredatorHandshake | **Required**: 3<br>**Optional**: 0 |  | +| Knight | **Required**: 2<br>**Optional**: 0 |  | +| Vape | **Required**: 2<br>**Optional**: 0 |  | +| Hate | **Required**: 1<br>**Optional**: 0 |  | + + + + +%prep +%autosetup -n MemePy-1.2.1 + +%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-MemePy -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 1.2.1-1 +- Package Spec generated |
