1*c8dee2aaSAndroid Build Coastguard Worker // Copyright 2019 Google LLC. 2*c8dee2aaSAndroid Build Coastguard Worker 3*c8dee2aaSAndroid Build Coastguard Worker #include "modules/skparagraph/include/DartTypes.h" 4*c8dee2aaSAndroid Build Coastguard Worker #include "modules/skparagraph/include/ParagraphStyle.h" 5*c8dee2aaSAndroid Build Coastguard Worker #include "src/base/SkUTF.h" 6*c8dee2aaSAndroid Build Coastguard Worker #include "src/core/SkStringUtils.h" 7*c8dee2aaSAndroid Build Coastguard Worker 8*c8dee2aaSAndroid Build Coastguard Worker namespace skia { 9*c8dee2aaSAndroid Build Coastguard Worker namespace textlayout { 10*c8dee2aaSAndroid Build Coastguard Worker StrutStyle()11*c8dee2aaSAndroid Build Coastguard WorkerStrutStyle::StrutStyle() { 12*c8dee2aaSAndroid Build Coastguard Worker fFontStyle = SkFontStyle::Normal(); 13*c8dee2aaSAndroid Build Coastguard Worker fFontSize = 14; 14*c8dee2aaSAndroid Build Coastguard Worker fHeight = 1; 15*c8dee2aaSAndroid Build Coastguard Worker fLeading = -1; 16*c8dee2aaSAndroid Build Coastguard Worker fForceHeight = false; 17*c8dee2aaSAndroid Build Coastguard Worker fHeightOverride = false; 18*c8dee2aaSAndroid Build Coastguard Worker fHalfLeading = false; 19*c8dee2aaSAndroid Build Coastguard Worker fEnabled = false; 20*c8dee2aaSAndroid Build Coastguard Worker } 21*c8dee2aaSAndroid Build Coastguard Worker ParagraphStyle()22*c8dee2aaSAndroid Build Coastguard WorkerParagraphStyle::ParagraphStyle() { 23*c8dee2aaSAndroid Build Coastguard Worker fTextAlign = TextAlign::kStart; 24*c8dee2aaSAndroid Build Coastguard Worker fTextDirection = TextDirection::kLtr; 25*c8dee2aaSAndroid Build Coastguard Worker fLinesLimit = std::numeric_limits<size_t>::max(); 26*c8dee2aaSAndroid Build Coastguard Worker fHeight = 1; 27*c8dee2aaSAndroid Build Coastguard Worker fTextHeightBehavior = TextHeightBehavior::kAll; 28*c8dee2aaSAndroid Build Coastguard Worker fHintingIsOn = true; 29*c8dee2aaSAndroid Build Coastguard Worker fReplaceTabCharacters = false; 30*c8dee2aaSAndroid Build Coastguard Worker } 31*c8dee2aaSAndroid Build Coastguard Worker effective_align() const32*c8dee2aaSAndroid Build Coastguard WorkerTextAlign ParagraphStyle::effective_align() const { 33*c8dee2aaSAndroid Build Coastguard Worker if (fTextAlign == TextAlign::kStart) { 34*c8dee2aaSAndroid Build Coastguard Worker return (fTextDirection == TextDirection::kLtr) ? TextAlign::kLeft : TextAlign::kRight; 35*c8dee2aaSAndroid Build Coastguard Worker } else if (fTextAlign == TextAlign::kEnd) { 36*c8dee2aaSAndroid Build Coastguard Worker return (fTextDirection == TextDirection::kLtr) ? TextAlign::kRight : TextAlign::kLeft; 37*c8dee2aaSAndroid Build Coastguard Worker } else { 38*c8dee2aaSAndroid Build Coastguard Worker return fTextAlign; 39*c8dee2aaSAndroid Build Coastguard Worker } 40*c8dee2aaSAndroid Build Coastguard Worker } 41*c8dee2aaSAndroid Build Coastguard Worker } // namespace textlayout 42*c8dee2aaSAndroid Build Coastguard Worker } // namespace skia 43