This is the command cdlabelgen that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
PROGRAM:
NAME
cdlabelgen - CD/DVD labels, jewel case inserts, and envelopes creator. Generates
frontcards and traycards for CD cases, single-cd envelopes, DVD case inserts, as well as
output suitable for direct printing on CD/DVD.
SYNOPSIS
cdlabelgen [ -c <category> -s <subcategory> -i <item1%item2%etc> -f <itemsfile> -v
<num_items_cover> -e <cover_epsfile> -S
<cover_eps_scaleratio>[,<image_x_offset>,<image_y_offset_inches>] -E <tray_epsfile> -T
<tray_eps_scaleratio>[,<image_x_offset>,<image_y_offset_inches>] -d <date> -D -o
<outputfile> -t <template> -b -C -w -h -m -M -O -p -y <page_offset_inches> -l
<line_width_points>] --create-dvd-inside --create-dvd-outside --double-case
--create-cdlabel --rotate-endcaps --plaque-color <r,g,b> --category-color <r,g,b>
--subcategory-color <r,g,b> --text-color <r,g,b> -n <volume/number in set> --rows-columns
<row_count_for_items,column_count_for_items> --tray-overlay <overlay_epsfile>
--tray-overlay-scaleratio
<tray_overlay_image_scaleratio>[,<image_x_offset>,<image_y_offset_inches>]
VERSION
Version 4.1.0, October 2008
DESCRIPTION
cdlabelgen's purpose in life is twofold:
* To be run automatically and swiftly from a shell script and automatically generate a
frontcard and a traycard for a cd--usually data archive cd's. The traycard (which goes
behind the CD itself) is U-shaped and the ends of the CD case bear the label of what the
CD is. Inside inserts for DVDs are also supported.
* To have a minimum of dependencies--cdlabelgen only requires perl.
cdlabelgen was designed to simplify the process of generating labels for CD's. It
originated as a program to allow auto generation of frontcards and traycards for CD's
burned via an automated mechanism (specifically for archiving data), but has now become
popular for labelling CD compilations of mp3's, and copies of CDs. Note that cdlabelgen
does not actually print anything--it just spits out postscript, which you can then do with
as you please. It can also be combined with output from other programs such as
"barcodegen" - to print a barcode as a tray overlay image.
The latest version of cdlabelgen as well as this document can be found at
http://www.aczoom.com/tools/cdinsert/. The software package includes CGI scripts that can
be used to serve cdlabelgen over the internet. An older version may be available at:
http://www.red-bean.com/~bwf/software/cdlabelgen/.
cdlabelgen comes with several eps images for you to use on your labels. These images can
be found in /usr/local/lib/cdlabelgen or /usr/share/cdlabelgen or /opt/lib/cdlabelgen/ or
/usr/local/share/cdlabelgen, depending on your installation. Included are a Recycling
icon, an mp3 icon, the Compact Disc icon (with and without 'Digital' on it), Tux the
penguin, and the new Debian 'swirl' logo. Two color background images called Music Notes
are also available.
CDs: cdlabelgen prints a 'tongue' as part of the traycard. This folds around and is
viewable from the front in jewel boxes that are entirely clear (CD holder piece is not
opaque). If you do not have a clear CD holder in your jewel box, you may find it easier to
just cut the 'tongue' off--it's a bit easier to fold without it.
Paper Sizes: Normal CD cases, Slim CD cases, DVD inside inserts can be printed on a letter
or A4 sized page. CD/DVD Envelopes and DVD outside inserts will not fit on a letter sized
paper, a larger paper size will be needed to make it fit.
cdlabelgen requires Perl Version 5.003 or greater. Ghostscript is not required, but is
recommended so that you can test out your labels without wasting paper.
SWITCHES
-c, --category <category>
Set the category (title) for the CD
-s, --subcategory <subcategory>
Set the subcategory (subtitle) for the CD
-i, --items <items>
'items' should be a '%' separated list of items to print on the traycard of the CD.
Note that if the number of items are too many to fit on the tray card, cdlabelgen will
leave out some items at the end. cdlabelgen automatically flows the items into 2, 3,
4, or 5 columns and scales the fontsize accordingly, unless the "-P" option is used.
You can insert blank lines by inserting 2 percent signs in a row into the items list.
-f, --items-from-file <filename>
Get item names from file named filename. Each item should be on its own line separated
by carriage returns. cdlabelgen automatically flows the items into 2, 3, 4, or 5
columns and scales the fontsize or clips the items as needed. You can insert blank
lines by placing blank lines between items in this file.
Special commands can be embedded in the file, all of these commands should be present
starting at the first column of the line. The codes are used to change the font for
an item, the code itself is not printed in the output.
{#BI} - make the item bold and italic
{#I} - make the item italic
{#B} - make the item bold
{#M} - make the item mono-spaced (Courier font)
{#MB} - make the item monospaced and bold (Courier-Bold font)
Example:
{#MB} Text 1 Item
would print the line " Text 1 Item" in a monospaced bold font.
-v, --cover-items <number_of_items_for_cover>
Normally, all the items are printed on the tray card. But if you have a large number
of items, you may wish to print some items on the cover, and rest on the tray card.
This option provides a way of specifying how many items should be printed on the
cover. Default is 0 (i.e., print no item on the cover, print all items on the tray).
The items to be printed on the cover are taken from the list of items, from the top of
the list. Note that if the number of items is too many to fit on the cover, it will
result in items being dropped. As of Jan 2002, around 250-300 items can be fitted on
the cover or the tray, depending on whether a title/subtitle/date is used or not.
-d, --date <date>
Set the date to be used as 'date' if not set or not overridden with the -D flag,
today's date will be used (default is today's date). Use this option if you don't like
cdlabelgen's default format of YYCC-MM-YY, for example.
-D, --no-date
Do not print any date (overrides -d as well)
-e, --cover-image <cover_epsfile>
Filename of eps file to print on cover. Note that cdlabelgen requires that the eps
file contain a proper '%%BoundingBox LLx LLy URx URy' declaration according to the
PostScript Document Structuring Conventions. cdlabelgen uses this line to determine
the dimensions of the eps graphic so that it can position it appropriately on the
cover. Note that cdlabelgen first looks for this file in your working directory. If it
doesn't find it there, it will look in the list of directories where the default eps
files are stored (see @where_is_the_template). This makes it easy to use the images
shipped with cdlabgelgen without typing miles of pathnames.
-S, --cover-image-scaleratio <cover_eps_scaleratio
[,image_x_offset,image_y_offset_inches]>
The ratio by which you want to scale the epsfile that appears on the cover. If you
omit this flag, cdlabelgen assumes a scaleratio of 1.0. This flag allows you to
squeeze larger graphics into the cover or expand smaller graphics to fill the cover.
Scaleratio must be a number (int or float).
If the scale value passed is 0 (or 0.0), then the logo is used as a background image -
it will be scaled as required to fit the entire cover.
The -S option also takes optional translate arguments. Normally images are printed on
the cover and the tray so that the bottom-right of the image is anchored to the
bottom-right of the cover or tray. To move the images away from the bottom and right
borders, use this option. For example, to leave two inches of gap between the image
and the bottom border, and 0.5 inches from the left border, and use 1.0 scaleratio,
use this: -S 1.0,-2,0.5
This offset only applies when the image is being used as a logo - i.e., image is not
being used as background to fill the entire cover or tray.
-E, --tray-image <tray_epsfile>
Filename of eps file to print on traycard. Note that cdlabelgen requires that the eps
file contain a proper '%%BoundingBox LLx LLy URx URy' declaration according to the
PostScript Document Structuring Conventions. cdlabelgen uses this line to determine
the dimensions of the eps graphic so that it can position it appropriately on the
cover. Note that cdlabelgen first looks for this file in your working directory. If it
doesn't find it there, it will look in the list of directories where the default eps
files are stored (see @where_is_the_template). This makes it easy to use the images
shipped with cdlabgelgen without typing miles of pathnames.
-T, --tray-image-scaleratio <tray_eps_scaleratio [,image_x_offset,image_y_offset_inches]>
The ratio by which you want to scale the epsfile that appears on the traycard. If you
omit this flag, cdlabelgen assumes a scaleratio of 1. This flag allows you to squeeze
larger graphics into the traycard or expand smaller graphics to fill the traycard.
Scaleratio must be a positive number (int or float) specifying the scale.
If the scale value passed is the word fill1, then the image is used as a background -
it is scaled so that it completely fills the interior tray card region. The value 0
(or 0.0) works same as the fill1 argument.
If the value passed is the word fill2, then the image is used as a background to fill
more than just the tray. For normal CD cases, the image is scaled so that it
completely fills both the tray card region, and the two endcaps (but not the extreme
right-hand 'tongue-cap') for normal cd cases. For Slim CD cases or DVD Inside/Outside
covers, the tray image will fill both the tray and cover regions (including any
spines). For directly printing on a CD (--create-cdlabel), fill2 option works like
the fill1 option.
The -T option also takes optional translate arguments. Normally images are printed on
the cover and the tray so that the bottom-right of the image is anchored to the
bottom-right of the cover or tray. To move the images away from the bottom and right
borders, use this option. For example, to leave two inches of gap between the image
and the bottom border, and 0.5 inches from the left border, and use 1.0 scaleratio,
use this: -T 1.0,-2,0.5
This offset only applies when the image is being used as a logo - i.e., image is not
being used as background to fill the entire cover or tray.
-o, --output-file <outputfile>
If the -o flag is used, cdlabelgen prints to outputfile instead of STDOUT.
-t, --template <template>
Specify explicitly which template to use. This is useful if you need to debug the
PostScript code in the template, use a different template, or if you have created your
own template to use in lieu of the one provided with cdlabelgen.
-b, --no-tray-plaque
Suppresses printing of the Plaque on the traycard, thus allowing you to either fit
even more items on the traycard, or to use a slightly larger font size for the items.
-C, --no-cover-plaque
Suppresses printing of the plaque on the front cover, thus allowing a cover image that
fills the front cover, but still displaying category and sub-category information in
the other usual places.
-h, --help
print out the usage message
-w, --tray-word-wrap
Enables word wrapping of the items that print on the traycard. Note that this is *not*
extensively tested and may be buggy! Make sure that you preview your label before
printing it if you use this flag.
If there is a problem with "-w", the best option right now is to split lines in the
input itself, and to omit the "-w" option.
-m, --slim-case
Creates covers suitable for use in slim cd-cases, this means no tray card (the tray
card is now the inside front cover). This creates a two page, folding cover insert.
This could also be used in normal cd cases as an inside insert.
Slim case option can be used with outside dvd inserts ( --create-dvd-outside ) also -
in which case the outside insert is created for half-height DVD case.
-O, --outside-foldout
Output slim cd cover cases (or dvd inserts) with the order of the pages switched so
the folding line lies on the outside of a normal case. Can be used when printing
either the slim-cd-case or dvd-inside inserts.
This option is best used along with option -m (--slim-case) or --create-dvd-inside.
--rotate-endcaps
Endcap text is rotated by 180 degrees, to flip the text around.
-M, --create-envelope
Creates covers suitable for use as envelopes for a CD. Guide lines are printed, to aid
in folding the printout correctly.
--create-dvd-inside
Creates inserts suitable for use as inside insert for a normal DVD case. Guide lines
are printed, to aid in folding the printout correctly. Note: DVD inserts may not
print fully on Letter or A4 sized paper printers; it may require larger paper sizes.
--create-dvd-outside
Creates inserts suitable for use as outside cover inserts for a normal DVD case.
Guide lines are printed, to aid in folding the printout correctly. Note: DVD inserts
may not print fully on Letter or A4 sized paper printers; it may require larger paper
sizes.
Slim case option ( --slim-case ) can be used with outside dvd inserts also - in which
case the outside insert is created for half-height DVD case.
--double-case
Create covers for double-sided DVD cases that hold 6 DVDs. Only double-width DVD
cases are support, double-width CD cases are not supported. Therefore, using
--double-case also implies the --create-dvd-outside option.
--create-cdlabel
For directly printing on a CD or DVD. As of January 2005, there are inkjets printers
that can print on certain types of blank CD/DVD discs. Only a small number of items
can be printed on the CD, and the number of characters in the title and subtitle is
also limited. Always check the output visually by using PostScript viewers or
printing on paper, before printing on the CD.
With this option, the top portion of the disc represents the "cover" area - so
arguments related to the cover: title (--category), subtitle (--subcategory),
--no-cover-plaque, --cover-items, --cover-image, etc all apply to the top area. The
bottom portion of the disc represents the "tray" area, so arguments related to the
tray: --no-tray-plaque, --tray-image, etc all apply to the bottom area. The date
(--date) string, if present, is printed along the bottom curved edge of the disc.
Background images can be specified using the --cover-image option, modified as need by
the --cover-image-scaleratio. If --tray-image is also specified, note that the cover
image is printed first, then the tray image overwrites the cover image. The
title/items text is then finally printed over all the images.
The --no-tray-plaque and/or --no-cover-plaque (along with --cover-items) option is
also recommended with --create-cdlabel, otherwise there may be no space for any items
to be printed on the disc.
The --clip-items option is also recommended.
-p, --clip-items
Enables clipping of items; uses fixed font size for all items. Normally, the
template.ps used by cdlabelgen will try to fit an item in a given column by reducing
the font size if needed. This is ok if done for one or two items, but if done too
often, it makes the tray card look ugly, with text of varying font sizes.
Use this option to use a fixed width font for all items. If the item is too large to
fit in a column, the text will be clipped instead.
-y, --page-offset [<page_x_offset_inches,]<page_y_offset_inches
Use this to move the entire output up or down (y_offset), to make the output fit on
appropriate sized paper. For letter sized paper, 0.8 works well, and for A4 paper, 1.5
works well. The value is in units of inches. An optional X-axis offset can also be
specified. Default values: 1 inch for X-axis, 0.8 inches for Y-axis.
-l, --line-width <line_width_points>
Specify size in points of the edge and interior lines of the cover and tray card. If
this is 0, then the lines are omitted for both the cover and tray (but guide cut lines
are still printed). The size is specified in points (1 point is 1/72 inch).
--plaque-color <r,g,b>
Specify a color to fill plaque. Color must be specified using the rgb components,
each value should be between 0 and 255.
--category-color <r,g,b>
Specify a color for category. Color must be specified using the rgb components, each
value should be between 0 and 255.
--subcategory-color <r,g,b>
Specify a color for subcategory. Color must be specified using the rgb components,
each value should be between 0 and 255.
--text-color <r,g,b>
Specify a color for text - this is used for the list of items, and the date display
under the plaque and in the end-caps. Color must be specified using the rgb
components, each value should be between 0 and 255.
-n, --number-in-set <string>
Append volume information to the end of the date string. This should be a single
string. If used in conjuction with "-D", it will be in place of the date; otherwise,
it is appended to the date as " - <number-in-set>"
--rows-columns <row_count_for_items,column_count_for_items>
The --rows-columns options forces the list of items to be printed using that many
rows, and that many columns. Both numbers have to be provided, no spaces, for
example: --rows-columns=11,3
The list of items is laid out in top-down, left-to-right fashion. Use blank items in
the input, to get appropriately aligned columns.
--rows-columns applies to the list of items wherever they are printed - normally on
the tray only, but may include cover, or the top and bottom portions of the round
printouts for direct CD label printing. Same values apply to all these variations, so
if you need different number of rows/columns for cover vs tray, you can use two
different runs of cdlabelgen, to get two postscript files, and pick the cover from one
printout, and tray from the other. This will work for jewel-case inserts, but may not
work for direct CD label printing.
--tray-overlay overlay_epsfile
Filename of eps file to print as overlay on traycard. This image is printed over the
background image (tray-image) as well as the list of items. Therefore, this is useful
for things like barcodes. In terms of EPS file requirements, see the --tray-image
option description.
--tray-overlay-scaleratio
tray_overlay_image_scaleratio[,image_x_offset,image_y_offset_inches]
The ratio by which you want to scale the epsfile that is used with the --tray-overlay
option, and optionally to translate the overlay. Normally overlay image is printed on
the tray so that the bottom-right of the image is anchored to the bottom-right of the
tray. To move the images away from the bottom and right borders, use this option. For
example, to leave 0.1 inches of gap between the image and the bottom border, and 0.2
inches from the right border, and use 1.0 scaleratio (no scaling), use this:
--tray-overlay-scaleratio 1.0,-0.2,0.1
EXAMPLES
cdlabelgen -c "My Filesystem"
-s "/usr/local/foo"
-e postscript/recycle.eps > foo.ps
cdlabelgen -c "title of cd"
-s "subtitle"
-i "Item 1%and Item 2%a third item here perhaps"
-e postscript/recycle.eps -o bar.ps
cdlabelgen -c "Fitz"
-s "home directory"
-o qux.ps
cdlabelgen -c "Backups"
-s "home directory"
-n "4 of 5"
Direct printing on a CD or DVD, if file "example5.txt" has list of items:
cdlabelgen --clip-items --no-tray-plaque --date "Jan 2005"
-c "Collections 12" -s "- english songs -"
--cover-image "music2.eps" --cover-image-scaleratio 0.0
--tray-image "mp3.eps" --tray-image-scaleratio 0.5,-0.5,2
--page-offset 0.5,0.5 -f example5.txt -o test.ps
CHARACTER ENCODINGS - using ogonkify
cdlabelgen uses the Helvetica family of fonts for various text items, using the default
encoding of ISO-Latin1.
To use other encodings, the "ogonkify" program can be used; this is a package available at
http://www.pps.jussieu.fr/~jch/software/ogonkify/ The output from cdlabelgen can be piped
into ogonkify, example for Latin2 encoding:
cdlabelgen <args> ⎪ ogonkify -H -eL2 > <outputfilename>
See the man page for ogonkify for other possible values for the encoding.
Hint: if you always work with a particular encoding, you can just run ogonkify on
template.ps - and use the output as the new template.ps.
ogonkify -H -eL2 template.ps > template-enc.ps
This way ogonkify has to be run only once, cdlabelgen output will contain the correctly
encoded fonts from the modified template.ps. Use the -t cdlabelgen option to specify the
new template-enc.ps file, or save the old template.ps and renmae template-enc.ps to
template.ps.
PRINTING
When using tools such as Adobe Acrobat to print the .ps or a .pdf file, make sure that
"Fit To Paper" option is unchecked. Also uncheck any option that will perform scaling up
or down of the cdlabelgen output file.
Failure to do so will result in incorrect size printouts.
Paper Sizes: Normal CD cases, Slim CD cases, DVD inside inserts can be printed on a letter
or A4 sized page. CD/DVD Envelopes and DVD outside inserts will not fit on a letter sized
paper, a larger paper size will be needed to make it fit.
When using different sized paper, experimentation with the -y (also: --page-offset)
[<page_x_offset_inches,]<page_y_offset_inches> option may be required to place the image
in the printable region of the paper.
Use cdlabelgen online using onworks.net services