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


Thank you, Caolán, for your suggestions.


The first thing I've tried was to compile the current version with and
without harfbuzz using
./autogen.sh --with-harfbuzz=no
The result was the same (bad).

I am, however, not sure if harfbuzz was really switched off, since in
config.log I can see

$ ./configure --with-harfbuzz=no
--srcdir=/mnt/data/milos/sbox/libreoffice.git --enable-option-checking=fatal
but later
configure:30367: checking which harfbuzz to use
configure:30468: result: internal

and later also
-I/usr/include/harfbuzz
-lharfbuzz -lharfbuzz-icu

I've tried to investigate it bit deeper:

revision mentioned:
bff8fa9 - (2013-05-06 11:08:29 +0200) Enable HarfBuzz by default -
Khaled Hosny

The last good revision according to my bibisection
f0393d7 - (2013-05-06 16:54:53 +0200) [harfbuzz] Fix text width
calculation, 3rd try - Khaled Hosny

The first bad revision according to my bibisection
48ad2f6 - (2013-05-06 12:48:23 +0200) fdo#46808, Convert some code to
getProcessComponentContext

So, they really are from the same day.

I unfortunately cannot compile these revisions, maybe because my
compiter is too new (gcc version 5.4.0 20160609 (Ubuntu
5.4.0-6ubuntu1~16.04.1)). I happens because of std::auto_ptr:
/workdir/unxlngx6.pro/UnpackedTarball/boost/boost/smart_ptr/scoped_ptr.hpp:66:31:
warning: ‘template<class> class std::auto_ptr’ is deprecated
[-Wdeprecated-declarations]
 
How should I use the -Wdeprecated-declarations switch?

thanks
Milos



On 2016-07-20 18:27, Caolán McNamara wrote:
On Wed, 2016-07-20 at 08:55 +0200, Milos Sramek wrote:
Hi,

In Brno I would like to present my tools for automated detection and
bibisection of interoperability problems between LO an MS Office. My
method is currently of limited utility, because there is a problem
with
rendering of plain text, which affects most documents and overshadows
other bugs.

I managed to localized the problem by bibisection. I also wanted to
investigate it more deeply, but was unable to compile that version.
Thus, I would need help from you :).

The problem resides in that the text layout changed (as bibisected
using  bibisect-43all):
You don't state the platform you were working on. Was it Linux, if so
then probably "bff8fa97e16f0f06fddc5545ea36c8bd2b18a580: Enable
HarfBuzz by default" is what changed during that period.

With text layout there's the vcl level stuff, which is now backed by
harfbuzz on Linux, and different things on the other platforms.
Typically we have had "little" differences between out platforms when
it comes to text layout already. There's a GSOC underway to experiment
with using harfbuzz on all platforms. In this stack of code different
features enabled/disabled in the underlying fontconfig can cause other
differences too.

I presume you've ensured the same fonts are available to LibreOffice as
MSOffice otherwise you'd not have gotten this far anyway I guess.

There's also some extra "wiggling" of glyphs that writer does on top of
all this. I never could quite figure out what writer does there or why
it does it, but that adds some extra variability to things.

I could never get an exact pixel-to-pixel match in the past (ages ago,
before the harfbuzz rework) so I guess this was also a "slightly-fuzzy" 
approach in the close-match case.

Maybe there's some way to try disabling kerning in the harfbuzz layer
to see if that makes a difference in any way.

C.

as an aside, if I was going down the road again of investigating our
differences in layout vs msoffice I'd probably try getting harfbuzz up
and running under windows LibreOffice and then see what the differences
there were between LibreOffice/MSOffice after throwing out all the
mysterious writer adjustment code. Possibly creating some ultra-dumb
font that is plain black blocks or something like that.
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice


-- 
email & jabber: sramek.milos@gmail.com


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.