Skip to content

ionelmc/python-css-sprite

Repository files navigation

Overview

docs Documentation Status
tests
GitHub Actions Build Status Requirements Status
Coverage Status Coverage Status
package
PyPI Package latest release PyPI Wheel Supported versions Supported implementations
Commits since latest release

A simple css sprite generator.

  • Free software: BSD 2-Clause License

Installation

pip install css-sprite

You can also install the in-development version with:

pip install https://github.com/ionelmc/python-css-sprite/archive/main.zip

Usage

To generate a css sprite from images:

css-sprite [-h] [--grid GRID] --output OUTPUT
    [--mode MODE] [--vertical] [--background BACKGROUND]
    [--template TEMPLATE | --template-path TEMPLATE_PATH]
    [--verbose] [--version] image [image ...]

Output is mainly a new image but you can also generate the accompanying css.

Positional arguments:

image Path to image to include in sprite.

Options:

-h, --help show this help message and exit --grid GRID, -g GRID Grid cell size to use. One of: auto, X:Y. --output OUTPUT, -o OUTPUT Output file. --mode MODE, -m MODE Force a certain image mode in the output, see: https://pillow.readthedocs.io/en/latest/handbook/concepts.html#modes. --vertical, -v Stack the images vertically (they are stacked horizontally by default). --background BACKGROUND, -b BACKGROUND Background color. --template TEMPLATE, -t TEMPLATE Jinja template for CSS output on stdout. --template-path TEMPLATE_PATH, -p TEMPLATE_PATH Jinja template path for CSS output on stdout. --verbose Make output verbose. --version show program's version number and exit

Template variables:

  • images - list of dicts with fields:
    • index - counter starting from 1
    • index0 - counter starting from 0
    • filename - path to source image
    • offset - dict with fields: x and y (integers)
    • position - dict with fields: x and y (integers)
    • width - integer (same as cell.width for now)
    • height - integer (same as cell.height for now)
  • grid - dict with fields
    • width - integer
    • height - integer
    • vertical - bool (True if you have used --vertical)
  • cell - dict with fields:
    • count - number of input images
    • width - integer
    • height - integer
  • output - pathlib.Path of output file

Documentation

https://python-css-sprite.readthedocs.io/

Development

To run all the tests run:

tox

Note, to combine the coverage data from all the tox environments run:

Windows
set PYTEST_ADDOPTS=--cov-append
tox
Other
PYTEST_ADDOPTS=--cov-append tox

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages