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

Regarding Justification:

The idea that adding spacing between characters (as well as between words)
is another form of achieving full justification is, strictly speaking,
incorrect. What needs to be done is "adding additional spacing between
character CELLS." For western languages there is effectively no difference
between the two, but for languages using those scripts that permit glyphs to
be combined with other glyphs in a single character cell, it becomes
critical. (Keep in mind that, although some western language scripts (e.g.
Latin) combine things like the letter "u" and an umlaut, for instance, these
are available as single glyph combinations, making the distinction between
characters and character cells moot.

In order for more sophisticated, but still generalized, algorithms for full
justification to be implemented, it is also necessary for the underlying
"typesetting engine" to be able to properly and transparently handle text
using arbitrary combinations of scripts that are written in the same
orientation (e.g. English, Russian, and Arabic are all oriented
horizontally, even though Arabic is written right-to-left while
English/Latin and Russian/Cyrillic are written from left-to-right).

LibreOffice, as with most other competitors I've used, suffers from
fundamental underpinnings that often go back to the late 1970s;
LibreOffice's roots date back to Star in the 1980s. Most of these can be
coerced into handling two scripts (as opposed to languages) in the same
document, but become hopelessly muddled when attempting to create documents
with multiple scripts. Any improvements to paragraph-based justification
(look-ahead) built on the current code base would certainly be welcome, but
would be somewhat limited and, for some scripts/languages, not at all

Justification also becomes quite interesting when used with
scrripts/languages (e.g. Thai) that don't generally have spaces between
words at all, but use spaces to separate words.

For interesting (well, that's an acquired taste) reading about
justification, consider the following:

Knuth and Plass:        1981; This is the same Donald Knuth any good
programmer should already know.
Hochuli and Kinross:    1996; 
Hàn Thé Thành:          1999; There is actually a difference between having
character edges aligned
                                        against the margin and merely
“appearing” to be aligned against the margin
                                        edges; see
Haralambous and Bella:  2006; 
Elyaakoubi and Lazrek:  2010; See;rgn=main

Also, a web search for the word "Kashideh" describes a form of justification
that is specific (as far as I am aware) to languages that use the Arabic

The subject of justification is also discussed on page 18 of the document
Exploring_CTL.pdf, one of a pair I attached to Bug Report 92655.


View this message in context:
Sent from the Users mailing list archive at

To unsubscribe e-mail to:
Posting guidelines + more:
List archive:
All messages sent to this list will be publicly archived and cannot be deleted


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.