Julia Lavrova | a3552c5 | 2019-05-30 16:12:56 -0400 | [diff] [blame] | 1 | // Copyright 2019 Google LLC. |
Ben Wagner | b985b4b | 2020-05-28 15:59:42 -0400 | [diff] [blame] | 2 | |
| 3 | #include "modules/skparagraph/include/DartTypes.h" |
Julia Lavrova | a3552c5 | 2019-05-30 16:12:56 -0400 | [diff] [blame] | 4 | #include "modules/skparagraph/include/ParagraphStyle.h" |
Julia Lavrova | b6b7fff | 2020-09-11 13:59:49 +0000 | [diff] [blame] | 5 | #include "modules/skshaper/src/SkUnicode.h" |
| 6 | #include "src/core/SkStringUtils.h" |
| 7 | #include "src/utils/SkUTF.h" |
Julia Lavrova | a3552c5 | 2019-05-30 16:12:56 -0400 | [diff] [blame] | 8 | |
| 9 | namespace skia { |
| 10 | namespace textlayout { |
| 11 | |
| 12 | StrutStyle::StrutStyle() { |
| 13 | fFontStyle = SkFontStyle::Normal(); |
| 14 | fFontSize = 14; |
| 15 | fHeight = 1; |
| 16 | fLeading = -1; |
Julia Lavrova | db9f669 | 2019-08-01 16:02:17 -0400 | [diff] [blame] | 17 | fForceHeight = false; |
Julia Lavrova | c222856 | 2019-08-08 16:51:27 -0400 | [diff] [blame] | 18 | fHeightOverride = false; |
Julia Lavrova | db9f669 | 2019-08-01 16:02:17 -0400 | [diff] [blame] | 19 | fEnabled = false; |
Julia Lavrova | a3552c5 | 2019-05-30 16:12:56 -0400 | [diff] [blame] | 20 | } |
| 21 | |
| 22 | ParagraphStyle::ParagraphStyle() { |
| 23 | fTextAlign = TextAlign::kStart; |
| 24 | fTextDirection = TextDirection::kLtr; |
| 25 | fLinesLimit = std::numeric_limits<size_t>::max(); |
| 26 | fHeight = 1; |
Julia Lavrova | 9588a64 | 2020-04-30 11:31:25 -0400 | [diff] [blame] | 27 | fTextHeightBehavior = TextHeightBehavior::kAll; |
Julia Lavrova | a3552c5 | 2019-05-30 16:12:56 -0400 | [diff] [blame] | 28 | fHintingIsOn = true; |
| 29 | } |
| 30 | |
| 31 | TextAlign ParagraphStyle::effective_align() const { |
| 32 | if (fTextAlign == TextAlign::kStart) { |
| 33 | return (fTextDirection == TextDirection::kLtr) ? TextAlign::kLeft : TextAlign::kRight; |
| 34 | } else if (fTextAlign == TextAlign::kEnd) { |
| 35 | return (fTextDirection == TextDirection::kLtr) ? TextAlign::kRight : TextAlign::kLeft; |
| 36 | } else { |
| 37 | return fTextAlign; |
| 38 | } |
| 39 | } |
Julia Lavrova | a3552c5 | 2019-05-30 16:12:56 -0400 | [diff] [blame] | 40 | } // namespace textlayout |
| 41 | } // namespace skia |