segno

Synopsis

segno [options] content

Description

segno creates QR Codes and Micro QR Codes.

It can be used to print the codes to a terminal or to serialize them in several output formats (like SVG and PNG).

Command Line Options

--ver, -V

Shows Segno’s version and exit

-h, --help

Show a help message which lists all commands and exit

QR Code Options

--version VERSION, -v VERSION

QR Code version: 1 .. 40 or Micro Code Version “M1”, “M2”, “M3”, “M4”

--error {L,M,Q,H,-}, -e {L,M,Q,H,-}

Error correction level: “L”: 7% (default), “M”: 15%, “Q”: 25%, “H”: 30%, “-“: no error correction (used for M1 symbols)

--mode {numeric,alphanumeric,byte,kanji,hanzi}, -m {numeric,alphanumeric,byte,kanji,hanzi}

Mode. If unspecified (default), an optimal mode is chosen for the given input.

--pattern PATTERN, -p PATTERN

Mask pattern to use. If unspecified (default), an optimal mask pattern is used. Valid values for QR Codes: 0 .. 7 Valid values for Micro QR Codes: 0 .. 3

--encoding ENCODING

Specifies the encoding of the provided content. If not specified (default) either ISO 8859-1 is used or if it does not fit, UTF-8 or Shift_JIS (for Kanji content) is used.

--micro

Allow the creation of Micro QR Codes

--no-micro

Disallow creation of Micro QR Codes (default)

--no-error-boost

Disables the automatic error correction level incrementation. By default, the maximal error correction level is used (without changing the version).

--seq

Creates a sequence of QR Codes (Structured Append mode). The --version or --symbol-count must be provided

--symbol-count SYMBOL_COUNT, -sc SYMBOL_COUNT

Number of symbols to create

--border BORDER, -b BORDER

Size of the border / quiet zone of the output. By default, the standard border (4 modules for QR Codes, 2 modules for Micro QR Codes) will be used. A value of 0 omits the border

Output Options

--scale SCALE, -s SCALE

Scaling factor of the output. By default, a scaling factor of 1 is used which can result into too small images. Some output formats, i.e. SVG, accept a decimal value.

--output OUTPUT, -o OUTPUT

Output file. If not specified, the QR Code is printed to the terminal

--compact

Indicates that the QR code should be printed to the terminal in a more compact manner.

Module Colors

Arguments to specify the module colors. Multiple colors are supported for SVG and PNG. The module color support varies between the serialization formats. Most serializers support at least “–dark” and “–light”. Unsupported arguments are ignored.

--dark DARK

Sets the (default) color of the dark modules. The color may be specified as web color name, i.e. “red” or as hexadecimal value, i.e. “#0033cc”. Some serializers, i.e. SVG and PNG, support alpha channels (8-digit hexadecimal value) and some support “transparent” as color value. The standard color is black

--light LIGHT

Sets the (default) color of the light modules. The standard value is either white or transparent. See --dark for a description of allowed values.

--align-dark ALIGN_DARK

Sets the color of the dark modules of the alignment patterns. See --dark for a description of allowed values.

--align-light ALIGN_LIGHT

Sets the color of the light modules of the alignment patterns. See --dark for a description of allowed values.

--dark-module DARK_MODULE

Sets the color of the dark module. See --dark for a description of allowed values.

--data-dark DATA_DARK

Sets the color of the dark data modules. See --dark for a description of allowed values.

--data-light DATA_LIGHT

Sets the color of the light data modules. See --dark for a description of allowed values.

--finder-dark FINDER_DARK

Sets the color of the dark modules of the finder pattern. See --dark for a description of allowed values.

--finder-light FINDER_LIGHT

Sets the color of the light modules of the finder pattern. See --dark for a description of allowed values.

--format-dark FORMAT_DARK

Sets the color of the dark modules of the format information. See --dark for a description of allowed values.

--format-light FORMAT_LIGHT

Sets the color of the light modules of the format information. See --dark for a description of allowed values.

--quiet-zone QUIET_ZONE

Sets the color of the quiet zone (border). See --dark for a description of allowed values.

--separator SEPARATOR

Sets the color of the separator. See --dark for a description of allowed values.

--timing-dark TIMING_DARK

Sets the color of the dark modules of the timing pattern. See --dark for a description of allowed values.

--timing-light TIMING_LIGHT

Sets the color of the light modules of the timing pattern. See --dark for a description of allowed values.

--version-dark VERSION_DARK

Sets the color of the dark modules of the version information. See --dark for a description of allowed values.

--version-light VERSION_LIGHT

Sets the color of the light modules of the version information. See --dark for a description of allowed values.

SVG Options

--no-classes

Omits the (default) SVG classes

--no-xmldecl

Omits the XML declaration header

--no-namespace

Indicates that the SVG document should have no SVG namespace declaration

--no-newline

Indicates that the SVG document should have no trailing newline

--title TITLE

Specifies the title of the SVG document

--desc DESC

Specifies the description of the SVG document

--svgid SVGID

Indicates the ID of the <svg/> element

--svgclass SVGCLASS

Indicates the CSS class of the <svg/> element (default: ‘segno’). An empty string omits the attribute.

--lineclass LINECLASS

Indicates the CSS class of the <path/> elements. An empty string omits the attribute.

--no-size

Indicates that the SVG document should not have “width” and “height” attributes

--unit UNIT

Indicates SVG coordinate system unit

--svgversion SVGVERSION

Indicates the SVG version

--svgencoding ENCODING

Specifies the encoding of the document

--draw-transparent

Indicates if invisible paths should be added to the SVG document. By default all transparent paths are omitted.

PNG Options

--dpi DPI

Sets the DPI value of the PNG file

Exit Status

segno exits 0 on success, and >0 if an error occurs.

Examples

$ segno "Up jumped the devil"

Prints a 2-Q QR code to the terminal

$ segno --compact "I am the walrus"

Prints a 1-L QR code to the terminal in a more compact manner

$ segno -o=yesterday.png "Yesterday"

Saves the 1-Q QR code as PNG image.

$ segno -o=fool.svg --title="Example QR code" "The Fool on the Hill"

Saves the 2-Q QR code as SVG document with the given title.

$ segno -o=a-day-in-the-life.svg --scale=10 --dark darkblue "A Day in the Life"

Saves the 1-L QR code as SVG document, using a scaling factor of 10 and the dark modules use the color “darkblue” instead of black.

$ segno -o rain.png -s 4 --dark "#003399" --micro RAIN

Saves the Micro QR Code (M2-M) as PNG image, using the color #003399 for dark modules. Each module corresponds to 4 x 4 pixels because the scaling factor was set to 4.