[FriBidi] Incorrect Arabic text rendering in maperver

Behdad Esfahbod behdad at behdad.org
Sat Mar 12 16:04:28 PST 2011


On 03/09/11 14:08, Ian Walberg wrote:
> Behdad,

Hello,

> We are back looking at this again and have tried a few combinations and none seem to work.
> 
> Here is the test change we made to fribidi-arabic.c
> 
> for (i = 0; i < len - 1; i++) {
>     register FriBidiChar c;
>     if (FRIBIDI_LEVEL_IS_RTL(embedding_levels[i]) &&
>         embedding_levels[i] == embedding_levels[i+1] &&
>         (c = PAIR_MATCH(table, size, str[i], str[i+1])))
>       {
>         /* str[i] = FRIBIDI_CHAR_FILL; */
> // Do we need to remove this next line as well?
>         FRIBIDI_SET_BITS(ar_props[i], FRIBIDI_MASK_LIGATURED);
>         /* str[i+1] = c; */
>         str[i] = c;
>       }
>   }

I suggest instead of changing the FriBidi code you simply walk over the output
string and remove the filler character.

behdad


> The assumption is that we would make the 'real' change to mapserver and not here.

> Thanks
> 
> Ian


More information about the fribidi mailing list