|
typeset 0.1.0
縦書き・横書きの日本語組版ライブラリ(JLReq 水準、ラスタ / PDF / SVG)
|
#include <typeset/inl/line_item.hpp>
公開メンバ関数 | |
| bool | isBox () const |
| bool | isGlue () const |
| bool | isPenalty () const |
| bool | isForcedBreak () const |
静的公開メンバ関数 | |
| static LineItem | box (Pt w, uint32_t cluster, size_t charIndex) |
| static LineItem | glue (const text::GlueSpec &spec, Pt em, size_t charIndex) |
| static LineItem | gluePt (Pt natural, Pt stretch, Pt shrink, size_t charIndex) |
| static LineItem | penaltyItem (float cost, Pt width, size_t charIndex) |
公開変数類 | |
| ItemType | type = ItemType::Box |
| Pt | width = 0.0f |
| Box: ボディ幅/Penalty: ブレークしたときにその位置に現れる幅(ぶら下げは負) | |
| Pt | natural = 0.0f |
| Glue の伸縮 | |
| Pt | stretch = 0.0f |
| Pt | shrink = 0.0f |
| float | penalty = 0.0f |
| Pt | glyphOffset = 0.0f |
| Box: 仮想ボディを詰めたときのグリフの描画オフセット(始め括弧で負) | |
| uint32_t | clusterIndex = kNoCluster |
| Box が指すクラスタ(Box 以外では kNoCluster) | |
| size_t | charIndex = 0 |
| 元テキストでの位置(UTF-16) | |
| int | level = -1 |
| UAX #9 の埋め込みレベル(欧文間隔のグルーに付ける。-1 なら未設定で、行の並べ替えでは直前の箱に従う) | |
| std::vector< PlacedGlyph > | glyphs |
| Box に紐づくグリフ列。inline_ は Box の先頭からの相対、block は中心線から。 | |
| bool | ownGlyphs = false |
| Pt | extentMin = 0.0f |
| この Box が要求するブロック軸の張り出し(既定の ±0.5em を超える分だけ) | |
| Pt | extentMax = 0.0f |
| std::vector< PlacedGlyph > | breakGlyphs |
| Penalty: そこで行が終わったときに行末へ足すグリフ(ハイフネーションのハイフン)。inline_ は行末からの相対 | |
静的公開変数類 | |
| static constexpr uint32_t | kNoCluster = std::numeric_limits<uint32_t>::max() |
line_item.hpp の 31 行目に定義があります。
|
inlinestatic |
line_item.hpp の 75 行目に定義があります。
参照先 typeset::inl::Box, charIndex, clusterIndex, type, width.
|
inlinestatic |
|
inlinestatic |
line_item.hpp の 86 行目に定義があります。
参照先 charIndex, typeset::inl::Glue, natural, shrink, stretch, type.
参照元 glue().
|
inlinestatic |
line_item.hpp の 95 行目に定義があります。
参照先 charIndex, typeset::inl::Penalty, penalty, type, width.
|
inline |
line_item.hpp の 104 行目に定義があります。
参照先 typeset::inl::Box, type.
|
inline |
line_item.hpp の 105 行目に定義があります。
参照先 typeset::inl::Glue, type.
|
inline |
line_item.hpp の 106 行目に定義があります。
参照先 typeset::inl::Penalty, type.
|
inline |
line_item.hpp の 107 行目に定義があります。
参照先 typeset::inl::kForcedBreakPenalty, typeset::inl::Penalty, penalty, type.
| ItemType typeset::inl::LineItem::type = ItemType::Box |
line_item.hpp の 32 行目に定義があります。
参照元 box(), gluePt(), isBox(), isForcedBreak(), isGlue(), isPenalty(), penaltyItem().
| Pt typeset::inl::LineItem::width = 0.0f |
Box: ボディ幅/Penalty: ブレークしたときにその位置に現れる幅(ぶら下げは負)
line_item.hpp の 35 行目に定義があります。
参照元 box(), penaltyItem().
| Pt typeset::inl::LineItem::natural = 0.0f |
| Pt typeset::inl::LineItem::stretch = 0.0f |
line_item.hpp の 39 行目に定義があります。
参照元 gluePt().
| Pt typeset::inl::LineItem::shrink = 0.0f |
line_item.hpp の 40 行目に定義があります。
参照元 gluePt().
| float typeset::inl::LineItem::penalty = 0.0f |
line_item.hpp の 42 行目に定義があります。
参照元 isForcedBreak(), penaltyItem().
| Pt typeset::inl::LineItem::glyphOffset = 0.0f |
Box: 仮想ボディを詰めたときのグリフの描画オフセット(始め括弧で負)
line_item.hpp の 45 行目に定義があります。
| uint32_t typeset::inl::LineItem::clusterIndex = kNoCluster |
| size_t typeset::inl::LineItem::charIndex = 0 |
| int typeset::inl::LineItem::level = -1 |
UAX #9 の埋め込みレベル(欧文間隔のグルーに付ける。-1 なら未設定で、行の並べ替えでは直前の箱に従う)
line_item.hpp の 54 行目に定義があります。
| std::vector<PlacedGlyph> typeset::inl::LineItem::glyphs |
Box に紐づくグリフ列。inline_ は Box の先頭からの相対、block は中心線から。
line_item.hpp の 63 行目に定義があります。
| bool typeset::inl::LineItem::ownGlyphs = false |
line_item.hpp の 64 行目に定義があります。
| Pt typeset::inl::LineItem::extentMin = 0.0f |
この Box が要求するブロック軸の張り出し(既定の ±0.5em を超える分だけ)
line_item.hpp の 67 行目に定義があります。
| Pt typeset::inl::LineItem::extentMax = 0.0f |
line_item.hpp の 68 行目に定義があります。
| std::vector<PlacedGlyph> typeset::inl::LineItem::breakGlyphs |
Penalty: そこで行が終わったときに行末へ足すグリフ(ハイフネーションのハイフン)。inline_ は行末からの相対
line_item.hpp の 71 行目に定義があります。
|
staticconstexpr |
line_item.hpp の 73 行目に定義があります。