Skip to main content
Skip table of contents

HqnLayout blocks

This page applies to Harlequin v13.1r0 and later; both Harlequin Core and Harlequin MultiRIP.

A Block object is defined as a PostScript language dictionary containing keys from the following table. Most of these may be sensibly inherited from parent objects (Strips or ControlBars ) or defaulted from the HqnColorBar procset. For information on the meaning of struct, see HqnLayout structs.

Border

name or struct Default: true

Each patch may be surrounded with a rule. The following values are defined:

None

No border (default)

Solid

A rule right around the patch

Corners

A partial rule, leaving the middle of each patch side clear

Sides

A rule at the sides of the patch, but not at the top or bottom (use only for PatchShape =Square)

BorderColors

number, procedure or struct 

Default: 1.0

The color with which Border is drawn. If BorderColorSpace selects a color space for which multiple numbers must be supplied, they should be entered as an executable procedure. For example, { 0 0.5 0.5 0 } for a tinted red line in CMYK). The default of 1.0 is for the default BorderColorSpace of All. 

BorderColorSpace

name or struct 

Default: 0.15 pt

The color space in which Border is drawn. See ColorSpace for possible values.

BorderWeight

number or struct 

Default: 0.15 pt

The rule weight used to draw the border.

BottomLabel

string, procedure, name or struct

The labels to be drawn below each column of patches. Only the bottom row of patches is examined if the label is dependent on the contents of the patches. Labels are drawn using LabelFontStyle, at BottomLabelSize, and BottomLabelSetSize.

If BottomLabel is a procedure, it is executed after the correct font has been selected and the current point moved to the correct location to show text.

See HqnLayout label styles for the label styles that may be used as name values.

BottomLabelAlign

name or struct

The alignment of BottomLabel relative to a column of patches. Ignored if BottomLabel is not a string. Values must be selected from:

/Left

Aligned with the left side of the patch (with no scaling)

/LeftPatch

Aligned with the left side of the patch, scaled down to fit within the patch width if too long

/LeftPatch2

Aligned with the left side of the patch, scaled down to fit within twice the patch width if too long

/Center

Centered on the width of the patch, scaled down to fit within the patch width if too long

/Right

Aligned with the right side of the patch, scaled down to fit within the patch width if too long

BottomLabelColored

Boolean or struct 

Default: false

If true, BottomLabel is drawn in the same colorspace as the bottom patch in its column. Otherwise, it is drawn in the All separation.

BottomLabelSetSize

number or struct 

Default: 1.0

The set size of the text used for BottomLabel, as a proportion of the natural width of the selected font.

BottomLabelSize

number or struct 

Default: 4

The text size used for BottomLabel in points.

BottomLabelTransChars

Boolean or struct 

Default: false

If true, the label is translated character-by-character; if false, the label is translated as a whole word. Set to true for combinations of CMYK and so on. to enable translation of abbreviations such as "C"for Cyan within the string.

CoarsePercent

number or struct 

Default: 0.5 for 50%

The tint used when Fill=Coarse.

CoarseSize

number or struct 

Default: 2.5

The “screen frequency'” to be used when Fill =Coarse, defined as the period of the screen in points.

Colors

number, executable array or struct

The colors that each patch is to be filled with, in the color space defined by ColorSpace. In color spaces requiring multiple numbers, they should be grouped as an executable array, for example:

{ 0.25 0.16 0.16 0 } for DeviceCMYK.

ColorSpace

name, or struct 

Default: DeviceCMYK

The color space used to draw the patch fill, selected from:

Cyan , Magenta , Yellow , Black

Single process colorant

All

Registration

Space

No marks

DeviceCMYK

CMYK process space

DeviceRGB

Three-channel RGB space

DeviceGray

Single-channel gray space

Lab

Three channel CIE L*a*b* space (D50 white point)

Columns

integer Default: 1

The number of patches in one row (does not necessarily equate to “real” columns; see PatchStep, for instance).

CompAngle

number

The angle through which a subsidiary block in a patch where PatchShape =Compound should be rotated.

Components

array

The subsidiary Blocks, expressed as an array of Block object names, in a patch where PatchShape=Compound.

Components is required in the parent Block; CompAngle, CompX, and CompY are required in each child block.

CompX

number

The X coordinate of the lower left corner of a subsidiary block in a patch where PatchShape=Compound.

CompY

number

The Y coordinate of the lower left corner of a subsidiary block in a patch where PatchShape=Compound.

FileName

string

See PatchShape.

Fill

name or struct 

Default: FlatFill

The way in which the patch is filled, selected from:

FlatFill

A plain vector fill (the default)

None

No fill

Coarse

A very coarse, square screen effect. Each screen dot is colored as defined by the Colors entry for this patch. The "screen" coverage is defined by CoarsePercent

Grad

A graduated tint. The color at the left side of the patch is defined by the Colors entry for this patch. The color at the right side by the GradEnd value.

MicroLine

Fine horizontal or vertical rules. RepeatSize sets the physical size for a single repeat of the pattern, which contains RepeatLines rows of pixels. The patch color defines how many of those lines are filled. The Horizontal key sets whether the lines are horizontal (true ) or vertical (false).

GradEnd

number, executable array or struct

See Fill.

Horizontal

Boolean 

Default: true

See Fill=MicroLine.

LabelFontStyle

name or struct 

Default: Narrow

The font style used for BottomLabel and TopLabel.

MainLabel

string or the name /None

The label to be drawn above the patch as a whole. The label is drawn in MainLabelFont at MainLabelSize, and MainLabelY above the top of the top row of patches. (MainLabelY should normally be increased if both TopLabel and MainLabel are to be drawn.)

MainLabelFontStyle

name 

Default: Emphasis

The font style in which MainLabel is drawn.

MainLabelSize

number 

Default: 6

The text size at which MainLabel is drawn.

MainLabelY

number 

Default: 1

The distance, in points, between the top of the top row of patches and the bottom of the descenders of MainLabel (it is assumed that descenders make up 30% of the point size). Note that this value must be increased if both MainLabel and TopLabel are required.

PatchBottom

number 

Default: 12

The space to be included in a block below the bottom row of patches, in points. BottomLabel is drawn within this area.

PatchHeight

number 

Default: 20

The height of the patch in points. See also PatchWidth.

PatchLabel

string, procedure, name or struct

The label to be drawn within each patch. Labels are drawn in LabelFont, at PatchLabelSize. See HqnLayout label styles for the label styles that may be selected.

PatchLabelFontStyle

name 

Default: /NarrowEmphasis

The font style (see HqnLayout font styles) used to draw PatchLabel.

PatchLabelSize

number or struct 

Default: 3

The text size used for PatchLabel in points.

PatchShape

name or struct

The shapes of patches. See HqnLayout patch shapes for supported values.

PatchStep

Boolean or struct 

Default: true

Whether the current point should step to the right after drawing each patch. Using false for this setting allows multiple patches to be drawn in the same patch area. For example, a Spot over a Square, or six SixUp patches. Note that FourUp and SixUp maintain a count of the number of patches drawn in the same patch area so far and draw different marks each time.

PatchTop

number 

Default: 12

The space to be included in a block above the top row of patches, in points. TopLabel and MainLabel are drawn within this area.

PatchWidth

number 

Default: 20

The width of the patches, in points. Often best set in the Strip dictionary rather than the mark itself, to ensure uniformity along the bar. May be set in the block if a patch requires a different width to other patches in the same strip.

RepeatLines

integer 

Default: 4

See Fill=MicroLine.

RepeatSize

integer 

Default: 1

See Fill=MicroLine.

Rows

integer 

Default: 1

The number of rows of patches.

ScalePatchFile

Boolean 

Default: false

See PatchShape.

Stream

string or array of strings

The content data to be used when PatchShape=Stream.

If supplied as a string, the contents are executed as a PostScript language stream. If supplied as an array of strings, the strings are effectively concatenated to allow the graphical content to contain more than 64 KiB of data.

TopLabel

string, procedure, name or struct

The labels to be drawn above each column of patches. Only the top row of patches is examined if the label is dependent on the contents of the patches.

Labels are drawn in LabelFontStyle, at TopLabelSize, and TopLabelSetSize.

If BottomLabel is a procedure, it is executed after the correct font has been selected and the current point moved to the correct location to show text.

See HqnLayout label styles for the label styles that may be used as name values.

TopLabelAlign

name or struct

The alignment of TopLabel relative to a column of patches. Ignored if TopLabel is not a string. See BottomLabelAlign for permitted values.

TopLabelColored

Boolean or struct 

Default: false

If true, TopLabel is drawn in the same colorspace as the top patch in its column. Otherwise, it is drawn in the All separation.

TopLabelSetSize

number or struct 

Default: 1.0

The set size of the text used for TopLabel, as a proportion of the natural width of the selected font.

TopLabelSize

number or struct 

Default: 4

The text size used for TopLabel in points.

TopLabelTransChars

Boolean or struct 

Default: false

If true, the label is translated character-by-character; if TopLabelTransChars is false the label is translated as a whole word. Set to true for combinations of CMYK, and so on. to enable translation of abbreviations such as "C" for Cyan within the string.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.