InDesign® text attributes

The document describes how text attributes can be set and queried using the functions CTextModel.getAttribute() and CTextModel.setAttribute().

Description

InDesign® has an almost unbelievable number of attributes for text design. There is almost nothing that does not exist. With the all-rounders CTextModel.getAttribute() and CTextModel.setAttribute(), (almost) all of these attributes can be edited.

You only need to specify three things:

  • The text index

  • The text attribute

  • The parameters for the text attribute

Boss classes

The most difficult part of the work is finding the right attribute for a text property. Adobe calls the text attributes in the interface to C++ boss classes. We have deliberately used the same names:

  • Firstly, the names of the boss classes are quite self-explanatory.

  • And secondly, an Internet search for the boss classes will probably return more specific results than, for example, “Set InDesign® font”.

So if you don’t know the associated attribute for a text property, you have to search for it. First by name, then everywhere. If you are unsuccessful (but please only then!), you are also welcome to contact us.

Constants for text attributes are available in constants.textattributes

Unfortunately, Adobe does not provide any summarizing documentation on all supported text attributes and their values. The table of text attributes is the result of a long and patient search in various (sometimes very old) sources. If you find any errors or discover further text attributes, we would be very pleased if you contaced us.

CJK attributes

CJK stands for Chinese/Japanese/Korean. A large number of the text attributes can only be used in these writing systems. There is simply no Tate-chu-yoko in Roman texts. For CJK attributes, the texts may have to be vertically aligned, but in any case they must be set with a Japanese composer. Otherwise their attribute has no effect.

You do not need a special version of InDesign® to use CJK attributes. Your version does not have to be localized accordingly. Any InDesign® can set and apply the attributes. Only a few panels are missing (of which we do not yet know where they actually come from).

In the table of text attributes, the CJK attributes are at the bottom of the table and are displayed in cursive font.

n/a

A few attributes are not implemented. These attributes are marked with n/a in the table of text attributes.

Parameters

Text attributes have different parameters. The attributes are either passed as a single value or as a tuple as the value parameter. In the table of text attributes, the required parameters are specified in the Parameters column. Always make sure to use the correct data types.

Setting and querying values usually have the same parameter types.

CTextModel.getAttribute() always returns a tuple containing the attribute length as the first entry, and parameter specific values as the other entries.

Determine the font and font size at the start of the text.
length, fontName = comet.gTextModel.getAttribute(0, comet.constants.textattributes.kTextAttrFontUIDBoss)
length, pointSize = comet.gTextModel.getAttribute(0, comet.constants.textattributes.kTextAttrPointSizeBoss)

Color

Color values differ in data types between setting and getting attributes.

Getting

Color values are always returned as: tuple [str, CColor, bool]

Values are: Color name, color values, is process color?

Setting

Colors can be set using a variety of possible input values.

Possible data types are:

Examples

Set the entire text to orange, provided the ‘Orange’ color swatch is defined.
comet.gTextModel.setAttribute(0, -1, comet.constants.textattributes.kTextAttrColorBoss, 'Orange')
comet.gTextModel.setAttribute(0, -1, comet.constants.textattributes.kTextAttrColorBoss, (255, 128, 0))
comet.gTextModel.setAttribute(0, -1, comet.constants.textattributes.kTextAttrColorBoss, (0.0, 0.61, 0.94, 0.0))
Get the text color at index 0
#values is tuple[int, tuple[int, CColor, bool]]
values = comet.gTextModel.getAttribute(0, comet.constants.textattributes.kTextAttrColorBoss)

Line types

The following table shows all supported line types for underlining, etc…

Line type value

Description (name)

0

Solid

1

Dashed

2

Dashed (4 and 4)

3

Dashed (3 and 2)

4

Dotted

5

Wavy line

6

Hatched (straight)

7

Hatched (slanted to the right)

8

Hatched (slanted to the left)

9

White diamonds

10

Japanese dots

11

Narrow - Narrow

12

Narrow - Wide

13

Wide - Narrow

14

Wide - Wide

15

Narrow - Wide - Narrow

16

Narrow - Wide - Narrow

17

Triple

18

Solid - Table

Languages

The following table contains all languages and dialects available in InDesign® 2021, on the left the names used in the interface, on the right the names used internally. The spaces between : and dialect are important!

Interface Name

Key

[No language]

Neutral

Arabisch

Arabic

Bengalisch (Indien)

bn_IN

Birmanisch (Myanmar)

my_MM

Bulgarian

Bulgarian

Dänisch

Danish

Deutsch: 1996 Rechtschreibereform

German: Reformed

Deutsch: 2006 Rechtschreibereform

de_DE_2006

Deutsch: Alte Rechtschreibung

German

Deutsch: Österreich 2006 Rechtschreibereform

German: Austrian

Deutsch: Schweiz

German: Swiss

Deutsch: Schweiz 2066 Rechtschreibereform

de_CH_2006

Englisch: Großbritannien

English: UK

Englisch: Kananda

English: Canadian

Englisch: USA

English: USA

Englisch: USA Medizin

English: USA Medical

Englisch: USA Recht

English: USA Legal

Estnisch

Estonian

Finnisch

Finnish

Französisch

French

Französisch: Kanada

French: Canadian

Griechisch

Greek

Gujarati (Indien)

gu_IN

Hebräisch

Hebrew

Hindi (Indien)

hi_IN

Indonesisch (Indonesien)

id_ID

Italienisch

Italian

Kannada (Indien)

kn_IN

Katalanisch

Catalan

Khmer (Cambodia)

km_KH

Kroatisch

Croatian

Laotisch (Laos)

lo_LA

Lettisch

Latvian

Litauisch

Lithuanian

Malayalam (Indie)

ml_IN

Marathie (India)

mr_IN

Niederländisch: 2005 Rechtschreibereform

nl_NL_2005

Niederländisch: Alte Rechtschreibung

Dutch

Norwegisch: Bokmål

Norwegian: Bokmal

Norwegisch: Nynorsk

Norwegian: Nynorsk

Orya (Indie)

or_IN

Pandschabisch (India)

pa_IN

Polnisch

Polish

Portugiesisch

Portuguese

Portugiesisch: Brasilien

Portuguese: Brazilian

Portugiesisch: Rechtschreibereform

Portuguese: Orthographic Agreement

Rumänisch

Romanian

Russisch

Russian

Schwedisch

Swedish

Singalesisch (Sri Lanka)

si_LK

Slowakisch

Slovak

Slowenisch

Slovenian

Spanisch

Spanish: Castilian

Tamilisch (Indien)

ta_IN

Telugu (Indien)

te_IN

Thai

Thai

Tschechisch

Czech

Türkisch

Turkish

Ukrainisch

Ukrainian

Ungarisch

Hungarian

Text attributes

The following table contains all of the approximately 250 supported text attributes. Default values, if available and not equal to 0, are highlighted in bold. The work area indicates whether an attribute is a paragraph or a character attribute. CJK attributes start here.

The attribute names and their values correspond to the definitions used until InDesign® 2024 (v19). However, Adobe reserves the right to change these definitions at any time. Changed values will lead to errors in the evaluation.

In the parameter description, we have provided the description available from the Adobe documentation. If you have any further questions, please contact Adobe support directly. We do not have any further information here.

Attribute

Type

Parameter

Domain

kTextAttrAlignmentBoss

int

Represents style of alignment for paragraph; for instance, left-aligned, centered, etc.

  • 0: kLeft

  • 1: kCenter

  • 2: kRight

  • 3: kJustify

  • 4: kJustifyLeft

  • 5: kJustifyCenter

  • 6: kJustifyRight

  • 7: kJustifyAuto

  • 8: kJustifyToBinding

  • 9: kJustifyAwayBinding

Paragraph

kTextAttrAlignSingleBoss

int

Represents type of justification for lines with only one word.

  • 0: kLeft

  • 1: kCenter

  • 2: kRight

  • 3: kJustify

  • 4: kJustifyLeft

  • 5: kJustifyCenter

  • 6: kJustifyRight

  • 7: kJustifyAuto

  • 8: kJustifyToBinding

  • 9: kJustifyAwayBinding

Paragraph

kTextAttrAlternateCharBoss

int

Represents alternate character within OpenType fonts.

Character

kTextAttrAutoLeadBoss

float

Represents setting for auto-leading. Value in percent (1.0 for 100%), default 1.2

Paragraph

kTextAttrBLShiftBoss

float

Represents the baseline shift, specifying the amount of shift of the baseline that the text is on.

Character

kTextAttrBreakBeforeBoss

int

Force a text break.

  • 0 No forced break, start anywhere

  • 1 at column

  • 2 at page

  • 3 at frame box

  • 4 at odd page

  • 5 at even page

Paragraph

kTextAttrCapitalModeBoss

int

Represents the capitalization mode.

  • 0 normal

  • 1 kCapSmallLowercase

  • 2 kCapAll

  • 3 kCapSmallEverything

Character

kTextAttrCharacterHangBoss

int

Represents the character hang associated with CJK text.

  • 0 baseline

  • 1 em Center

  • 2 em Bottom

  • 3 em top

  • 4 ICF bottom

  • 5 ICF top

Character

kTextAttrColorBoss

Color

Represents color applied to characters in text.

Character

kTextAttrComposerBoss

int

Represents the composer to use for composition of text.

  • 0x2000 + 2 : Adobe Paragraph Composer

  • 0x2000 + 1 : Adobe Single-line Composer

  • 0x2000 + 16 : Adobe Japanese Paragraph Composer

  • 0x2000 + 17 : Adobe Japanese Single-line Composer

  • 0x2000 + 120 : Global Adobe Paragraph Composer (Arabic, …)

  • 0x2000 + 121 : Global Adobe Single-line Composer (Arabic, …)

  • 0x2000 + 102 : Linnaeus Composer

Paragraph

kTextAttrDropCapCharsBoss

int

Represents the number of characters affected by a drop cap.

Paragraph

kTextAttrDropCapLinesBoss

int

Represents the number of lines a drop cap will extend by.

Paragraph

kTextAttrFigureStyleBoss

int

Represents figure style to use in OpenType fonts.

  • 0 LiningTabular - consistent width, “tall” figures

  • 1 OldstyleProp- proportional width, “lowercase” figures

  • 2 LiningProp- proportional width “tall” figures

  • 3 OldstyleTabular- consistent width “lowercase” figures

  • 4 Default - use whatever the font says is the default Character

Character

kTextAttrFontStyleBoss

str

Represents a font typeface override; for instance, “Regular”, or “Normal”.

Character

kTextAttrFontUIDBoss

str

Represents the applied font. Missleading name! FontUID stands for fontname!

Character

kTextAttrForceVerticalGlyphsBoss

int

Represents whether to force vertical glyphs

0 | 1

Character

kTextAttrGlyphscaleDesBoss

float

Represents the (fractional) desired glyph scaling.

For instance, a value of 1.0 would correspond to 100%.

Default 1.0

Paragraph

kTextAttrGlyphscaleMaxBoss

float

Represents the (fractional) maximum glyph scaling.

For instance, 1.2 would correspond to 120%.

Default 1.0

Paragraph

kTextAttrGlyphscaleMinBoss

float

Represents the (fractional) minimum glyph scaling. For instance, 1.2 would correspond to 120%.

Default 1.0

Paragraph

kTextAttrGotoNextXBoss

int

Represents the paragraph break mode.

  • 0 : No forced break, start anywhere

  • 1 : at column

  • 2 : at page

  • 3 : at frame box

  • 4 : at odd page

  • 5 : at even page

Character

kTextAttrGradAngleBoss

float

Represents the angle of a linear gradient applied to the fill of text

Character

kTextAttrGradCenterBoss

tuple [ float, float]

Represents the center point for a radial gradient- or starting point for a linear gradient - applied to the fill of text

Character

kTextAttrGradLengthBoss

float

Represents the length of a linear gradient applied to the fill of text

Character

kTextAttrHiliteAngleBoss

float

Represents the hilight angle associated with the fill of text.

Character

kTextAttrHiliteLengthBoss

float

Represents the length attribute for a hilight of the fill of text.

Character

kTextAttrHyphenCapBoss

int

Represents whether to hyphenate capitalized words or not.

Paragraph

kTextAttrHyphenModeBoss

int

Represents the hyphenation method used.

  • 0 off

  • 1 manual

  • 2 dictionary

  • 3 alogrithm

Paragraph

kTextAttrHyphenWeightBoss

int

Represents the hyphen weight for a paragraph. Default 5..

Paragraph

kTextAttrHyphenZoneBoss

float

Represents the extent of the hyphenation zone. Default 3.0.

Paragraph

kTextAttrHyphenLastBoss

int

Represents whether to hyphenate the last word in a paragraph.

0 | 1

Paragraph

kTextAttrILGShiftBoss

float

Represents inline graphic shift.

Character

kTextAttrIndent1LBoss

float

Represents first line indent.

Paragraph

kTextAttrIndentLastRightBoss

float

Paragraph

kTextAttrIndentBLBoss

float

Represents the amount of right indent added to the last line in the paragraph.

Paragraph

kTextAttrIndentBRBoss

float

Represents the amount of left indent for paragraph.

Paragraph

kTextAttrKeepFirstNLinesBoss

int

Represents the number of lines to keep together at the start of a paragraph. Default 2.

Paragraph

kTextAttrKeepLastNLinesBoss

int

Represents number of lines at the end of the paragraph to keep together. Default 2.

Paragraph

kTextAttrKeepLinesBoss

int

Represents whether or not to keep all lines of a paragraph together.

0 | 1

Paragraph

kTextAttrKeepTogetherBoss

int

Represents whether to keep lines of a paragraph together.

0 | 1

Paragraph

kTextAttrKeepWithNextBoss

int

Represents number of lines to keep with next.

Paragraph

kTextAttrLanguageBoss

str

Represents language in which characters are written.

See Languages

Character

kTextAttrLeadBoss

float

Represents leading associated with text.

Character

kTextAttrLetterspaceDesBoss

float

Represents the (fractional) desired letter spacing.

For instance, a value of 1.5 would correspond to 150% of default.

Paragraph

kTextAttrLetterspaceMaxBoss

float

Represents the (fractional) maximum letter spacing.

For instance, a value of 1.5 would correspond to 150% of default.

Paragraph

kTextAttrLetterspaceMinBoss

float

Represents the (fractional) minimum letter spacing.

For instance, a value of 1.5 would correspond to 150% of default.

Paragraph

kTextAttrLigaturesBoss

int

Represents whether to use ligatures in OpenType fonts.

0 | 1

Character

kTextAttrMinAfterBoss

int

Represents the minimum number of characters to hyphenate after.

Paragraph

kTextAttrNoBreakBoss

int

Represents whether “no-break” is active or not.

0 | 1

Character

kTextAttrOTFContextAltBoss

int

Represents whether to use contextual alternate forms in OpenType fonts.

0 | 1

Character

kTextAttrOTFDiscLigBoss

int

Represents whether to use discretionary ligatures in OpenType fonts.

0 | 1

Character

kTextAttrOTFFractionBoss

int

Represents whether to use fractions in OpenType fonts.

0 | 1

Character

kTextAttrOTFOrdinalBoss

int

Represents whether to use ordinals in OpenType fonts.

0 | 1

Character

kTextAttrOTFStylisticAltBoss

int

Represents stylistic alternates in OpenType fonts.

Character

kTextAttrOTFSwashBoss

int

Represents whether to use swash forms in OpenType fonts.

0 | 1

Character

kTextAttrOTFTitlingBoss

int

Represents whether to use titling forms in OpenType fonts.

0 | 1

Character

kTextAttrOutlineBoss

float

Text attribute that specifies the weight to apply to the stroke of the text.

Character

kTextAttrOverprintBoss

int

Represents whether to overprint the fill of text.

0 | 1

Character

kTextAttrPageNumberTypeBoss

int

Represents the page number type.

  • 0 : ThisPage

  • 1 : PreviousPage

  • 2 : NextPage

  • 3 : TextVariable

Character

kTextAttrPairKernBoss

float

Represents the amount of kerning between two characters.

Character

kTextAttrPairKernMethodBoss

int

Represents pair kerning method to apply (for instance, Optical, Metrics or None). This is closely related to kTextAttrPairKernBoss.

If the value of kTextAttrPairKernBoss is zero, the pair kerning method is assumed to be None.

If setting the value to Optical or Metrics via the API, please also modify the value of kTextAttrPairKernBoss

  • 0x0200 + 33 : Off

  • 0x3E00 + 100 : Metrics

  • 0x3E00 + 101 : Latin only

  • 0x13800 + 3 : Optical Character

Character

kTextAttrPointSizeBoss

float

Represents point size for text. Missleading name! This is the FontSize!

Character

kTextAttrPositionModeBoss

int

Represents the position mode, such as normal, subscript, superscript, etc.

  • 0 : Normal

  • 1 : Superscript

  • 2 : Subscript

  • 3 : Superior

  • 4 : Inferior

  • 5 : Numerator

  • 6 : Denominator

Character

kTextAttrPRAColorBosss

Color

Represents the color of the rule above a paragraph. Missleading names! PRA stands for ParagraphRuleAfter - the line after a paragraph!

Paragraph

kTextAttrPRAGapColorBoss

Color

Paragraph

kTextAttrPRAGapTintBoss

float

Paragraph

kTextAttrPRAIndentRBoss

float

Paragraph

kTextAttrPRAModeBoss

int

Represents mode of the rule above a paragraph

  • 0 None // obsolete, but left in for conversion purposes

  • 1 Column width

  • 2 Text width

Paragraph

kTextAttrPRAOffsetBoss

float

Represents the offset of the rule above a paragraph.

Paragraph

kTextAttrPRAOverprintBoss

int

Represents whether to overprint the rule above a paragraph.

0 | 1

Paragraph

kTextAttrPRARuleOnBoss

int

Represents whether there is a rule above a paragraph.

0 | 1

Paragraph

kTextAttrPRAStrokeBoss

float

Represents the stroke weight applied to the rule above a paragraph.

Paragraph

kTextAttrPRATintBoss

float

Represents the percentage tint of the rule above a paragraph.

Paragraph

kTextAttrPRBColorBoss

Color

Represents the color applied to the rule below a paragraph.

Missleading name! PRB stands for ParagraphRuleBefore - the line before a paragraph!

Paragraph

kTextAttrPRBGapColorBoss

Color

Paragraph

kTextAttrPRBGapTintBoss

float

Paragraph

kTextAttrPRBIndentLBoss

float

Paragraph

kTextAttrPRBIndentRBoss

float

Paragraph

kTextAttrPRBModeBoss

int

Represents the mode of the rule above a paragraph.

  • 0 : None // obsolete, but left in for conversion purposes

  • 1 : Column width

  • 2 : Text width

Paragraph

kTextAttrPRBOffsetBoss

float

Represents the offset of the rule below a paragraph.

Paragraph

kTextAttrPRBOverprintBoss

int

Whether to overprint the rule below a paragraph.

0 | 1

Paragraph

kTextAttrPRBRuleOnBoss

int

Whether a paragraph has a rule below.

0 | 1

Paragraph

kTextAttrPRBStrokeBoss

float

Represents the stroke weight of the rule below a paragraph

Paragraph

kTextAttrPRBTintBoss

float

Represents percentage tint of the color applied to the rule below a paragraph.

Paragraph

kTextAttrShortestWordBoss

int

Represents paragraph attribute specifying number of characters needed before word can be candidate for hyphenation.

The number of characters just above this limit represents word length of those that can be hyphenated.

Default 5.

Paragraph

kTextAttrSkewAngleBoss

float

Represents the character skew angle.

Character

kTextAttrSpaceAfterBoss

float

Represents amount of space after a paragraph ends.

Paragraph

kTextAttrSpaceBeforeBoss

float

Represents amount of space before a paragraph ends.

Paragraph

kTextAttrSpecialGlyphBoss

tuple [ int, float]

  • set : glyphID, fontname

  • get : glyphID, glyphName

Character

kTextAttrStrikethruBosss

int

Represents whether to use strike through when text is drawn.

0 | 1

Character

kTextAttrStrokeColorBoss

Color

Represents stroke color.

Character

kTextAttrStrokeGradAngleBoss

float

Represents the angle of a linear gradient applied to the stroke of text.

Character

kTextAttrStrokeGradCenterBoss

tuple [ float, float]

Represents the centre of a radial gradient on the stroke, or the start point of a linear gradient on the stroke of text.

Character

kTextAttrStrokeGradLengthBoss

float

Represents the length of a linear gradient applied to the stroke of text.

Character

kTextAttrStrokeHiliteAngleBoss

float

Represents the angle of the hilight associated with the stroke of text.

Character

kTextAttrStrokeHiliteLengthBoss

float

Represents the length of the hilight associated with the stroke of text.

Character

kTextAttrStrokeOverprintBoss

int

Represents whether to overprint the stroke of text.

Character

kTextAttrStrokeTintBoss

float

Represents the tint of the stroke color applied to text.

Character

kTextAttrTabsBoss

n/a

Paragraph

kTextAttrTintBoss

float

Represents the tint of the fill color applied to text.

Character

kTextAttrTrackKernBoss

float

Represents the Tracking or range kerning amount in thousandths of an em.

Character

kTextAttrUnderlineBoss

int

Represents whether text has an underline

  • 0 : none

  • 1 : single

Character

kTextAttrWordspaceDesBoss

float

Represents the desired (fractional) wordspace.

A value of 1.5 would correspond to 150% of default.

Paragraph

kTextAttrWordspaceMaxBoss

float

Represents the (fractional) maximum wordspace.

A value of 1.5 would correspond to 150% of default.

Paragraph

kTextAttrWordspaceMinBoss

float

Represents the (fractional) minimum word spacing.

A value of 1.5 would correspond to 150% of default.

Paragraph

kTextAttrXGlyphScaleBoss

float

Represents horizontal scaling associated with glyphs.

A value of 1.0 would represent no change, 1.5 would be 150% scaling, etc.

Character

kTextAttrYGlyphScaleBoss

float

Represents fractional scaling for a glyph in the vertical direction.

Character

kTextAttrCharUnderlineColorBoss

Color

Represents the color of the underline for text.

Character

kTextAttrCharUnderlineGapColorBoss

Color

Represents the gap color of the underline for text.

Character

kTextAttrCharUnderlineGapOverprintBoss

int

Represents whether to overprint the gap color of the underline for text

0 | 1

Character

kTextAttrCharUnderlineGapTintBoss

float

Represents the percentage tint of the gap color for the underline.

Character

kTextAttrCharUnderlineOffsetBoss

float

Represents the offset of the underline from the baseline of the text.

Positive values move the underline below the baseline of the text;

negative values move it above the baseline.

Character

kTextAttrCharUnderlineOverprintBoss

int

Represents whether to overprint the color of the underline for text

0 | 1

Character

kTextAttrCharUnderlineTintBoss

float

Represents the percentage tint of the color of the underline for text.

Character

kTextAttrCharUnderlineWeightOffsetBoss

float

Represents the stroke weight of the underline for text.

Missleading name! This is UnderlineWeight!

Character

kTextAttrCharUnderlineTypeBoss

Line type

Represents stroke type of underline for text.

Character

kTextAttrCharStrikeThroughColorBoss

Color

Represents the color of the strike-through for text.

Character

kTextAttrCharStrikeThroughGapColorBoss

Color

Represents the gap color of the strike-through for text.

Character

kTextAttrCharStrikeThroughGapOverprintBoss

int

Represents whether to overprint the gap color of the strike through for text

0 | 1

Character

kTextAttrCharStrikeThroughGapTintBoss

float

Represents the percentage tint of the gap color of the strike-through for text.

Character

kTextAttrCharStrikeThroughOffsetBoss

float

Represents the offset of the strike through for text, relative to the baseline of the text.

Positive values move the strike through up; negative values move it down.

Character

kTextAttrCharStrikeThroughOverprintBoss

int

Represents whether to overprint the strike-through

0 | 1

Character

kTextAttrCharStrikeThroughTintBoss

float

Represents the percentage tint of the color of the strike-through for text.

Character

kTextAttrCharStrikeThroughTypeBoss

Line type

Represents stroke type of strike-through for text.

Character

kTextAttrCharStrikeThroughWeightOffsetBoss

float

Represents stroke weight of strike through for text.

Missleading name! This is StrikeTroughWeight!

Character

kTextAttrBalancedLinesBoss

Specifes whether to balance the lines (that is, make them the same width) in the paragraph containing the text.

This property has no effect on justified text.

0 | 1

Paragraph

kTextAttrPRAGapOverprintBoss

int

Represents whether to overprint the gap color of the rule above a paragraph.

Missleading name! PRA stands for Paragraph rule after, the line after a paragraph!

0 | 1

Paragraph

kTextAttrPRBGapOverprintBoss

int

Represents whether to overprint the gap color of the rule above a paragraph.

Missleading name! PRB stands for Paragraph rule before, the line before a paragraph!

0 | 1

Paragraph

kOTMarkPositioningBoss

int

Represents mark positioning: mark, mkmk

0 | 1

Character

kOTLocaleFeatureBoss

int

Represents localized forms: locl

0 | 1

Character

kSlashedZeroOTFBoss

int

Represents slashed zeros in OpenType fonts.

0 | 1

Character

kOTPositionalFormsBoss

int

Represents positioning forms: Off, Auto, Initial, Medial, Final, Isolated

  • 0 : no features.

  • 1 : automatically generates the 4 positional features listed below based on the underlying text

  • 2 : beginning of word form.

  • 3 : middle of word form.

  • 4 : end of word form.

  • 5 : by itself (one character word) form

Character

kTextAttrPRAKeepInFrameBoss

int

Whether the paragraph rule above must be within the text frame (at the top of frame).

Missleading name! PRA stands for Paragraph rule after, the line after a paragraph!

0 | 1

Paragraph

kTextAttrPRAStrokeTypeBoss

Line type

Represents the stroke type of rule above a paragraph.

Missleading name! PRA stands for Paragraph rule after, the line after a paragraph!

Paragraph

kTextAttrPRBStrokeTypeBoss

Line type

Represents the stroke type of the rule below a paragraph.

Missleading name! PRB stands for Paragraph rule before, the line before a paragraph!

Paragraph

kTextAttrIgnoreEdgeAlignBoss

int

Overrides the “edge alignment” of the story for this paragraph & only turns it off.

0 | 1

Paragraph

kTextAttrKeepWithPrevBoss

int

Represents whether to keep lines of a paragraph together

0 | 1

Character

kBNNumberingCFPreviousBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kBNShouldRestartBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kBNNumberStartAtBoss

int

Represents the starting number for a numbered list.

Paragraph

kBNBulletAlignmentBoss

int

Undocumented by Adobe.

  • 0 : left

  • 1 : center

  • 2 : right

Paragraph

kBNNumberAlignmentBoss

int

Undocumented by Adobe.

  • 0 : left

  • 1 : center

  • 2 : right

Paragraph

kBNNumberingNumberBoss

str

Undocumented by Adobe.

Missleading name! Text to display as ‘bullet point’.

Paragraph

kBNBulletTextAfterBoss

str

Undocumented by Adobe.

Paragraph

kBNListTypeBoss

int

Represents the list type for the paragraph.

  • 0 : None

  • 1 : Bullet list

  • 2 : Numbering list

Paragraph

kBNBulletCharacterBoss

int

Represents the bullet character for a bulleted paragraph.

Paragraph

kBNBulletFontUIDBoss

str

Represents the font used by the bullet adornment.

Missleading name! FontUID stands for fontname!

Paragraph

kBNBulletFontStyleBoss

str

Represents the font style used by the bullet adornment.

Valid style name according to font name

Paragraph

kBNNumberingStyleBoss

int

Represents the numbering style for a numbered paragraph.

  • 1 : 1, 2, 3, 4…

  • 2 : 01, 02, 03, 04…

  • 3 : 001,002,003…

  • 4 : 0001,0002,0003…

  • 5 : I, II, II, IV…

  • 6 : i, ii, iii, iv…

  • 7 : A, B, C, D…

  • 8 : a, b, c, d…

  • 9 : Kanji

  • 10 : Katakana Modern

  • 11 : Katakana Traditional

Paragraph

kBNListStyleBoss

str

Undocumented by Adobe.

Missleading name! Define list styles using the menu Font -> Bullet and numbering lists -> Define List …

Set the list type in the popup “List:” of the dialog.

Valid list style name or “” for default

Paragraph

kBNListLevelBoss

int

Undocumented by Adobe.

Paragraph

kBNBulletCharStyleBoss

str

Undocumented by Adobe. Name of character style

Paragraph

kBNNumberCharStyleBoss

str

Undocumented by Adobe. Name of character style

Paragraph

kTextAttrSpanColumnTypeBoss

int

Specifies if paragraph spans multiple columns.

  • 0 : single column paragraph

  • 1 : paragraph spans columns

  • 2 : paragraph splits the column

Paragraph

kDropCapDetailBoss

int

Represents the details: left side bearing, descender handling, etc. of a dropcap.

Optical settings are trying to align the glyph ink itself to the dropcap bounding box:

  • 0 : None

  • 1HonorLeftGlyphEdge makes the left edge of the ink align to where the

    left edge of the ink at the “body text size” align.

  • 2HonorDescenders sizes dropcaps with descenders such that the descender

    hangs no lower than the descender at the body text size

Japanese settings are used to align the dropcap glyph within a frame grid.

The dropcap can be scaled up or down to fit exactly within the grid boxes, or the dropcap width can be padded so that the next characters are on the grid.

  • 0x0F00 : kFitDropCapOnJapaneseGrid

  • 0x0100 : kPadWidth4JapaneseGrid

  • 0x0200 : kScaleUp4JapaneseGrid

  • 0x0400 : kScaleDn4JapaneseGrid

  • 0x0101 : Default (kPadWidth4JapaneseGrid + HonorLeftGlyphEdge)

Paragraph

kTextAttrSpanColumnCountBoss

int

Specifies the number of columns paragraph spans

Paragraph

kTextAttrStrokeAlignmentBoss

int

Text attribute that specifies stroke alignment of the text.

  • 0 : center

  • 1 : inner

  • 2 : outer

Character

kTextAttrSplitColumnInsideGutterBoss

float

Specifies the inside gutter in split columns.

Paragraph

kTextAttrSplitColumnOutsideGutterBoss

float

Specifies the outside gutter in split columns.

Paragraph

kTextAttrSpanColumnMinSpaceBeforeBoss

float

Specifies the min space before a span column.

Paragraph

kTextAttrSpanColumnMinSpaceAfterBoss

float

Specifies the min space after a span column.

Paragraph

kTextAttrMiterLimitBoss

float

Text attribute that specifies the miter limit to apply to the stroke of the text.

Character

CJK Attributes

kTABunriKinshiBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTACJKHangingBoss

int

Undocumented by Adobe.

  • 0 : none (no burasagari)

  • 1 : regular (IDJ 1.0 style burasagari)

  • 2 : force (AI style burasagari)

Paragraph

kTAGridAlignOnlyFirstLineReportBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTAGridGyoudoriReportBoss

int

Undocumented by Adobe.

Paragraph

kTAGridJidoriReportBoss

int

Undocumented by Adobe.

Character

kTAIMECompModeBoss

int

Undocumented by Adobe.

  • 0 : Confirmed

  • 1 : Unconverted

  • 2 : Converted

  • 3 : Selected

Character

kTAKentenAlignmentBoss

int

Undocumented by Adobe.

  • 0 : Left

  • 1 : Center

  • 2 : Right

Character

kTAKentenCharacterBoss

int

Undocumented by Adobe. Unicode of character

Character

kTAKentenCharacterSetBoss

int

Undocumented by Adobe.

  • 0 : ShiftJIS

  • 1 : JIS

  • 2 : Unicode

  • 3 : Kuten

Character

kTAKentenColorBoss

Color

Undocumented by Adobe.

Character

kTAKentenFontFamilyBoss

str

Undocumented by Adobe. Valid font name

Character

kTAKentenFontStyleBoss

str

Undocumented by Adobe. Valid style of font

Character

kTAKentenKindBoss

int

Undocumented by Adobe.

  • 0 : none

  • 1 : Black SesamDot

  • 2 : White SesamDot

  • 3 : Fish eye

  • 4 : Black Circle

  • 5 : Small Black Circle

  • 6 : Bulls eye

  • 7 : Black Triangle

  • 8 : White Triangle

  • 9 : White Circle

  • 10 : Small white circle

  • 11 : Custom (use kTAKentenCharacterBoss)

Character

kTAKentenOutlineBoss

float

Undocumented by Adobe.

Character

kTAKentenOverprintBoss

int

Undocumented by Adobe.

Character

kTAKentenPositionBoss

int

Undocumented by Adobe.

0 | 1

Character

kTAKentenRelatedSizeBoss

float

Undocumented by Adobe.

Character

kTAKentenSizeBoss

float

Undocumented by Adobe.

Character

kTAKentenStrokeColorBoss

Color

Undocumented by Adobe.

Character

kTAKentenStrokeOverprintBoss

int

Undocumented by Adobe.

Character

kTAKentenStrokeTintBoss

float

Undocumented by Adobe.

Character

kTAKentenTintBoss

float

Undocumented by Adobe.

Character

kTAKentenXScaleBoss

float

Undocumented by Adobe. Percent (1.0 for 100%), default 1.0

Character

kTAKentenYOffsetBoss

float

Undocumented by Adobe.

Character

kTAKentenYScaleBoss

float

Undocumented by Adobe. Percent (1.0 for 100%), default 1.0

Character

kTAKinsokuTableBoss

n/a

Paragraph

kTAKinsokuTypeBoss

int

Undocumented by Adobe.

  • 0 : push in first

  • 1 : push out first

  • 2 : push out only

  • 3 : push in always

Paragraph

kTAKumiNumberReportBoss

int

Undocumented by Adobe.

Paragraph

kTAKumiNumberWithRomanReportBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTALeadingModelBoss

int

Undocumented by Adobe.

  • 0 : Roman leading model - Current Roman baseline to previous Roman baseline

  • 1 : JAkiBelow- Current embox top to next embox top (InDesign-J 1.0 Gyou-okuri model)

  • 2 : JAkiAbove - Current embox top to previous embox top (Opposite of ID-J: Aki is above the line)

  • 3 : Center Leading Model - Current embox center to previous embox center

  • 4ForceSpaceAfter- Similar to kJAkiBelow except that when lines with this leading model

    are next a different leading model no proportional adjustments are made, this line “wins”.

  • 5 : center down- Current embox center to next embox center

Paragraph

kTAMojikumiAdjustPeriodBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTAMojikumiForceAfterSpacingBoss

float

Undocumented by Adobe.

Character

kTAMojikumiForceBeforeSpacingBoss

float

Undocumented by Adobe.

Character

kTAMojikumiFullAdjustBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTAMojikumiRensuujiBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTAMojikumiRomanWidthBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTAMojikumiTableBoss

n/a

Undocumented by Adobe.

Paragraph

kTAMojiRubyBoss

int

Undocumented by Adobe.

0 | 1

Character

kTAOTFHVKanaBoss

int

Undocumented by Adobe.

0 | 1

Character

kTAOTFProportionalBoss

int

Undocumented by Adobe.

0 | 1

Character

kTAOTFRomanItalicsBoss

int

Undocumented by Adobe.

0 | 1

Character

kTARotateRomanBoss

int

Undocumented by Adobe.

0 | 1

Paragraph

kTARubyAdjustParentBoss

int

Undocumented by Adobe.

  • 0 : None

  • 1 : Both sides

  • 2 : Mojikumi

  • 3 : Equal Aki

  • 4 : Justify

Character

kTARubyAlignmentBoss

int

Undocumented by Adobe.

  • 0 : Left

  • 1 : Center

  • 2 : Right

  • 3 : Justify

  • 4 : JIS rule

  • 5 : Equal space

  • 6 : Edge one ruby

Character

kTARubyAttrBoss

int

Undocumented by Adobe.

0 | 1

Character

kTARubyAutoScaleMinBoss

float

Undocumented by Adobe.

Values in percent (1.0 for 100%), default 0.66

Character

kTARubyAutoScalingBoss

int

Undocumented by Adobe.

0 | 1

Character

kTARubyColorBoss

Color

Undocumented by Adobe.

0 | 1

Character

kTARubyEdgeSpaceBoss

int

Undocumented by Adobe.

0 | 1

Character

kTARubyFontStyleBoss

str

Undocumented by Adobe. Valid style name of font

Character

kTARubyFontUIDBoss

str

Undocumented by Adobe.

Missleading name! FontUID stands for fontname!

Valid font family name

Character

kTARubyOTProBoss

int

Undocumented by Adobe.

0 | 1

Character

kTARubyOutlineBoss

float

Undocumented by Adobe.

Character

kTARubyOverhangBoss

int

Undocumented by Adobe.

  • 0 : None

  • 1 : OneRuby

  • 2 : HalfRuby

  • 3 : OneChar

  • 4 : HalfChar

  • 5 : NoLimit

Character

kTARubyOverhangFlagBoss

int

Undocumented by Adobe.

0 | 1

Character

kTARubyOverprintBoss

int

Undocumented by Adobe.

Character

kTARubyPointSizeBoss

float

Undocumented by Adobe.

Missleading name! This is the FontSize!

Character

kTARubyPositionBoss

int

Undocumented by Adobe.

0 | 1

Character

kTARubyRelativeSizeBoss

float

Undocumented by Adobe.

Character

kTARubyStringBoss

str

Undocumented by Adobe.

Character

kTARubyStrokeColorBoss

Color

Undocumented by Adobe.

Character

kTARubyStrokeOverprintBoss

int

Undocumented by Adobe.

Character

kTARubyStrokeTintBoss

float

Undocumented by Adobe.

Character

kTARubyTintBoss

float

Undocumented by Adobe.

Character

kTARubyXOffsetBoss

float

Undocumented by Adobe.

Character

kTARubyXScaleBoss

float

Undocumented by Adobe. Percent (1.0 for 100%), default 1.0

Character

kTARubyYOffsetBoss

float

Undocumented by Adobe.

Character

kTARubyYScaleBoss

float

Undocumented by Adobe. Percent (1.0 for 100%), default 1.0

Character

kTAShataiAdjustRotationBoss

int

0 | 1

Character

kTAShataiAdjustTsumeBoss

int

Undocumented by Adobe.

0 | 1

Character

kTAShataiAngleBoss

float

Undocumented by Adobe. Angle in degrees, default 45°

Character

kTAShataiMagnificationBoss

float

Undocumented by Adobe. Values in percent (1.0 for 100%)

Character

kTATatechuyokoAttrBoss

int

Undocumented by Adobe.

0 | 1

Character

kTATatechuyokoXOffsetBoss

float

Undocumented by Adobe.

Character

kTATatechuyokoYOffsetBoss

float

Undocumented by Adobe.

Character

kTATsumeTableBoss

n/a

Undocumented by Adobe.

Character

kTAWarichuAlignmentBoss

int

Undocumented by Adobe.

  • 0 : kLeft

  • 1 : kCenter

  • 2 : kRight

  • 3 : kJustify

  • 4 : kJustifyLeft

  • 5 : kJustifyCenter

  • 6 : kJustifyRight

  • 7 : kJustifyAuto

  • 8 : kJustifyToBinding

  • 9 : kJustifyAwayBinding

Character

kTAWarichuAttrBoss

int

Undocumented by Adobe.

0 | 1

Character

kTAWarichuAutoResizeParenBoss

int

Undocumented by Adobe.

0 | 1

Character

kTAWarichuLineSpacingBoss

float

Undocumented by Adobe.

Character

kTAWarichuMinCharsAfterBreakBoss

int

Undocumented by Adobe. Default 2

Character

kTAWarichuMinCharsBeforeBreakBoss

int

Undocumented by Adobe. Default 2

Character

kTAWarichuNumOfLineBoss

int

Undocumented by Adobe. Default 2

Character

kTACharRotateAngleReportBoss

float

Undocumented by Adobe.

Character

kTAScaleAffectsLineHeightBoss

int

Undocumented by Adobe.

0 | 1

Character

kTextAttrGlyphFormBoss

int

Undocumented by Adobe.

  • 0 : NoForm

  • 1 : FirstValidForm

  • 2 : ExpertForm

  • 3 : JIS78Form

  • 4 : JIS83Form

  • 5 : HalfWidthForm

  • 6 : ThirdWidthForm

  • 7 : QuarterWidthForm

  • 8 : NLCForm

  • 9 : ProportionalWidthForm

  • 10 : FullWidthForm

  • 11 : JIS04Form

  • 12 : JIS90Form

  • 13 : BeyondEndForm

Character

kTextAttrOTFeatureListBoss

n/a

Undocumented by Adobe.

Character

kTACJKGridTrackingBoss

int

Undocumented by Adobe.

Character

kTARotateRomanBoss

int

Undocumented by Adobe.

Paragraph

kTextAttrGridAlignmentBoss

int

Undocumented by Adobe.

  • 0 : None

  • 1 : Baseline

  • 2 : EmTop

  • 3 : EmCenter

  • 4 : EmBottom

  • 5 : ICFTop

  • 6 : ICFBottom

  • 7 : CapHeight

Paragraph

kTARotateRomanBoss

int

Undocumented by Adobe.

Character

kTARubyAutoTCYIncludeRomanBoss

int

Undocumented by Adobe.

Character

kTARubyAutoTCYNumDigitsBoss

int

Undocumented by Adobe.

Character

kTAWarichuRelativeSizeBoss

float

Undocumented by Adobe. Value in percent (1.0 for 100%), default 0.5

Character

Same paragraph (Since InDesign® 2023)

kTextAttrSameParaSpacingBoss

float

Undocumented by Adobe.

Paragraph

Paragraph Border Shading (PBS)` (Since InDesign® 2023)

kTextAttrPBSFillColorBoss

Color

Represents the fill color of paragraph border and shading.

Paragraph

kTextAttrPBSFillTintBoss

float

Represents the fill percentage tint of paragraph border and shading.

Paragraph

kTextAttrPBSFillOverprintBoss

int

Represents whether to overprint the fill of paragraph border and shading.

0 | 1

Paragraph

kTextAttrPBSWidthBoss

int

Represents the width to be text/column width for paragraph border and shading.

  • 0 : column width

  • 1 : text width

Paragraph

kTextAttrPBSFillOnBoss

int

Represents whether the fill is on for paragraph border and shading.

0 | 1

Paragraph

kTextAttrPBSClipToFrameBoss

int

Represents whether the paragraph border and shading should be kept within frame/cropped to frame

0 | 1

Paragraph

kTextAttrPBSSuppressPrintingBoss

int

Represents whether to suppress printing of paragraph border and shading

0 | 1

Paragraph

kTextAttrPBSOffsetLBoss

kTextAttrPBSOffsetTBoss

kTextAttrPBSOffsetRBoss

kTextAttrPBSOffsetBBoss

float

Represents left/top/right/bottom offset of paragraph shading

Paragraph

kTextAttrPBSTopOriginBoss

int

Represents the top origin to be based on cap-height, ascender or baseline for paragraph border and shading.

  • 0 : ascent top origin

  • 1 : baseline top origin

  • 2 : leading top origin

  • 3 : em box top origin

  • 4 : cap height top origin

  • 5 : x height top origin

  • 6 : em box center top origin

Paragraph

kTextAttrPBSBottomOriginBoss

int

Represents the bottom origin to be based on descender or baseline for paragraph border and shading.

  • 0 : descent bottom origin

  • 1 : baseline bottom origin

  • 2 : em box bottom origin

  • 3 : em box center bottom origin

Paragraph

kTextAttrPBSStrokeColorBoss

Color

Represents the stroke color of paragraph border and shading.

Paragraph

kTextAttrPBSStrokeTintBoss

float

Represents the stroke percentage tint of paragraph border and shading.

Paragraph

kTextAttrPBSStrokeOverprintBoss

int

Represents whether to overprint the stroke of paragraph border and shading.

0 | 1

Paragraph

kTextAttrPBSStrokeOnBoss

int

Represents whether the stroke is on for paragraph border and shading.

0 | 1

Paragraph

kTextAttrPBSStrokeGapColorBoss

Color

Represents the stroke gap color of paragraph border and shading.

Paragraph

kTextAttrPBSStrokeGapTintBoss

float

Represents the stroke gap percentage tint of paragraph border and shading.

Paragraph

kTextAttrPBSStrokeGapOverprintBoss

int

Represents whether to overprint the stroke gap of paragraph border and shading.

0 | 1

Paragraph

kTextAttrPBSStrokeTypeBoss

Line type

This holds the line type of the paragraph border.

Paragraph

kTextAttrParaBorderOffsetLBoss

kTextAttrParaBorderOffsetTBoss

kTextAttrParaBorderOffsetRBoss

kTextAttrParaBorderOffsetBBoss

float

Represents left/top/right/bottom offset of paragraph border.

Paragraph

kTextAttrPBSStrokeJoinTypeBoss

int

Represents the stroke join type of paragraph border.

  • 0 : miter

  • 1 : round

  • 2 : bevel

Paragraph

kTextAttrPBSCornerTypeTLAttrBoss

kTextAttrPBSCornerTypeTRAttrBoss

kTextAttrPBSCornerTypeBLAttrBoss

kTextAttrPBSCornerTypeBRAttrBoss

int

Represents the top-left/top-right/bottom-left/bottom-right corner type applied to the paragraph border.

  • 0 : rectangular

  • 1 : rounded

  • 2 : inverse rounded

  • 3 : inset

  • 4 : bevel

  • 5 : fancy

Paragraph

kTextAttrPBSCornerRadiusTLAttrBoss

kTextAttrPBSCornerRadiusTRAttrBoss

kTextAttrPBSCornerRadiusBLAttrBoss

kTextAttrPBSCornerRadiusBRAttrBoss

float

Represents the top left corner radius value applied to the paragraph border.

Paragraph

kTextAttrPSCornerTypeTLAttrBoss

kTextAttrPSCornerTypeTRAttrBoss

kTextAttrPSCornerTypeBLAttrBoss

kTextAttrPSCornerTypeBRAttrBoss

int

Represents the top-left/top-right/bottom-left/bottom-right corner type applied to the paragraph shading.

  • 0 : rectangular

  • 1 : rounded

  • 2 : inverse rounded

  • 3 : inset

  • 4 : bevel

  • 5 : fancy

Paragraph

kTextAttrPSCornerRadiusTLAttrBoss

kTextAttrPSCornerRadiusTRAttrBoss

kTextAttrPSCornerRadiusBLAttrBoss

kTextAttrPSCornerRadiusBRAttrBoss

float

Represents the top left corner radius value applied to the paragraph shading.

Paragraph

kTextAttrPBSStrokeCapTypeBoss

int

Represents the stroke cap type of paragraph border.

  • 0 : ButCap

  • 1 : RoundCap

  • 2 : ProjectingCap

Paragraph

kTextAttrProviderHyphStyleBoss

int

Represents the hyphenation style of the provider.

  • 0 : all

  • 1 : all but unaesthetic

  • 2 : aesthetic

  • 3 : preferred aesthetic

Paragraph

kHTMLStyleExportTagName

str

Read Only: If the paragraph style is assigned to a tag in the panel Utilities -> Tags, the name of this tag is returned.

To define such a mapping, proceed as follows:

  • Open panel Utilities -> Tags

  • Create and name a new tag. Please take care to use a CSS conform tag name!

  • Select the fly-out menu Map Styles to Tags

  • In the appearing dialog you can assign the tag to the desired paragraph style now.

If the paragraph style is not assigned to any tag, the setting from Paragraph Style Options : Export Tagging : EPUB and HTML : Tag is used.

Paragraph

kHTMLStyleExportAttributes

str

Read Only: Additional attributes for the defined CSS style as described above.

We have not found a way to set this information in the InDesign UI.

Paragraph

kPDFStyleExportTag

str

Read Only: The PDF tag selected in Paragraph Style Options : Export Tagging : PDF : Tag

Paragraph