[bt-devel] Re: Display bug - was Re: Typographical errors in handbook

Fred Saalbach bt-devel@crosswire.org
Wed, 27 Mar 2002 15:14:23 -0500


After the changes you made the display looks good with
Bitstream Cyberbit and Clearlyu.  Don't know about the
left to right issue.  We will have to find someone that knows
one of those languages to test it.

Joachim Ansorg wrote:

> Dear Fred,
>
> thank you for all your bug-searching about Unicode fonts.
>
> > [fonts]
> > standard=bitstream cyberbit,14,0,22,50,1
> > unicode=helvetica,11,0,22,50,0
> >
> > I changed it to read
> >
> > [fonts]
> > standard=helvetica,11,0,22,50,0
> > unicode=bitstream cyberbit,14,0,22,50,1
> >
> > now bibletime loads but in the font configure dialog is see
> >
> > standard
> >
> > Bitstream cyberbit
> >
> > iso-10646-1
>
> This is really strange. I tried to find this bug but had no real success
> because I tested it in my german environment and even set with english
> english (like your desktop) but it does work in both cases.
>
> I found a stupid bug which may cause your problem, but I'm not really sure
> about this. Can you please update your CVS of BibleTime and try again with
> this?
>
> > 1.    Either i misinterpreted the instructions
> >
> >       in the dialog, or the tags for standard and unicode
> >
> >       are reversed in the dialog from what they should be.
>
> On my side they are not reversed, but this may be a thing with translations.
> Does the update fix this?

YES !!!!!!!!!!!

>
>
> > 2.    Is this setting really necessary?  Could the enabling
> >       of unicode be automatic?  The main use I see for the selection is for
> >       the case where a module being displayed is an
> >       iso-8859-2 through whatever encoding.  If a document is
> >       iso-10646-1, X should be able to select the correct font
> >       as long as an iso-10646-1 font exists.
>
> There are no iso8859-x modules any longer, except for iso8859-1 encoded
> texts. In Sword we do only have iso8859-1 and iso10646-1 modules now.

This simplifies things greatly.

>
>
> X itself does only provide the fonts. We use Qt to query fonts.
>
> I spend some time to find a way to set a reasonable default for the unicode
> font, but it doesn't work properly. Maybe I have to ask some KDE developers,
> but I'm sure it's possible because Konqueror chooses the right font for UTF-8
> texts, too.

I think KDE sets helvetica as the default unicode font as now I sometimes get

(BibleTime 1.1beta2) WARNING: the unicode font found by KDE is helvetica

Usually when issuing a print request, however the helvetica installed only
seems to have the western european (plus German and possibly eastern
european) characters (no greek for example).

>
>
> At the moment I changed BT to use KDE's methods for finding an unicode font,
> but at least on my side it doesn't work properly. To test this remove the
> bibletimerc config-file and start BibleTime.

I think it did what KDE is doing after deleting bibletimerc

[fks00@localhost bibletime]$ bibletime
(BibleTime 1.1beta2) WARNING: the unicode font found by KDE is helvetica
(BibleTime 1.1beta2) WARNING: CBiblePresenter::CBiblePresenter
(BibleTime 1.1beta2) WARNING: ASSERT: "m_charsetMap" in qrichtext.cpp (1251)
(BibleTime 1.1beta2) WARNING: the unicode font found by KDE is helvetica
(BibleTime 1.1beta2) WARNING: CBiblePresenter::initAccels()
(BibleTime 1.1beta2) WARNING: CREATE NEW PRESENTER: (null)
(BibleTime 1.1beta2) WARNING: CBibleKeyChooser::setKey(CKey* key)
(BibleTime 1.1beta2) WARNING: 1 1:1
(BibleTime 1.1beta2) WARNING: CHTMLEntryDisplay::updateSettings(void)
(BibleTime 1.1beta2) WARNING: the unicode font found by KDE is helvetica
(BibleTime 1.1beta2) WARNING: the unicode font found by KDE is helvetica

This is OK as long as I take this into account in the handbook.
Checking a font to determine if it has the characters needed to display a module
would be
painful the program would probably need to check it character by character, and
compare it with the contents of a module..

>
>
> > 3.    What is supposed to occur is a display window is opened that
> >       requires iso-8859-1, another that requires iso-8859-2, and a
> >       third that requires iso-8859-3?  (as more documents are
> >       converted to iso-10646-1 this issue should go away).
>
> AFAIK there are only iso8859-1 and iso10646-1 modules in Sword  now. The
> older modules with their special font config are no longer supported, because
> the new versions of them are working.
>
> > 4.    Can we trap
> >
> > (BibleTime 1.1beta2) _FATAL_: QFont::lastResortFont: Cannot find any
> > reasonable font
> >     so that bibletime reverts to the default font and issues an error like
> >     'font requested was not fount, using default font.' rather than
> > crashing?
>
> This is a message of Qt which shouldn't occur. In what cases do you get this
> fatal message?

This message occurred when trying to start bibletime when the unicode font
selected in bibletimerc was a iso8859-1 font.

I tried to force the error, whatever you did seems to prevent the application
from
crashing; however the following is displayed if IGNT is opened and bitstream
courier
is the unicode font.

(BibleTime 1.1beta2) WARNING: the unicode font found by KDE is helvetica
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 5 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 6 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 7 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 8 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 9 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 10 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 11 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 5 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 2 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 5 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 6 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 7 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 8 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 9 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 10 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 11 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 5 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 2 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 5 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 6 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 7 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 8 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 9 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 10 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 11 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 5 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 2 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 3 out of range!
(BibleTime 1.1beta2) WARNING: QTextParag::lineInfo: line 4 out of range!

This is much better than crashing!!!!!!!!!!!!!!!!

Fred Saalbach  8-)

>
>
> Thanks,
> Joachim