Skip to main content

Print pictures as collages using label tape printers

Project description

readme_flow.png

The taep workflow from artwork to a physical T-shirt using iron-on label tape. Cat photo by Jae Park.

taep is a tool that helps you create collages out of label tape printed with a label printer such as Brother’s P-touch devices.

taep dither takes an SVG file with your design and some lines representing the labels’ locations, and outputs a list of dithered PNG files, one for each label, ready for printing. Optionally, taep print can also directly print these rendered images for you using the ptouch-print tool.

For creating and tweaking your design, taep has several helper utilities built-in. taep template will generate a template with a label tape layout you give it that you can use to base your design off of. taep preview will render a preview that approximates how the printed labels will look when you lay them out. taep assembly will render an assembly diagram with labels indicating each label tape’s number in the order output by taep dither or taep print.

Quick start

  1. Install taep from PyPI using pip install taep, and install usvg, resvg, didder and ptouch-print as shown below under Dependencies.

  2. Run taep template template.svg to create a template with pre-generated label tape areas. The default tape width is 24mm, but you can adjust this as you wish.

  3. Create a new SVG document and design your artwork in it.

  4. Copy the label tape areas from the template into your artwork SVG and save the resulting SVG. taep will later identify these areas by their color. You can copy or delete these, change the length of them, and move and rotate them as you wish. Just make sure you don’t skew or shear them and that you don’t change their width so that they still match the width of the tape that’s physically in the printer you’re using.

  5. Run taep preview artwork_with_label_areas.svg on this SVG to render a preview image. By default, taep will open this preview image in your browser. If that doesn’t work, run taep preview [input].svg preview_out.svg to write it to preview_out.svg and open that file with an SVG viewer of your choice. Adjust the content of your design as necessary.

  6. Run taep print artwork_with_label_areas.svg to print your artwork to a brother P-touch label printer connected via USB.

Dependencies

usvg

usvg can be installed using cargo install usvg.

usvg is used by taep to simplify the input SVG file before processing it.

resvg

resvg can be installed using cargo install resvg.

taep uses resvg to rasterize the SVG file.

didder

didder can be installed from source at https://github.com/makew0rld/didder.

taep uses didder to dither the rasterized input, because these thermal label printers can only print two colors and do not support grayscale.

ptouch-print (optional)

ptouch-print can be installed from source at https://git.familie-radermacher.ch/linux/ptouch-print.git.

taep uses ptouch-print when you ask it to print the generated labels using taep print. You can also use taep dither to just generate a pile of PNGs, and use something else to print them.

Command-Line Interface Usage

You can override where taep looks for usvg, resvg, didder and ptouch-print by passing the full path to a binary through the environment variables USVG, RESVG, DIDDER and PTOUCH_PRINT.

You can override didder’s dithering settings by passing the environment variable DIDDER_ARGS. The default value used when this variable is not set is edm –serpentine FloydSteinberg.

bigdata~/p/taep <3 python -m taep --help
Usage: python -m taep [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  assembly
  dither
  preview
  print
  template

taep template

bigdata~/p/taep <3 python -m taep template --help
Usage: python -m taep template [OPTIONS] [OUTPUT_SVG]

Options:
  --num-rows INTEGER    Number of tapes
  --tape-width FLOAT    Width of tape
  --tape-border FLOAT   Width of empty border at the edges of the tape in mm
  --tape-spacing FLOAT  Space between tapes
  --tape-length FLOAT   Length of tape segments
  --magic-color TEXT    SVG color of tape
  --help                Show this message and exit.

taep preview

bigdata~/p/taep <3 python -m taep preview --help
Usage: python -m taep preview [OPTIONS] [INPUT_SVG] [OUTPUT_SVG]

Options:
  --magic-color TEXT      SVG color of tape
  --dpi FLOAT             Printer bitmap resolution in DPI
  --pixel-height INTEGER  Printer tape vertical pixel height
  --help                  Show this message and exit.

taep dither

bigdata~/p/taep <3 python -m taep dither --help
Usage: python -m taep dither [OPTIONS] [INPUT_SVG] OUTPUT_DIR

Options:
  --magic-color TEXT      SVG color of tape
  --dpi FLOAT             Printer bitmap resolution in DPI
  --pixel-height INTEGER  Printer tape vertical pixel height
  --help                  Show this message and exit.

taep print

bigdata~/p/taep <3 python -m taep print --help
Usage: python -m taep print [OPTIONS] [INPUT_SVG]

Options:
  --magic-color TEXT        SVG color of tape
  --dpi FLOAT               Printer bitmap resolution in DPI
  --pixel-height INTEGER    Printer tape vertical pixel height
  --confirm / --no-confirm  Ask for confirmation before printing each tape
  --tape TEXT               The index numbers of which tapes to print. Comma-
                            separate list, each entry is either a single
                            number or a "3-5" style range where both ends are
                            included.
  --help                    Show this message and exit.

taep assembly

bigdata~/p/taep <3 python -m taep assembly --help
Usage: python -m taep assembly [OPTIONS] [INPUT_SVG] [OUTPUT_SVG]

Options:
  --magic-color TEXT      SVG color of tape
  --dpi FLOAT             Printer bitmap resolution in DPI
  --pixel-height INTEGER  Printer tape vertical pixel height
  --help                  Show this message and exit.

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

taep-1.0.0rc2.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

taep-1.0.0rc2-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file taep-1.0.0rc2.tar.gz.

File metadata

  • Download URL: taep-1.0.0rc2.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.8

File hashes

Hashes for taep-1.0.0rc2.tar.gz
Algorithm Hash digest
SHA256 4c736c6b633dd951c77dc0cdd267aeb0a0247c4574da422e839555c39eeed7d7
MD5 160b2f81fa4a765c12f53abd673ecc1b
BLAKE2b-256 7f7633a37e127ad92670fe5fe0c477093771a5c40e63729d791fa3311413212a

See more details on using hashes here.

File details

Details for the file taep-1.0.0rc2-py3-none-any.whl.

File metadata

  • Download URL: taep-1.0.0rc2-py3-none-any.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.8

File hashes

Hashes for taep-1.0.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 78f4ff5039de173ee5801c6443b0188adebbfb5557f3b5b4de263142db6f0dc1
MD5 fe15ba425f6b78018f1c43a86ca491e8
BLAKE2b-256 ed87c501faf2032a3b68b7e3f6e2bff49fcf48c8e95c00084e5a8cbf0f5c0618

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