Khmer language text is cutted in TextLabel. 10/211610/12
authorJoogab Yun <joogab.yun@samsung.com>
Wed, 7 Aug 2019 05:47:23 +0000 (14:47 +0900)
committerVictor Cebollada <v.cebollada@samsung.com>
Mon, 12 Aug 2019 12:30:49 +0000 (13:30 +0100)
commitf45f8c7983accc407c3f400347d082d44a6b1bc5
tree3b9462a91fec90975b205de3a2161286872a35e2
parent4af8225dd04de11ab0085f2cab0e55f43eddf275
Khmer language text is cutted in TextLabel.

* Fixed an issue while retrieving the 'width' metric from complex glyphs.
  i.e the complex glyph 'ត់' is formed by two glyphs ( 'ត' and '់')
  The width of the group is calculated as the accumulated advance + the
  x bearing and width of the last glyph. In that case for the last glyph
  the accumulated advance plus the width is smaller than the width of the
  previous glyph.

* The solution is to calculate the initial width edge and the max width edge.

if HORIZONTAL_ALIGNMENT is END, this is a problem.
example)
    TextLabel labe21 = TextLabel::New();
    labe21.SetSize( 600, 100 );
    labe21.SetParentOrigin(ParentOrigin::TOP_LEFT);
    labe21.SetAnchorPoint(AnchorPoint::TOP_LEFT);
    labe21.SetPosition( 100.f, 100.f);
    labe21.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "END" );
    labe21.SetProperty(Dali::Toolkit::TextLabel::Property::TEXT, "ការកំណត់" );
    stage.Add( labe21 );

Change-Id: I0a59ddc0c2c01493ea381f50310882ca9dcfc2e9
automated-tests/src/dali-toolkit-internal/utc-Dali-Text-Layout.cpp
dali-toolkit/internal/text/glyph-metrics-helper.cpp
dali-toolkit/internal/text/glyph-metrics-helper.h