A cross-stitch image generator. Generates a cross stitch pattern given by a user and generates a DMC colored pattern.
Project description
Tarraz | طرّاز
A cross-stitch image generator. Generates a cross stitch pattern from an image of your choice. The generated pattern is DMC colored.
Takes an image file and generates a cross stitch pattern using a user specified color..
Supported image extensions
- JPEG (.jpg, .jpeg)
- PNG (.png)
- WebP (.webp)
Current color providers
- DMC
Results
Usage
Installation
pip install tarraz
CLI Example
tarraz images/palestine.png --colors 4 --stitches-count 200
Python Example
from tarraz import constants
from tarraz.processor import Tarraz
from tarraz.providers import DMCProvider
from tarraz.stitcher import SVGStitcher
from tarraz.models import RGB
# Choose a color provider
image_path = "images/palestine.png"
provider = DMCProvider()
tarraz = Tarraz(
image_path,
provider=provider, # Optional if not using a custom provider
x_count=100, # Default 50
colors_num=6, # default 3
result_width=200, # Default 1000
cleanup=True, # Default True
)
# Process the image
pattern, colors = tarraz.process()
# Stitch the result
SVGStitcher.stitch(
pattern,
colors,
tarraz.size,
transparent=[RGB(255,255,255)],
configs=constants.SVG_VARIANTS,
cell_size=10,
save_to="/tmp/test/",
)
Options
$ tarraz --help
usage: tarraz [-h] [--version] [-c COLORS] [-n STITCHES_COUNT] [-w WIDTH] [-m DMC] [-t TRANSPARENT [TRANSPARENT ...]] [-o DIST] [-z CELL_SIZE] [--no-cleanup] [--svg] image
Generate a DMC-colored cross-stitch pattern from a given image.
positional arguments:
image Input image
optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit
-c COLORS, --colors COLORS
Number of colors to use in the pattern.
-n STITCHES_COUNT, --stitches-count STITCHES_COUNT
Number of stitches to use in the x axis.
-w WIDTH, --width WIDTH
Result pattern width.
-m DMC, --dmc DMC DMC json color path.
-t TRANSPARENT [TRANSPARENT ...], --transparent TRANSPARENT [TRANSPARENT ...]
A Color to ignore from the end result.
-o DIST, --dist DIST DMC json color path.
-z CELL_SIZE, --cell-size CELL_SIZE
The size of the generated Aida fabric cell.
--no-cleanup Don't run cleanup job on generated image.
--svg Export result to svg files.
Development
Pre-requisites
pip3 install -U pip setuptools
pip3 install poetry
# Optional Auto-completion
poetry completions zsh > ~/.zfunc/_poetry
Install dependencies
poetry shell
poetry install
pre-commit install
[!NOTE] If you don't want to keep the current package installed run
pip uninstall tarraz
. However, you might want to add the project to yourPYTHONPATH
usingexport PYTHONPATH="${PYTHONPATH}:/path/to/tarraz"
Usage
Continue usage as listed above
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
Built Distribution
File details
Details for the file tarraz-1.2.1.tar.gz
.
File metadata
- Download URL: tarraz-1.2.1.tar.gz
- Upload date:
- Size: 32.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f50e11a660c546b0875170935128af1e46fa11a8779385e4f31ecc1daf577e7 |
|
MD5 | b8c5478fd17a6639bca2e7fcd7233600 |
|
BLAKE2b-256 | 99f7d4ec417a4d86f27677b377021ef3a46abc2a2b459a49b7e5969676e2cdba |
File details
Details for the file tarraz-1.2.1-py3-none-any.whl
.
File metadata
- Download URL: tarraz-1.2.1-py3-none-any.whl
- Upload date:
- Size: 35.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eac6974fd318ee5a6c1ef9ef78f8db7e4bf3e15059cb35a18a3c89b40bb16204 |
|
MD5 | 9427eb4b7308dcb2883e97e7350949ce |
|
BLAKE2b-256 | 9901f4e23b175335cd334778075613372ba5253156bd6d597d243c5cbd60697b |