Date: prev next · Thread: first prev next last
2019 Archives by date, by thread · List index


Hi Alexander,

Am 29.03.19 um 17:06 schrieb Alexander Farrow:
For GSoC 2019 I would love to work on the "Sub-pixel and stable glyph positioning" project from 
the
list of ideas without a mentor:
https://bugs.documentfoundation.org/show_bug.cgi?id=103322

I'm particularly interested in this project as I experience poor glyph positioning quite often as 
a
LibreOffice user.

To achieve the required skills for this project I read the "State of text rendering" paper  by 
Behdad
Esfahbod to further my understanding of text rendering. I've also followed the HarfBuzz tutorial 
to
develop a primitive text rendering program.

This is more then 10 years old. I have no idea how much it represents the
current state.

I've been familiarising myself with the LibreOffice text rendering code particularly 
CommonSalLayout.
I've written a very small patch for this file, changing a variable from tools::Point to 
basegfx::B2DPoint
to add support for floating point values.

I've followed the Bugzilla comments and I'm now looking into what changes will need to be made
throughout the code-base to store the glyph positions in a floating point variable. Specifically, 
I'm
currently looking into how to make the following code changes:

1. DeviceCoordinate -  Change from a long to a double.
2. GlyphItem - Change m_aLinearPos from tools::Point to basegfx::B2DPoint. Change m_nOrigWidth
from an int to a double. Change m_nXOffset from an int to a double.

There is also https://gerrit.libreoffice.org/#/c/62219/

Interesting post for a different problem with the same solution: Getting real
linearly-scalable text
(https://lists.cairographics.org/archives/cairo/2008-May/014149.html)
But it's also 10 years old...

The image link still works and show the (potentially long fixed?) problem
https://www.flickr.com/photos/behdad/2493693932/sizes/o/

Then there is
https://www.unicodeconference.org/presentations/S5T2-R%c3%b6ttsches-Esfahbod.pdf
- that's from 2016.
It's not about positioning, but a nice overview of Chromes text rendering
evolution, as Behdad Esfahbod is working for Google for quite some time.

I am hoping that somebody would like to be my mentor for this project.

I have added some potential mentors, which are normally also interested in font
rendering. As much as I could potentially do some mentoring, as I know a share
of SalLayout and VCL, I have just minimal idea about text rendering, mainly from
the time writing the Qt5 VCL backend. I'm willing to do some larger share of it.
Someone of you want to share?

ATB

Jan-Marek

P.S. this is potentially cross-platform and I just have Linux.

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.