enum HarfBuzz::BufferClusterLevelT

Overview

Data type for holding HarfBuzz's clustering behavior options. The cluster level dictates one aspect of how HarfBuzz will treat non-base characters during shaping.

In HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES, non-base characters are merged into the cluster of the base character that precedes them.

In HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS, non-base characters are initially assigned their own cluster values, which are not merged into preceding base clusters. This allows HarfBuzz to perform additional operations like reorder sequences of adjacent marks. HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES is the default, because it maintains backward compatibility with older versions of HarfBuzz. New client programs that do not need to maintain such backward compatibility are recommended to use HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS instead of the default.

Defined in:

lib/gi-crystal/src/auto/harf_buzz-0.0/harf_buzz.cr

Enum Members

MonotoneGraphemes = 0_u32

Return cluster values grouped by graphemes into monotone order.

MonotoneCharacters = 1_u32

Return cluster values grouped into monotone order.

Characters = 2_u32

Don't group cluster values.

Default = 0_u32

Default cluster level, equal to HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES.

Class Method Summary

Instance Method Summary

Class methods inherited from struct Enum

g_type : UInt64 g_type

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


[View source]

Instance Method Detail

def characters? #

[View source]
def default? #

[View source]
def monotone_characters? #

[View source]
def monotone_graphemes? #

[View source]