[scribus-dev] scribusCTL plan

Kunda Loves Scribus scribus.user at gmail.com
Wed Nov 25 21:42:03 UTC 2015


On Tue, Nov 24, 2015 at 12:25 PM, Dawood al-badi <dawood.albadi at gmail.com>
wrote:

> Glad to hear from you Mr. Andreas Vox
>
> It will be very helpfull if we synchronize our work. We also do changes in
> so many places regarding this separation but we didn't finish yet. If you
> can share your work it will be very helpful for me.
> Thank you
> Dawood
> On Nov 24, 2015 8:17 PM, "Andreas Vox" <avox at arcor.de> wrote:
>
>> Hi Dawood!
>>
>>
>>
>> Sorry for keeping quiet for so long.
>>
>>
>>
>> I already started on separating StoryText and GlyphLayout. Unfortunately
>> that requires changes at hundreds of other places. So far I changed
>> textlayout.h/cpp, storytext.h/cpp and related classes and adapted
>> pageitem.cpp and pageitem_textframe.cpp. Right now I’m working on
>> pdflib_core.cpp.
>>
>>
>>
>> Do you think it would help if I commit my (not compiling) code to github?
>>
>>
>>
>> Regards,
>>
>> Andreas
>>
>>
>>
>> *From:* Dawood al-badi [mailto:dawood.albadi at gmail.com]
>> *Sent:* Dienstag, 24. November 2015 11:43
>> *To:* Scribus Development Mailing List
>> *Subject:* [scribus-dev] scribusCTL plan
>>
>>
>>
>> Per developers request, I will explain Oman HOST team thoughts.
>>
>> Current process of laying out text is as follows:
>>
>>
>>
>> The StoryText class handles characters and glyphs layout. This class
>> stores characters in a member with type of ScText_Shared with basically a
>> QList of ScText, which (despite its name) stores a single character, its
>> styles and associated GlyphLayout.
>> The problem with this is that the order of glyphs is tied to the logical
>> order of characters so we can not apply the bidi algorithm to support right
>> to left languages as it will reorder the text to its visual order. It can
>> not also represent many to one characters to glyphs relationship e.g.
>> ligatures.
>>
>> Our Aim:
>>
>> Andreas proposal is to separate glyph layout from story text which should
>> make it possible to avoid above limitations. So, we are moving all
>> functions  related to glyph layout to the TextLayout class. This currently
>> includes:
>>
>> getGlyphs()
>> flags()
>> hasFlag()
>> setFlag()
>> clearFlag()
>>
>> There will be a mapping between glyphs in TextLayout and characters in
>> StoryTextWhich will remove the  need for ScText so we can drop it
>> inertially. This will allow for us to change the visual order of the glyphs
>> without affecting the logical order of the characters, which is the
>> prerequisite for CTL support i.e. bidi and shaping.
>>
>> We are splitting the project into three stages.
>>
>> 1- Separating glyph layout from story text.
>>
>> 2- Refactor or prepare TextLayout class to integrate HarfBuzz and ubidi.
>>
>> 3- Integrate harfbuzz and bidi with scribus.
>>
>>
>>
>> Any feedback will be highly welcomed.
>>
>
Hey everyone,
Lets stop breaking the mailing list rules about not top-posting.
Avox, so Dawood has given the green light to push your changes to github
repo
So please do that as soon as you can.

Also if you can be available to answer their questions since they do have a
time-limit for their project. We could actually see the realization of CTL
committed to trunk in this lifetime! :)

Cheers,
/Kunda
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.scribus.net/pipermail/scribus-dev/attachments/20151125/abf7ce6c/attachment.html>


More information about the scribus-dev mailing list