Re: Porting Pango - attempting to render right to left text.



<dleach qnx com> writes:

> Hello Everyone,
> 
> I am using Pango 1.00, and attempting to port it to a proprietary OS
> font system (QNX Rtp).  Anyhow, not the simplest task.  I have
> it all compiled, as well a glib, gmodule, gobject, iconv, intl, charset,
> and fribidi. I also ported the arabic, hebrew, and latin plugins.

Sounds like a bit of a chore :-)

(I assume that by fribidi, you mean the included version... using an
external fribidi has intentionally been disabled.)
 
> A little background ...
> 
> No need for styling/weights.
> Summited strings are in UTF-8.
> Always given single paragraph, invoking pango_layout_set_single_paragraph_mode(para->layout, TRUE);.
> Paragraphs not broken/wrapped, i.e. no '\n' symbols.
> Overrode PangoFont class, to pass engine specific data down to language plugins (shapers).
> Using the layout API.
> 
> Now, I need a sanity check.  The following hebrew string (in UTF-8 multibyte) is passed in
> to Pango:
> 
> 1500 1499 1514 1493 1489 32 1489 1506 1489 1512 1497 1514 63
> 
> The resultant bitmap is:
> 
> .......................................................................................................
> .......................................................................................................
>         @               @               @                       @               @................@@.....
> .@@@@@@@@@@.....@@@@@@..@@@@@....@@..@@.@@@@@...........@@@@@...@@@@.....@@@@@@@.@@@@...@@         @....
>       @             @......@@       @......@@..............@@            @         @@          @       
>       @             @            @          @                     @           @        @               
>       @             @            @          @                     @           @        @........@@.....
>       @             @            @.@@                       @            @          @..@@@@@@          
>       @                     @.....@@                        @            @          @                  
> @@@                  @..@@@@@@@.@@@@....@@@@@@@.........@@@@@@@         @@@....@@@@@@           @@......
> ...............................@@                                                              @@......
> ..........................................................................................@@...........
> .........................................................................................@@............
>                                                                                                        
> .......................................................................................................
> .......................................................................................................
> 
> Now, I realize the above bitmap does not correspond directory to the Unicode values,
> i.e. the first character is not U+1500, so there is some reordering going on.
> I would have expected the '?' mark to be at the front of the string though.
> The reason I state this, is because I lifted the Unicode sequence from a Hebrew
> website, that had two versions, logical, and visual.  The visual representation
> on the website looks nothing like the above rendered bitmap.

The ? should in fact be at the right since it sounds like your global direction is LTR. As for
the other characters.. they look plausible. The attached image is the text corresponding to
your code points, once as is, once with a right-to-left mark appended, as render by the
Xft backend for Pango.

I've also attached the text I used as UTF-8.

Regards,
                                        Owen

Attachment: hebrew.png
Description: Text as png

Attachment: hebrew.txt
Description: Text as UTF-8



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]