Manually Creating Product Templates =================================== This document is a reference for manually creating *gLabels* product templates. *gLabels* searches for templates in several locations as described here:
Location | Description -----------------------------------------|----------------------------------------- ${prefix}/share/libglabels-qt/templates/ | Predefined templates distributed with glabels. ${XDG_CONFIG_HOME}/libglabels/templates | User defined templates created with the gLabels Template Designer. ${HOME}/.glabels | Manually created templates should be placed here. Assumptions/caveats ------------------- A sheet contains only one size of label or card (if a sheet contains more than one size of item, it can be split into multiple templates for multiple pass printing). Distances can be expressed in units of *pt*, *in1*, *mm*, *cm*, or *pc*. For example: `"1.0in"` or `"2.54cm"`. If no units are specified, computer points (*pt*) will be assumed (1 *pt* = 1/72 *in* = 0.352778 *mm*). Template Files -------------- A template file contains a single *Glabels-templates* top-level node. ```xmlA *Label-ellipse* node describes the dimensions of a single label or business card that is elliptic in shape.
Property | Description |
*id* |
Reserved for future use. Should always be 0. |
*width* |
Width of the ellipse |
*height* |
Height of the ellipse |
*waste* |
Amount of waste (over-print) to allow. This is useful for minimizing alignment problems when using non-white backgrounds (e.g. images). |
*Label-ellipse* parameters
A *Label-round* node describes the dimensions of a simple round label (not a CD).
Property | Description |
*id* |
Reserved for future use. Should always be 0. |
*radius* |
Radius (1/2 diameter) of label |
*waste* |
Amount of waste (over-print) to allow. This is useful for minimizing alignment problems when using non-white backgrounds (e.g. images). |
*Label-ellipse* parameters
A *Label-cd* node describes the dimensions of a CD, DVD, or business card CD.
Property | Description |
*id* |
Reserved for future use. Should always be 0. |
*radius* |
Outer radius of label |
*hole* |
Radius of concentric hole |
*width* |
If present, the label is clipped to the given width. (Useful for "business card CDs"). |
*height* |
If present, the label is clipped to the given height. (Useful for "business card CDs"). |
*waste* |
Amount of waste (over-print) to allow. This is useful for minimizing alignment problems when using non-white backgrounds (e.g. images). |
CD label parameters
Templates may contain optional markup nodes. These nodes are used to describe
a simple set of markup lines that are visible in the
A *Markup-margin* describes a margin along all edges of a label.
Property | Description |
*size* |
Size of the margin. I.e. the distance of the margin line from the edge of the card/label. |
A *Markup-line* node describes a markup line.
Property | Description |
*x1* |
x coordinate of 1st endpoint of the line segment. |
*y1* |
y coordinate of 1st endpoint of the line segment. |
*x2* |
x coordinate of 2nd endpoint of the line segment. |
*y2* |
y coordinate of 2nd endpoint of the line segment. |
A *Markup-circle* describes a markup circle.
Property | Description |
*x0* |
x coordinate of circle origin (center). |
*y0* |
y coordinate of circle origin (center). |
*radius* |
Radius of circle. |
A *Markup-rect* describes a markup rectangle.
Property | Description |
*x1* |
x coordinate of upper left corner of rectangle. |
*y1* |
y coordinate of upper left corner of rectangle. |
*w* |
Width of rectangle. |
*h* |
Height of rectangle. |
*r* |
Radius of rounded corners of rectangle. |
A *Markup-ellipse* describes a markup ellipse.
Property | Description |
*x1* |
x coordinate of upper left corner of ellipse. |
*y1* |
y coordinate of upper left corner of ellipse. |
*w* |
Width of ellipse. |
*h* |
Height of ellipse. |
A label node may contain multiple *Layout* children. If labels are arranged in a simple grid pattern, only one layout is needed. However, if labels are arranged in multiple grids, such as a running bond pattern, multiple *Layout* tags can be used.
A common example for multiple layouts is a sheet with three CD labels:
CD label sheet
The two labels on the left edge can be assigned to a grid, assuming we can define the coordinates for the top left label and the distance to the second label properly. The distance to the left edge is common to these labels. The third one on the right edge has no common distance values with the other ones, that's why we have to define a second layout, with unique coordinates for the top left corner of that label.
You can define multiple layouts only if the labels on the sheet
have the same shape. If your sheet contains different shapes, you have
to define each shape in another template separately. Future versions
of
A single label can always be treated as a grid of one.
Property | Description |
*nx* |
Number of labels/cards across in the grid (horizontal) |
*ny* |
Number of labels/cards across in the grid (vertical) |
*x0* |
Distance from left edge of sheet to the left edge of the left column of cards/labels in the layout. |
*y0* |
Distance from the top edge of sheet to the top edge of the top row of labels/cards in the layout. |
*dx* |
Horizontal pitch of grid. |
*dy* |
Vertical pitch of grid. |
Layout Parameters