Skip to main content

Graphical tool to make photo collage posters

Project description

CI tests status

Graphical tool to make photo collage posters

PhotoCollage allows you to create photo collage posters. It assembles the input photographs it is given to generate a big poster. Photos are automatically arranged to fill the whole poster, then you can change the final layout, dimensions, border or swap photos in the generated grid. Eventually the final poster image can be saved in any size.

The algorithm generates random layouts that place photos while taking advantage of all free space. It tries to fill all space while keeping each photo as large as possible.

PhotoCollage does more or less the same as many commercial websites do, but for free and with open-source code.

screenshot

It provides a library to create photo layouts and posters, and a GTK graphical user interface. PhotoCollage is written in Python (compatible with versions 2 and 3) and requires the Python Imaging Library (PIL).

Features:

  • generate random new layouts until one suits the user

  • choose border color and width

  • possible to swap photos in the generated grid

  • save high-resolution image

  • works even with a large number of photos (> 100)

  • integrates into the GNOME environment

  • available in English, French, German, Czech, Italian, Bulgarian, Dutch, Russian, Spanish, Polish and Ukrainian

Installation

  • Fedora 19+:

    sudo dnf install photocollage
  • Debian 9+ / Ubuntu 16.10+:

    sudo apt-get install photocollage
  • Using pip, the Python package manager:

    sudo pip3 install photocollage

Usage

After install a launcher for PhotoCollage will appear in your desktop menu.

If it doesn’t, just run the command:

photocollage

Hacking

  • If you changed the source and want to test your modifications, run:

    python -c 'from photocollage import gtkgui; gtkgui.main()'
  • If you need to build a package from source and install it:

    # Install dependencies
    sudo dnf install python3-pillow python3-gobject
    sudo apt-get install python3-pil python3-gi
    sudo pacman -S python-pillow python-gobject
    
    # Install PhotoCollage
    python -m build
    pip install --user --upgrade dist/photocollage-*.tar.gz
  • If you wish to contribute, please lint your code and pass tests:

    flake8 .
    python -m unittest tests/test_*.py

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

photocollage-1.5.0.tar.gz (198.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

photocollage-1.5.0-py3-none-any.whl (203.5 kB view details)

Uploaded Python 3

File details

Details for the file photocollage-1.5.0.tar.gz.

File metadata

  • Download URL: photocollage-1.5.0.tar.gz
  • Upload date:
  • Size: 198.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for photocollage-1.5.0.tar.gz
Algorithm Hash digest
SHA256 6dd869669e7453fa7c4a3efe5d238969c36490dce4b22b0fd7e915d0e987a403
MD5 85040e47b743d31cc53545d053667cb7
BLAKE2b-256 9bc8674b559cf9727f769e0d8aa19a7a112fbb8224803e39d01283f7786c31c0

See more details on using hashes here.

File details

Details for the file photocollage-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: photocollage-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 203.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for photocollage-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f77d47afe7fb2bbd4e4d1d4af1cca6fb0b716143957febf76de074501782a36
MD5 277c452d31407a980e3652bcfd9c298f
BLAKE2b-256 91dd227e98ee706c943d0f3eaeb5ac1ea1ff437c13a0d583057e8121681d8147

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page