luav / tag-layouter

Utility to draw families of tag on a paper sheet

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tag-layouter

Utility to draw families of tag on a paper sheet

Requirements

Installation

This software is not to be installed system wise, but rather used locally.

	cd tag-layouter
	git submodule init
	fit submodule update
	make

Usage

To see all command line options:

./tag-layouter -h
Flag Description Default
-f --file= File path to output
-t --family-and-size= Tag family and size to use. format: 'name:size:begin-end'
--column-number= Number of columns to display multiple families 0
--individual-tag-border= Space between the border of two tags 0.2
--cut-line-ratio= Ratio of the border between tags that should be a cut line 0.0
--family-margin= Margin between tag families [mm] 2.0
--arena-number= Number of tags to display in an arena 0
-W --width= Width to use [mm] 210
-H --height= Height to use [mm] 297
--paper-border= Border width for arena or paper [mm] 20.0
-d --dpi= DPI to use 2400

Explanation

Tag family configuration

name:size:begin-end: name specifies the tag family.

size specifies the edge length of a single tag in mm.

begin-end specifies the range of tag IDs. Use 0- if all IDs of a given family should be printed.

Tags for setup testing

Using the arena-number flag produces a page with a number of tags of one given tag familiy placed in random positions and orientations. This is useful to test the setup, e.g. the lighting and camera setting.

Tags for production

Using the column-number flag, produces the sets of the tag families specified by multiple -t (or --family-and-size) arguments arranged rectangularily and in the given number of columns for cutting.

The individual-tag-border specifies the the border between two adjacent tags of the same family.

The familiy-margin option specifies the space between two tag families.

The cut-line-ratio specifies the thickness of the cutting line (ratio of the thickness of the printed cutting line and the disctance between adjacent tags).

General options

widht, height, paper-border and dpi are specified with respect to the printing page layout.

How to wrap up everythin: using a shell script

The tag-layouter program will have a lot of option. One solution is to summarize them in a shell script, such as [generate_dlr.sh].

Printing

The best option for prininting is to use raw image format rather than PDF / SVG. Indeed the ratserisation of these files may produce artifact that will leave the tags unusable.

A good option is to prefer the TIF format and use a program like GIMP to print it.

You can add resolution information to any tiff image usinge imagemagick

To install imagemagick on Debian/Ubuntu :

sudo apt install imagemagick

And to set the correct image resolution (here 1200 PPI ) :

convert <my-file.tiff> -units PixelsPerInch -density 1200 <my-file.tiff>

About

Utility to draw families of tag on a paper sheet


Languages

Language:C 70.3%Language:Go 27.4%Language:Shell 1.8%Language:Makefile 0.5%