Skip to main content

A library bundled with a CLI tool to generate CSS sprites.

Project description

A Python library/utility to create CSS sprites.

This library was made out of my frustration to be unable to find a library that suited exactly what I had in mind. And also because I found the idea of writing that quite fun :)

Now a first version is done, I don’t know if I’m going to push the development further. Don’t use this in production, unless you are ready to dig into the code and maintain the app yourself.

Usage

PTL source file

Everything is generated from the PTL source file. It has a few options:

[css]
# The prefix that will be put in front of every generated CSS selector.
# The selectors are generated from the file names. With the current
# configuration, what you'd get for a toto.png file would be a
# .icon-toto class.
prefix = .icon-

# This is a selector of the global class for all generated tiles (it
# sets some styles attributes for everybody)
general_selector = [class^="icon-"], [class*=" icon-"]

[sprite]
# A hint of the number of tiles that fits in the width of the sprite.
width = 15

# The relative path from the generated CSS file to the generated sprite
# file. This sprite file will be generated at compilation time.
filename = sprite.png

# A valid PIL format name
format = PNG

[tile]
# This is a hint about the tiles size. Put here your most common tile
# size, or the LCM of your tiles sizes, or something in that mood.
width = 16
height = 16

[files]
# Here goes a plain glob list of files to be put in the sprite. The
# path is relative to the .ptl file.
sprite/*.png

CLI Tool

Once you have the PTL source, compiling is quite simple:

ponytile input.ptl output.css

It will generate the output.css file with the appropriate sprite file as configured by the PTL file.

Using in your web page

Just include the generated CSS somewhere, and then do:

<i class="icon-toto"></i>

It should make the trick :)

Using the library

Open bin/ponytile and look at how things are done. There is not much more to say about the public API right now!

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

Ponytile-0.1.1.tar.gz (7.0 kB view details)

Uploaded Source

File details

Details for the file Ponytile-0.1.1.tar.gz.

File metadata

  • Download URL: Ponytile-0.1.1.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Ponytile-0.1.1.tar.gz
Algorithm Hash digest
SHA256 eeed7b6816b3e70650ad8b33f5776d7e8f1bfddadfdeef21cf9b2bceacc65dc6
MD5 4476b989247a19c68d6ff8bc4d4c63c5
BLAKE2b-256 d281c49b5d83d721849209618e4e13d3f8611e520ce48c47afd45d00085a6265

See more details on using hashes here.

Supported by

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