Printing labels with ConTEXt



Similar documents
LETTERS, LABELS &

Word 2007: Basics Learning Guide

Conditions for Designing Mail Items

How to create labels using a Microsoft Access data file?

Microsoft Word 1A: Business Letters: Format, Text Wrap, Insert Text Box, Logo

BARCODE PRINTING SET UP BARCODE PRINTING

What is a barcode? To take advantage of barcoding, customers need to: Barcoding provides the following benefi ts: Barcodes and Business Letter

CREATING YOUR OWN PROFESSIONAL WEBSITE

The Barcode Printing option may be purchased for an additional cost. You will receive a CD that you will use to activate this feature.

Merging Labels, Letters, and Envelopes Word 2013

Intro to Mail Merge. Contents: David Diskin for the University of the Pacific Center for Professional and Continuing Education. Word Mail Merge Wizard

HIT THE GROUND RUNNING MS WORD INTRODUCTION

Catalog Creator by On-site Custom Software

Microsoft Dynamics GP. Advanced Financial Analysis

Guide To Creating Academic Posters Using Microsoft PowerPoint 2010

Guide to design and layout

Formatting Text in Microsoft Word

Microsoft Word 2010 Prepared by Computing Services at the Eastman School of Music July 2010

DIRECTIONS FOR SETTING UP LABELS FOR MARCO S INSERT STOCK IN WORD PERFECT, MS WORD AND ACCESS

Publisher 2010 Cheat Sheet

SAPScript. A Standard Text is a like our normal documents. In Standard Text, you can create standard documents like letters, articles etc

Help Guide - CSR Portal

Excel Formatting: Best Practices in Financial Models

Create Mailing Labels from an Electronic File

When older typesetting methods gave

USER MANUAL Version 4

KOMPOZER Web Design Software

User Guide. DYMO Label TM v.8

Printing Solutions for Word Printing Solutions for Word Printing Solutions for Word Printing Solutions for Word 2003

Customer Barcoding Technical Specifications

Step 1: Setting up the Document/Poster

DOCMAIL: ADVANCED USER GUIDE. Version 2.4 February 2016

4. Click on the insert tab: Create a title at the top of the page using word art that says Microsoft Word PD 11-12

Choose a topic from the left to get help for CmapTools.

ECDL / ICDL Word Processing Syllabus Version 5.0

Understanding SKUs. This ebook explains why and how to manage your product SKUs successfully.

MAIL MERGE USING WORD & EXCEL 2003

Moneyspire Help Manual Moneyspire Inc. All rights reserved.

User Manual Microsoft Dynamics AX Add-on LabAX Label Printing

Adjunct Assistant Professor Gayle Rembold Furbert. Typography II. County College of Morris Graphic Design Degree Program

PostalSaver Guide for Australia

MICROSOFT WORD: MAIL MERGE

Customizing forms and writing QuickBooks Letters

Avery DesignPro 2000 User Guide

Envelope + Postcard Layout Standards

Preparing a one column paper with MS-Word for Windows

Brand Guidelines Stationery - Business Cards

Chapter 15 Using Forms in Writer

Visual Communication Program Assessment Revised Graphic Design Portfolio Checklist/Assessment

EXCEL 2010: PAGE LAYOUT

TOLEDO MOLDING & DIE, INC.

Chapter Using Mail Merge

Sample Table. Columns. Column 1 Column 2 Column 3 Row 1 Cell 1 Cell 2 Cell 3 Row 2 Cell 4 Cell 5 Cell 6 Row 3 Cell 7 Cell 8 Cell 9.

Forms Printer 2500 Series

Client Database chapter4page 1 of 15

Basic Microsoft Excel 2007

IBM Emulation Mode Printer Commands

Creating an invitation

Digital Workflow How to make & use digital signatures

Import Filter Editor User s Guide

User Guide LabelManager 420P

Creating Forms with Acrobat 10

LABELS ANYWHERE FAQ. A: The system requires you to download ActiveX component the first time you attempt to print labels.

Using Mail Merge to Create Form Letters and Labels

ADMINISTRATORS GUIDE EPISUITE 6

Handout: How to Use Excel 2010

Salary Review Spreadsheets

Creating PDF Forms in Adobe Acrobat

Thesis Format Guide. Denise Robertson Graduate School Office 138 Woodland Street Room

Excel 2007 Basic knowledge

Graphic Design Basics. Shannon B. Neely. Pacific Northwest National Laboratory Graphics and Multimedia Design Group

Writer Guide. Chapter 15 Using Forms in Writer

The CDS-ISIS Formatting Language Made Easy

How to Format a Bibliography or References List in the American University Thesis and Dissertation Template

Frog VLE Update. Latest Features and Enhancements. September 2014

A Guide to the. LaGrange College Athletics. Visual Identity Program. Publication Date: March 1, LaGrange College. All rights reserved.

Microsoft Word 2007 Module 1

Divide your material into sections, for example: Abstract, Introduction, Methods, Results, Conclusions

Enhanced Formatting and Document Management. Word Unit 3 Module 3. Diocese of St. Petersburg Office of Training Training@dosp.

Barcode Label Specification

Advice to USENIX authors: preparing presentation slides

User Names. Account Record Administration

Word Processing programs and their uses

Installing and using the driver

CONTENTM WEBSITE MANAGEMENT SYSTEM. Getting Started Guide

Website Development Komodo Editor and HTML Intro

How to Prepare a Book for Press With InDesign

Q&As: Microsoft Excel 2013: Chapter 2

STUDENT MANUAL. Word 2013: Mail Merge and Macros. Towson University. Office of Technology Services. OTS Training

User Manual Printer driver PRO 300 / ECO 200 / Express Plus / Pegasus State: April

Basic Formatting of a Microsoft Word. Document for Word 2003 and Center for Writing Excellence

Excel 2007 A Beginners Guide

Sage Accountants Business Cloud EasyEditor Quick Start Guide

Microsoft Expression Web Quickstart Guide

Transcription:

40 MAPS 37 Willi Egger Printing labels with ConTEXt Abstract Sometimes one needs to print a single label which will be glued onto a package, a large envelope or for the identification of a box. In certain situations one wants to produce a series of identical labels or one needs to typeset whole databases of addresses. ConTEXt offers the possibility of using the XY-arranging procedure to print on each of the labels being present on a sheet. Here a possible approach is presented for labels of the size 105 42.3mm i.e. (14 labels on a A 4 ). It is shown how to print a single label but also how to get multiple copies of the same content and how to prepare sheets of labels containing the addresses of a database. Keywords Maps, Context, layer, label, XY-arrangement Introduction Like the address-printing on an envelope, as described in an other article in this MAPS, printing labels from a multi-label sheet is not easy in the beginning. The issue often is, that only a single label is needed. The goal is to be able to use all of the labels on a given sheet one after the other. When creating a tool to use all the labels, the sheet must be sent through the (laser-)printer as many times as there are labels on the sheet. Due to the fact that the carrier-sheet of the labels is quite thin, it is necessary to use the labels from bottom up. In the following article a possible setup is given. The solution makes use of the XY-arrangement and layers. Those who want to prepare bulk mailings in The Netherlands should also think of using the KIX-code (klantenindexcode, customer index code). The Dutch mail service TNT provides a barcode-font. With this font it is possible to print this code directly on the label. Guidelines as provided by TNT The Dutch Mail Service TNT provides guidelines for making a label. This information is also applicable to the printing of addresses on envelopes (See the other article in this MAPS). In general one uses three to a maximum of six lines per address. The last line consists of the ZIP-code and the place, which is always printed in uppercase characters. The before last line contains either the street name + house number and possibly an extension to the house number or the P.O. box + number. Before these two lines a to the attention of line can be added. The other lines will contain other information concerning the address of the receiver. In The Netherlands, one has the opportunity to add a so called customer index code KIX (klantenindexcode) in the form of a barcode. This code is unique for each address. The barcode is composed of the ZIP-code + house number (or P.O. box + number) + separator character X + house number extension. The KIX-code must be printed at 10pt. Print the KIX-code at the top of the address or as an additional line beneath the address. Always keep a minimal distance of 2mm but no more than 15mm from the last line of the address. KIX-codes should not be printed with matrix-printers due to the printout quality of these printers. For sending mail to foreign countries the name of the receiver's country is marked down in uppercase characters as the last line of the address. Do not use KIX-codes for mail to a foreign country. The guidelines advise you to use sans-serif fonts in the address whenever possible. Italic, script fonts, gothic fonts, matrix-characters, condensed and expanded fonts are advised against because they negatively in uence the automatic read results. The character size should be no less than 7pt, nor should it exceed 17pt. It is advised to use uppercase characters throughout the address if the character size is less than 10pt. There are even more guidelines on how to setup the alignment, the interline space and the use of spaces between words and underlining. If one lets TEX typeset the text, those aspects should be within the given rules. Return address In The Netherlands one can place the return-address on top of the receiver's address. It is important that this is a single line only and it must be separated from the receiver's address by a thick rule of at least 1.2mm. The white space between the rule and the rst line of the receiver's address should be 5mm.

Printing labels with ConTEXt NAJAAR 2008 41 Installing the KIX-font for MKIV Download the KIX-font (ttf format). Unpack the zip- le and copy the font into a font-directory, where you prepare a new foundry map e.g. TNT in the ttf-directory. There are different options to make the new font known to ConTEXt. Along the method for other fonts one can write a type-script- le containing the following lines: \starttypescript [sans] [kix] [KIX-Roman] [file:kixbrg][features=default] \starttypescript [sans] [kix] [name] [Sans][KIX-Roman][features=default] \starttypescript [KIX] \definetypeface [KIX][ss][sans][kix][default] Save the type-script- le in the user directory of ConTEXt as type-tnt-kix.tex. Run luatools --generate. Now one can add the KIX-font in the preamble of the working le: \usetypescriptfile[type-tnt-kix] \usetypescript[kix] For typing the actual KIX-code a small macro is de ned as follows: \def\kix#1% {\switchtobodyfont[kix,ss,10pt]#1} Because the KIX-font does not have any different styles and one uses it invariably in a single way, there is also a shorter way to tell ConTEXt how to use this font. First a font synonym is created, where a symbolic name is linked to the font- le-name. [KIX][file:kixbrg][features=default] Again we de ne a macro for typesetting the KIX-code \def\kix {\groupedcommand {\definedfont[kix at 10pt]}{}} The contents of the label The contents will consist of two elements. First, at the top of the label, the return-address is typeset with a thick black rule underneath. For this purpose one can use a buffer. \startbuffer[returnaddress] \framedtext [frame=off,bottomframe=on, rulethickness=2pt, offset=5pt]% {Willi Egger,, } The receiver's address is also placed in a buffer. \startbuffer[receiver] \startbuffer[receiverkix] \KIX{5836BB2} \startbuffer[receiverabroad] THE NETHERLANDS Setting up the tool The rst thing one has to do is to get the precise dimensions of the labels. For this example a standard A 4 -label-sheet carrying 14 labels arranged in two columns is used. The sheet has no print-margins, so the labels ll the whole sheet. The labels are 105mm wide and 42.3mm high.

42 MAPS 37 Willi Egger Next we de ne a paper-size with the measured dimensions of the label. \definepapersize [height=42.3mm,width=105mm] Now we tell ConTEXt that we will place this new paper-size on A 4 : \setuppapersize[a4,portrait] Because we will place multiple labels i.e. pages on the A 4 we set up the paper/sheet as follows. \setuppaper [topspace=0mm, backspace=0mm, dx=2mm, dy=0mm, nx=2, ny=7, margin=0, width=210mm, height=297mm] Now we need to instruct ConTEXt how the label/page should be set up. \setuplayout [topspace=4mm, backspace=5mm, margin=0mm, width=95mm, height=34mm, header=0mm, footer=0mm] Finally we instruct ConTEXt to use XY-arranging according to the parameters set in the \setuppaper-block. We will get 2 columns with 7 labels each (14 labels in total). \setuparranging[xy] Because the content of the buffers is in \framedtext we setup the behaviour of \framedtext with \setupframedtexts [width=\textwidth,frame=off,offset=5pt] In the following steps we set up the content of the label. One way to do this is to de ne a layer with the dimensions of the label. \definelayer [width=\paperwidth,height=\paperheight] We de ne two variables. The rst one indicates which of the labels on the sheet will be used. The second de nes the total number of labels on the sheet. \def\uselabel{8} % label(s) to be typeset \def\totallabels{14} % No. of labels per sheet In order to get the address typeset on the correct label, we loop over the number of labels on the sheet. If the counter equals the number de ned in \Uselabel, ConTEXt typesets the label, otherwise it typesets nothing and moves on to the next label. \dostepwiserecurse {1} {\Totallabels} {1}% {\ifnum\recurselevel=\uselabel { location={right,bottom}, y=-5mm,x=-3.5mm] {\switchtobodyfont[8pt]% \getbuffer[retunraddress]} [Etiket] [preset=leftbottom, location={right,top}, y=.9cm,x=-3mm] \getbuffer[receiver]}} \else { location={right,bottom}] {\strut}} \fi \placelayer \page } In the future, there may be a need to de ne other label-sizes. Once you have more label-sizes de ned, it is easier to put static information into an environment- le. All different de nitions are written into a mode-paragraph. The le we actually work with will contain the list of modes that can be enabled, the call for the environment le and de nitions of the label to be used as well as the total number of labels on a sheet. The receiver's address is put in a buffer. By means

Printing labels with ConTEXt NAJAAR 2008 43 Willi Egger,, \def\keepempty{4} % Skip over the first 4 labels \def\quantity{10} Willi Egger,, 5836BB2 Willi Egger,, THE NETHERLANDS Figure 1. Results of the Examples of Different setups for Single Labels of testing the active mode the respective loop-block is executed. So this le could look like this: \enablemode[xxx] \environment layout \def\uselabel{2} \def\totallabels{} \startbuffer[receiver] \doifmode{xxx}{% \dostepwiserecurse {1}{\Totallabels}{1}{ }} Typesetting multiple labels with the same content Sometimes one would like to typeset a series of labels with the same content. What one can do, is to de ne the labels, which should be skipped. De ne the quantity of the labels needed. By means of looping over the number of labels one can get the desired result. \dorecurse{\keepempty}{% [preset=righttop, location={left,bottom}] {\strut} \placelayer \stopstandardmakeup} \dorecurse{\quantity}{% [preset=righttop, location={left,bottom}, x=8mm] \getbuffer[labelcontent]} \placelayer \stopstandardmakeup} Typesetting series of labels with different content If you have to deal with mailings, then one needs to be able to process e.g. a database with address-data. Provided that the database has the desired structure one can typeset the labels. For the labels used for the NTG-mailings, the following setup is used. There is a layout le containing the static information. It holds a mode-paragraph de ning the label-size, paper-setup, layout-setup and arranging-setup as described above. For each member a buffer is prepared based on the members database. At the beginning of that le there is a de nition of the total number of addresses contained in the database. \def\addresses{200} \startbuffer[adr52] Dhr. W. Egger

44 MAPS 37 Willi Egger In the actual le, which is typeset the mode is enabled and the environment le is loaded. Then the database le is read in. Hereafter a loop over the total number of addresses is started. \enablemode[ntg-labels] \environment layout \input MAPS36 \dorecurse {\Addresses} { [preset=leftbottom, location={right,top}, y=-3mm,x=-3mm] \getbuffer[adr\recurselevel]} location={right,bottom}, y=.9cm,x=-3.5mm] {\switchtobodyfont[5pt]% \getbuffer[retouraddress]} \placelayer \stopstandardmakeup } Conclusion Label printing on a sheet containing several labels is a tricky job, due to the fact that the information must be placed very accurately. In many environments one can print labels, however it is often not possible to indicate which of the labels should be used. With the described approach in ConTEXt it is possible to use all the labels on a sheet. The use of loops makes it possible to typeset either multiple copies of the same information or to typeset an address-database. The tool can easily be adapted to the purpose required. Willi Egger w.egger@boede.nl