Kaydet (Commit) 8ead1423 authored tarafından Mark Hung's avatar Mark Hung Kaydeden (comit) Caolán McNamara

tdf#832525 - Wrong punctuation direction after Chinese characters in

vertical layout.

Change-Id: I6391e665db205545f0d660e3de826755c954f286
Reviewed-on: https://gerrit.libreoffice.org/17836Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst c4fe1240
......@@ -200,7 +200,7 @@ int GetVerticalFlags( sal_UCS4 nChar )
are GF_NONE also, but already handled in the outer if condition
*/
if((nChar >= 0x3008 && nChar <= 0x301C && nChar != 0x3012)
|| (nChar == 0xFF3B || nChar == 0xFF3D)
|| (nChar == 0xFF3B || nChar == 0xFF3D || nChar==0xFF08 || nChar==0xFF09)
|| (nChar >= 0xFF5B && nChar <= 0xFF9F) // halfwidth forms
|| (nChar == 0xFFE3) )
return GF_NONE; // not rotated
......
......@@ -248,7 +248,7 @@ void CairoTextRender::DrawServerFontLayout( const ServerFontLayout& rLayout )
{
int nGlyphRotation = *aI;
std::vector<int>::const_iterator aNext = std::find_if(aI+1, aEnd, hasRotation);
std::vector<int>::const_iterator aNext = nGlyphRotation?(aI+1):std::find_if(aI+1, aEnd, hasRotation);
size_t nStartIndex = std::distance(aStart, aI);
size_t nLen = std::distance(aI, aNext);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment