X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Fcharacter-set-conversion.cpp;h=67c294b76c8079e5dd694e1dc45198a8fdbb4eb3;hp=3afecbb062ec9aadcc382365dd1c37b427a9c564;hb=f7e73f010f873b37b8f617c62873992e6e41dc5d;hpb=eb76d9131e2e66aeaeb2a1a6ca66b9fe80f0c873 diff --git a/dali-toolkit/internal/text/character-set-conversion.cpp b/dali-toolkit/internal/text/character-set-conversion.cpp index 3afecbb..67c294b 100644 --- a/dali-toolkit/internal/text/character-set-conversion.cpp +++ b/dali-toolkit/internal/text/character-set-conversion.cpp @@ -24,6 +24,9 @@ namespace Dali namespace Toolkit { +namespace Text +{ + namespace { const static uint8_t U1 = 1u; @@ -211,6 +214,19 @@ uint32_t Utf32ToUtf8( const uint32_t* const utf32, uint32_t numberOfCharacters, return utf8 - utf8Begin; } +void Utf32ToUtf8( const uint32_t* const utf32, uint32_t numberOfCharacters, std::string& utf8 ) +{ + utf8.clear(); + + uint32_t numberOfBytes = GetNumberOfUtf8Bytes( &utf32[0], numberOfCharacters ); + utf8.resize( numberOfBytes ); + + // This is a bit horrible but std::string returns a (signed) char* + Utf32ToUtf8( utf32, numberOfCharacters, reinterpret_cast(&utf8[0]) ); +} + +} // namespace Text + } // namespace Toolkit } // namespace Dali