QHebrewCodec - Conversion to and from visually ordered Hebrew
All the functions in this class are reentrant when Qt is built with thread support.</p>
virtual const char * mimeName () const
virtual QCString fromUnicode ( const QString & uc, int & lenInOut ) const
The QHebrewCodec class provides conversion to and from visually ordered Hebrew.
Hebrew as a semitic language is written from right to left. Because older computer systems
couldn't handle reordering a string so that the first letter appears on the right, many
older documents were encoded in visual order, so that the first letter of a line is the
rightmost one in the string.
In contrast to this, Unicode defines characters to be in logical order (the order you
would read the string). This codec tries to convert visually ordered Hebrew (8859-8) to
Unicode. This might not always work perfectly, because reversing the bidi (bi-directional)
algorithm that transforms from logical to visual order is non-trivial.
Transformation from Unicode to visual Hebrew (8859-8) is done using the bidi algorithm in
Qt, and will produce correct results, so long as the codec is given the text one whole
paragraph at a time. Places where newlines are supposed to start can be indicated by a
newline character ('\n'). Please be aware, that these newline characters change the
reordering behaviour of the algorithm, as the BiDi reordering only takes place within one
line of text, whereas linebreaks are determined in visual order.
Visually ordered Hebrew is still used quite often in some places, mainly in email
communication (as most email programs still don't understand logically ordered Hebrew) and
on web pages. The use on web pages is strongly decreasing however, as there are now a few
browsers that correctly support logically ordered Hebrew.
This codec has the name "iso8859-8". If you don't want any bidi reordering to happen
during conversion, use the "iso8859-8-i" codec, which assumes logical order for the 8-bit
See also Internationalization with Qt.
MEMBER FUNCTION DOCUMENTATION
QCString QHebrewCodec::fromUnicode ( const QString & uc, int & lenInOut ) const [virtual]
Transforms the logically ordered QString, uc, into a visually ordered string in the 8859-8
encoding. Qt's bidi algorithm is used to perform this task. Note that newline characters
affect the reordering, as reordering is done on a line by line basis.
The algorithm is designed to work on whole paragraphs of text, so processing a line at a
time may produce incorrect results. This approach is taken because the reordering of the
contents of a particular line in a paragraph may depend on the previous line in the same
Some encodings (for example Japanese or utf8) are multibye (so one input character is
mapped to two output characters). The lenInOut argument specifies the number of QChars
that should be converted and is set to the number of characters returned.
Reimplemented from QTextCodec.
const char * QHebrewCodec::mimeName () const [virtual]
Returns the codec's mime name.
Reimplemented from QTextCodec.
Copyright 1992-2001 Trolltech AS, http://www.trolltech.com. See the license file included
in the distribution for a complete license statement.
Generated automatically from the source code.
If you find a bug in Qt, please report it as described in
http://doc.trolltech.com/bughowto.html. Good bug reports help us to help you. Thank you.
The definitive Qt documentation is provided in HTML format; it is located at
$QTDIR/doc/html and can be read using Qt Assistant or with a web browser. This man page is
provided as a convenience for those users who prefer man pages, although this format is
not officially supported by Trolltech.
If you find errors in this manual page, please report them to firstname.lastname@example.org.
Please include the name of the manual page (qhebrewcodec.3qt) and the Qt version (3.1.1).
Trolltech AS 9 December 2002 QHebrewCodec(3qt)