Skip to main content

Create jigsaw puzzle pieces from an image

Project description

A jigsaw puzzle pieces generator that levels the playing field.

Currently in use by Puzzle Massive to create puzzles with 5000+ pieces.

It creates jigsaw puzzle pieces in multiple formats: svg, jpg, and png. The number and size of pieces are set by passing the script different options. It takes a while to run if doing a lot of pieces. Extra JSON files are created with details on size of pieces and adjacent pieces information which is commonly used when verifying that two pieces can join together.



Python Packages:

Other Software needed:

If on ubuntu or other debian based distro:

sudo apt-get --yes install libspatialindex6
sudo apt-get --yes install optipng
sudo apt-get --yes install python3-pil
sudo apt-get --yes install potrace libffi-dev libxml2-dev python3-lxml python3-xcffib
sudo apt-get --yes install librsvg2-bin
sudo apt-get --yes install python3-pip

Install with pip in editable mode for developing and use virtualenv to isolate python dependencies:

python3 -m venv .
source ./bin/activate
pip install --upgrade --upgrade-strategy eager -e .


See the for more. Not everything has been implemented. Use this example command to create 100 randomly generated jigsaw puzzle pieces from test.jpg image. This assumes that the ‘test’ directory is empty since that is where it will be placing all the generated files. The test.jpg is the source image that will be used when creating the pieces. It is not modified.:

piecemaker --dir test  --number-of-pieces 100 test.jpg

Docker Usage

A Dockerfile also can be used to build an image and run it.:

docker build -t piecemaker:latest .

mkdir -p out/tmp
cp test.jpg out/
rm -rf out/tmp/*

docker run -it --rm \
    --mount type=bind,src=$(pwd)/out,dst=/out \
    piecemaker:latest \
    piecemaker --dir /out/tmp --number-of-pieces 100 /out/test.jpg

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

piecemaker-0.4.5.tar.gz (45.8 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page