154 lines
4.8 KiB
Markdown
154 lines
4.8 KiB
Markdown
|
# huepaper - a colorful wallpaper generator
|
||
|
|
||
|
![Logo](images/logo.png)
|
||
|
|
||
|
**huepaper** creates wallpapers based on color hues. Bring a little
|
||
|
color in your life by randomness, because every huepaper is truly
|
||
|
unique.
|
||
|
|
||
|
You can find [examples](#examples) below. For more examples visit the
|
||
|
Mastodon [huebot](https://botsin.space/@huebot).
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
### Nix
|
||
|
|
||
|
This project is a [Nix Flake](https://nixos.wiki/wiki/Flakes). If you
|
||
|
have a recent version of the [Nix package manager](https://nixos.org/)
|
||
|
installed and Flakes are enabled, run huepaper like this:
|
||
|
|
||
|
``` example
|
||
|
nix run github:Deleh/huepaper
|
||
|
```
|
||
|
|
||
|
Parameters can be passed by appending a double-dash:
|
||
|
|
||
|
``` example
|
||
|
nix run github:Deleh/huepaper -- -hue 0.5 --color lightblue
|
||
|
```
|
||
|
|
||
|
Global installation can be done by including this flake in your flaked
|
||
|
NixOS configuration as always :)
|
||
|
|
||
|
### Legacy
|
||
|
|
||
|
Execute the following steps to run huepaper:
|
||
|
|
||
|
``` example
|
||
|
pip install -r requirements.txt
|
||
|
./huepaper.py
|
||
|
```
|
||
|
|
||
|
```{=org}
|
||
|
#+end_example
|
||
|
```
|
||
|
|
||
|
To install it in your Python environment run:
|
||
|
|
||
|
``` example
|
||
|
python setup.py install
|
||
|
```
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
``` example
|
||
|
usage: huepaper [-h] [-s SIZE] [-c COLOR] [-np] [-o OUTPUT] [-l [LINES]] [-lb [LINES_BRIGHT]] [-ld [LINES_DARK]] [-P [PIXELATE]] [-e EMBLEM] [-hue HUE] [-smin SMIN] [-smax SMAX] [-lmin LMIN] [-lmax LMAX]
|
||
|
|
||
|
Create wallpapers based on color hues.
|
||
|
|
||
|
optional arguments:
|
||
|
-h, --help show this help message and exit
|
||
|
-s SIZE, --size SIZE size of huepaper in the form WIDTHxHEIGHT (default: 1920x1080)
|
||
|
-c COLOR, --color COLOR
|
||
|
base color from which the huepaper is generated (default: random color)
|
||
|
-np, --no-preview don't preview the huepaper
|
||
|
-o OUTPUT, --output OUTPUT
|
||
|
filepath where the huepaper will be saved
|
||
|
-l [LINES], --lines [LINES]
|
||
|
include one to three random lines in base color with given opacity in range [0, 1] (default: 0.3)
|
||
|
-lb [LINES_BRIGHT], --lines_bright [LINES_BRIGHT]
|
||
|
include one to three bright random lines with given opacity in range [0, 1] (default: 0.1)
|
||
|
-ld [LINES_DARK], --lines_dark [LINES_DARK]
|
||
|
include one to three dark random lines with given opacity in range [0, 1] (default: 0.1)
|
||
|
-p [PIXELATE], --pixelate [PIXELATE]
|
||
|
pixelate image with WIDTHxHEIGHT (default: 16x9)
|
||
|
-e EMBLEM, --emblem EMBLEM
|
||
|
emblem to add in the center of the huepaper
|
||
|
-hue HUE maximum hue to differ from given color in range [0, 1] (default: 0.1)
|
||
|
-smin SMIN minimum saturation for colors in range [0, 1] (default: 0.2)
|
||
|
-smax SMAX maximum saturation for colors in range [0, 1] (default: 1.0)
|
||
|
-lmin LMIN minimum luminance for colors in range [0, 1] (default: 0.2)
|
||
|
-lmax LMAX maximum luminance for colors in range [0, 1] (default: 0.9)
|
||
|
```
|
||
|
|
||
|
All image operations are called in order of the help file. E.g. pixelate
|
||
|
(`-p`) is called after adding lines (`-l`).
|
||
|
|
||
|
If you set the color via `-c` it is not guaranteed, that it
|
||
|
is included in the huepaper. Colors, similar to the given one are
|
||
|
chosen. You can specify how far the colors differ in the hue range with
|
||
|
the `-hue` parameter. Valid color expressions are e.g.
|
||
|
`#F5F5DC`, `#0f0`, `ffff80` and
|
||
|
`red`. Make sure, that colors beginning with a `#`
|
||
|
are encapsulated in quotes. All supported color names can be seen
|
||
|
[here](https://www.w3schools.com/colors/colors_names.asp).
|
||
|
|
||
|
If you use the `-e` argument to specify an emblem, make sure
|
||
|
it has the correct size. It is not scaled or stretched, just placed in
|
||
|
the center of the image. If you want an offset, e.g. put it in the left
|
||
|
bottom corner, provide an emblem file with the size of the huepaper,
|
||
|
transparent background and your emblem in the bottom left corner.
|
||
|
|
||
|
## Examples
|
||
|
|
||
|
Please note, that every huepaper call generates a new random image. You
|
||
|
will never get the same huepaper twice. You may like some and dislike
|
||
|
others. Fiddle around with the options to find a result, you are happy
|
||
|
with.
|
||
|
|
||
|
![Huepaper 1](images/huepaper_1.png)
|
||
|
|
||
|
``` example
|
||
|
huepaper
|
||
|
```
|
||
|
|
||
|
------------------------------------------------------------------------
|
||
|
|
||
|
![Huepaper 1](images/huepaper_2.png)
|
||
|
|
||
|
``` example
|
||
|
huepaper -c lightgreen
|
||
|
```
|
||
|
|
||
|
------------------------------------------------------------------------
|
||
|
|
||
|
![Huepaper 3](images/huepaper_3.png)
|
||
|
|
||
|
``` example
|
||
|
huepaper -c "#ff7f50" -lb 0.05
|
||
|
```
|
||
|
|
||
|
------------------------------------------------------------------------
|
||
|
|
||
|
![Huepaper 4](images/huepaper_4.png)
|
||
|
|
||
|
``` example
|
||
|
huepaper -hue 1.0 -lmin 0.3 -lmax 0.6 -smin 0.8 -smax 1.0
|
||
|
```
|
||
|
|
||
|
------------------------------------------------------------------------
|
||
|
|
||
|
![Huepaper 5](images/huepaper_5.png)
|
||
|
|
||
|
``` example
|
||
|
huepaper -hue 0.3 -lmin 0.5 -lmax 0.5 -l 0.5 -P 64x36
|
||
|
```
|
||
|
|
||
|
------------------------------------------------------------------------
|
||
|
|
||
|
![Huepaper 6](images/huepaper_6.png)
|
||
|
|
||
|
``` example
|
||
|
huepaper -l -lb -ld -e nixos.png
|
||
|
```
|