![]() | InDesign SDK 20.5 |
#include <IMojikumiStyle.h>

Public Types | |
| enum | { kDefaultIID = IID_IMOJIKUMISTYLE } |
Public Member Functions | |
Mojikumi table methods | |
| virtual void | SetMojikumiTable (UID tableID)=0 |
| virtual UID | GetMojikumiTable () const =0 |
| virtual IMojikumiTable * | QueryMojikumiTable () const =0 |
Kinsoku table methods | |
| virtual void | SetKinsokuTable (UID tableID)=0 |
| virtual UID | GetKinsokuTable () const =0 |
| virtual IKinsokuTable * | QueryKinsokuTable () const =0 |
Tsume table methods | |
| virtual void | SetTsumeTable (UID tableID)=0 |
| virtual UID | GetTsumeTable () const =0 |
| virtual ITsumeTable * | QueryTsumeTable () const =0 |
Character attributes | |
| virtual bool16 | LigaturesAllowed (bool16 vertical) const =0 |
Force spacing | |
if < 0, then not applied. | |
| virtual void | SetForceBeforeSpacing (PMReal spacing)=0 |
| virtual PMReal | GetForceBeforeSpacing () const =0 |
| virtual void | SetForceAfterSpacing (PMReal spacing)=0 |
| virtual PMReal | GetForceAfterSpacing () const =0 |
Character-based rotation | |
| virtual void | SetRotateAngle (const PMReal &p)=0 |
| virtual PMReal | GetRotateAngle () const =0 |
Used by shatai | |
| virtual void | SetShataiMagnification (PMReal p)=0 |
| virtual PMReal | GetShataiMagnification () const =0 |
| virtual void | SetShataiAngle (PMReal p)=0 |
| virtual PMReal | GetShataiAngle () const =0 |
| virtual void | SetShataiAdjustRotation (bool16 p)=0 |
| virtual bool16 | GetShataiAdjustRotation () const =0 |
| virtual void | SetShataiAdjustTsume (bool16 p)=0 |
| virtual bool16 | GetShataiAdjustTsume () const =0 |
| virtual void | ShataiTransformFontMatrix (PMMatrix *pMatrix, bool16 vertical, PMReal *widthAdjustment=nil, PMReal widthToEmRatio=1.0, PMMatrix *rawShataiMatrix=nil) const =0 |
OpenType | |
| virtual void | SetUseHVKana (bool16 b)=0 |
| virtual bool16 | GetUseHVKana () const =0 |
| virtual void | SetUseProportionalMetrics (bool16 b)=0 |
| virtual bool16 | GetUseProportionalMetrics () const =0 |
| virtual void | SetUseRomanItalics (bool16 b)=0 |
| virtual bool16 | GetUseRomanItalics () const =0 |
| virtual void | SetTsume (const PMReal &ratio)=0 |
| virtual PMReal | GetTsume () const =0 |
| virtual void | SetRomanMojikumi (bool16 flag)=0 |
| virtual bool16 | GetRomanMojikumi () const =0 |
| virtual void | SetAdjustFullWidth (bool16 flag)=0 |
| virtual bool16 | GetAdjustFullWidth () const =0 |
| virtual void | SetAdjustPeriodPos (bool16 flag)=0 |
| virtual bool16 | GetAdjustPeriodPos () const =0 |
| virtual void | SetKinsokuFlag (bool16 flag)=0 |
| virtual bool16 | GetKinsokuFlag () const =0 |
Public Member Functions inherited from IPMUnknown | |
| virtual IPMUnknown * | QueryInterface (PMIID interfaceID) const =0 |
| virtual void | AddRef () const =0 |
| virtual void | Release () const =0 |
Paragraph attributes | |
| enum | KinsokuType { kKinsoku_PushInFirst = 0, kKinsoku_PushOutFirst, kKinsoku_PushOutOnly, kKinsoku_PushInAlways } |
| enum | KinsokuHangType { kKinsokuHang_None = 0, kKinsokuHang_Regular, kKinsokuHang_Force } |
| virtual void | SetKinsokuType (KinsokuType type)=0 |
| virtual KinsokuType | GetKinsokuType () const =0 |
| virtual void | SetKinsokuHangType (KinsokuHangType type)=0 |
| virtual KinsokuHangType | GetKinsokuHangType () const =0 |
| virtual void | SetLeadingModel (Text::LeadingModel m)=0 |
| virtual Text::LeadingModel | GetLeadingModel () const =0 |
| virtual void | SetRensuuji (bool16 flag)=0 |
| virtual bool16 | GetRensuuji () const =0 |
| virtual void | SetNotSeparate (bool16 flag)=0 |
| virtual bool16 | GetNotSeparate () const =0 |
| virtual void | SetTreatIdeoSpaceAsSpace (bool16 flag)=0 |
| virtual bool16 | GetTreatIdeoSpaceAsSpace () const =0 |
| virtual void | SetWordWrapOff (bool16 flag)=0 |
| virtual bool16 | GetWordWrapOff () const =0 |
IMojikumiStyle is one of the interfaces hanging off the kComposeStyleBoss object. As such, it is easily Queried from an IDrawingStyle interface. Text attributes can be summarized into a kComposeStyleBoss object, which is a non-persistent summary of every text attribute applied to some text. IMojikumiStyle lists character attributes associated with the Japanese text composition. IMojikumiStyle should be considered a "read-only" interface because the set operations have no impact beyond this data interface. It does not apply through to the text that this interface derived from. The text attributes themselves are the primary setters of the data.
Specifies the type of kinsoku hang.
Specifies the type of kinsoku processing.
| pure virtual |
Get mojikumi spacing after (right side spacing)
| pure virtual |
Get mojikumi spacing before (left side spacing)
| pure virtual |
Get Kinsoku hang type
| pure virtual |
Gets the KinsokuTable UID
| pure virtual |
Get Kinsoku justification type
| pure virtual |
Get Leading Model basis position (point in the line height from which line leading is to be measured)
| pure virtual |
Gets the MojikumiTable UID
| pure virtual |
Get Inseparables no-break and no-justify (repeating inseparable characters (from Kinsoku table))
| pure virtual |
Get Rensuuji shori (no-break of Japanese numbers)
| pure virtual |
Get character rotation angle
| pure virtual |
Get character obliquing (shatai) adjust rotation to match line
| pure virtual |
Get character obliquing (shatai) adjust tsume (kerning) to make text tighter
| pure virtual |
Get character obliquing (shatai) lens angle
| pure virtual |
Get character obliquing (shatai) lens magnification
| pure virtual |
Get if Ideographic Space will not wrap to next line, like other space chars
| pure virtual |
Gets the TsumeTable UID
| pure virtual |
Get OpenType feature use horizontal-only or vertical-only kana forms
| pure virtual |
Get OpenType feature use proportional Japanese metrics
| pure virtual |
Get OpenType feature use Roman Italic forms in Japanese fonts
| pure virtual |
Get if Roman words wrap on any character
| pure virtual |
Given the current mojikumi spacing, are ligatures allowed, or will they break
| vertical | [IN] current selection is vertical text |
| pure virtual |
Query the IKinsokuTable interface
| pure virtual |
Query the IMojikumiTable interface
| pure virtual |
Query the ITsumeTable interface
| pure virtual |
Set mojikumi spacing after (right side spacing)
| spacing | [IN] spacing after in em units |
| pure virtual |
Set mojikumi spacing before (left side spacing)
| spacing | [IN] spacing before in em units |
| pure virtual |
Set Kinsoku hang type
| type | [IN] Kinsoku hang type |
| pure virtual |
the KinsokuTable contains lists of characters that cannot begin a line, cannot end a line, cannot be separated, and can hang outside the frame at line end Sets the KinsokuTable in this interface only
| tableID | [IN] UID of the kinsoku table |
| pure virtual |
Set Kinsoku justification type
| type | [IN] Kinsoku justification type |
| pure virtual |
Set Leading Model basis position (point in the line height from which line leading is to be measured)
| m | [IN] leading model (implies also leading measurement direction) |
| pure virtual |
the MojikumiTable contains the relative spacing and compression values for character classes used by the Composer to set the text Sets the MojikumiTable in this interface only
| tableID | [IN] UID of the mojikumi table |
| pure virtual |
Set Inseparables no-break and no-justify (repeating inseparable characters (from Kinsoku table))
| flag | [IN] kTrue if attribute is on |
| pure virtual |
Set Rensuuji shori (no-break of Japanese numbers)
| flag | [IN] kTrue if attribute is on |
| pure virtual |
Set character rotation angle
| p | [IN] rotation angle in degrees |
| pure virtual |
Set character obliquing (shatai) adjust rotation to match line
| p | [IN] kTrue if the attribute is on |
| pure virtual |
Set character obliquing (shatai) adjust tsume (kerning) to make text tighter
| p | [IN] kTrue if the attribute is on |
| pure virtual |
Set character obliquing (shatai) lens angle
| p | [IN] lens angle |
| pure virtual |
Set character obliquing (shatai) lens magnification
| p | [IN] lens magnification |
| pure virtual |
Set if Ideographic Space will not wrap to next line, like other space chars
| flag | [IN] kTrue if attribute is on |
| pure virtual |
the TsumeTable is a table of kerning ratios (in em units) for characters whose normal width differs from the JIS X 4051 standard. The table dictates how much width to remove from the left and/or right sides of the character before adding in mojikumi spacing Sets the TsumeTable in this interface only
| tableID | [IN] UID of the TsumeTable |
| pure virtual |
Set OpenType feature use horizontal-only or vertical-only kana forms
| b | [IN] kTrue if the attribute is on |
| pure virtual |
Set OpenType feature use proportional Japanese metrics
| b | [IN] kTrue if the attribute is on |
| pure virtual |
Set OpenType feature use Roman Italic forms in Japanese fonts
| b | [IN] kTrue if the attribute is on |
| pure virtual |
Set if Roman words wrap on any character
| flag | [IN] kTrue if attribute is on |
| pure virtual |
Transforms the given matrix to match the shatai (character obliquing) settings
| pMatrix | [IN/OUT] font matrix of the text. Will be transformed with the shatai matrix. |
| vertical | [IN] whether the text is vertical or not |
| widthAdjustment | [OUT] amount to adjust the character widths |
| widthToEmRatio | [IN] ratio of character width to em width |
| rawShataiMatrix | [OUT] matrix with only shatai settings (no external scaling) |