I installed the .chm file viewer HelpExplorer 3.0 in both Windows XP and Arch Linux (chm = compiled HTML help file). In Windows XP, with default fonts installed, the fonts in text read with this viewer appear crisp, sharp and anti-aliased. In Arch with KDE 3.5.7, on the other hand, the fonts appear fuzzy, grainy and don't seem to be anti-aliased, in contrast with their appearance in all other apps (except for a few such as Dillo) which render text good-looking, sharp and anti-aliased.
HelpExplorer for Linux was provided as a tarball that included a precompiled 'helpexplorer' binary. The program doesn't seem to allow for customizing font settings.
The following fonts are installed in Arch (in /usr/share/fonts/):
ttf-bitstream-vera-1.10-5 is installed by default
gsfonts 8.11-4 is installed by default
PostScript Type 1 fonts installed: Century Schoolbook, Nimbus, URW Bookman, URW Gothic, URW Palladio
ttf-ms-fonts-2.0-1 (Microsoft TTF: Andale Mono, Arial, Comic, Courier, Georgia, Impact, Tahoma, Times New Roman, Trebuchet)
font-bh-ttf-1.0.0-3 (Luxi BH)
xorg-fonts-100dpi-1.0.1-1 (courier, helvetica, lucida, new century, times)
The "Files" section of my xorg.conf looks as follows:
Section "Files" RgbPath "/usr/share/X11/rgb" ModulePath "/usr/lib/xorg/modules" FontPath "/usr/share/fonts/misc:unscaled" FontPath "/usr/share/fonts/misc" FontPath "/usr/share/fonts/75dpi:unscaled" FontPath "/usr/share/fonts/75dpi" FontPath "/usr/share/fonts/100dpi:unscaled" FontPath "/usr/share/fonts/100dpi" FontPath "/usr/share/fonts/PEX" # Additional fonts: Locale, Gimp, TTF... FontPath "/usr/share/fonts/cyrillic" # FontPath "/usr/share/lib/X11/fonts/latin2/75dpi" # FontPath "/usr/share/lib/X11/fonts/latin2/100dpi" # True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig! FontPath "/usr/share/fonts/Type1" FontPath "/usr/share/fonts/ttf/western" FontPath "/usr/share/fonts/ttf/decoratives" FontPath "/usr/share/fonts/truetype" FontPath "/usr/share/fonts/truetype/openoffice" FontPath "/usr/share/fonts/truetype/ttf-bitstream-vera" FontPath "/usr/share/fonts/latex-ttf-fonts" FontPath "/usr/share/fonts/defoma/CID" FontPath "/usr/share/fonts/defoma/TrueType" EndSection
I've attached a screenshot of some text displayed in the HelpExplorer reader in Arch (the font is Times New Roman): http://img216.imageshack.us/my.php?imag … ot1zh9.png
What do I need to do to improve the font appearance in this program in Linux?
Last edited by RobF (2007-10-02 18:06:46)
As you're using KDE anyway - there's kchmviewer in community repo. Unless you're stuck on using HelpExplorer, for some reason.
Of the three viewers that I know of, Kchmviewer, Xchm and HelpExplorer, I actually like the last best.
i can't help you out since im on windows at work right now, but i have to say, helpexplorer looks nice from the screenshots on their website. i just gave up reading my chm books because i hated using kchmviewer, and xchm always printed some characters strangely(as if it doesn't support UTF encoded characters?). helpexplorer looks like the answer i could never find. so i'll take a look at it when i get home and see if i can help.
well i played around with it. and omg screenshots can be deceiving! totally unconfigurable. well, actually the fonts might be configurable(~/ .helpexplorerc) but there's no documentation or hint on how to do so.
this got me looking into chmsee. its in the aur but its outdated, so i dl'd the source from http://chmsee.gro.clinux.org/chmsee-0.9.6.tar.bz2 and just "./configure --prefix=/usr" "make" "make install"'d it. i had to create a symlink for libgtkhtml to get it to configure correctly: "ln -s /usr/lib/pkgconfig/libgtkhtml-3.14.pc /usr/lib/pkgconfig/libgtkhtml-3.8.pc"
sorry, didn't make a package. you should check it out. it's really nice.
It's clear that my problem with HelpExplorer in Linux is that it doesn't display anti-aliased fonts. The font that I displayed in the screenshot sample
certainly is not anti-aliased. Perhaps it's the "times" font from the xorg-fonts-100dpi package. When I display the same paragraphs in Firefox (which automatically picks the "Times New Roman" TrueType font), the text is crisp and clear and definitely anti-aliased.
If I could make HelpExplorer pick the latter font and display it anti-aliased, I'd be happy. How do I do that? Is this done somewhere in the X server fonts config, e.g. in xorg.conf, or is it done at the applications level?
The only fonts options that HelpExplorer offers is in the [Setup/Font Aliases] section in .helpexplorerc where one supposedly can substitute fonts available in the target OS, i.e. Linux, for fonts specified in the .chm file but not available in the target OS ("font aliasing"). The sample file that I linked to above specifies "times" as a font but a Times=Lucida or any other substitution in [Setup/Font Aliases] that I tested didn't seem to do anything.
Re chmsee: I tried to compile v.1.0.0 from source but I got fatal errors.
I found a solution of sorts by installing and running the Windows version of HelpExplorer in Wine or Crossover. There is still very little control over fonts but when I enlarge the default font (with 2x CTRL-+) I do get a nice-looking anti-aliased Times New Roman font, and this solution would be my preferred way of reading .chm files in Linux (i.e. better than KchmViewer or Xchm).
Recap of the problem:
1. The .chm viewer HelpExplorer Viewer 3.0 when installed in Windows XP renders fonts crisp and clear and anti-aliased.
2. The Linux version of HelpExplorer Viewer 3.0 (delivered as a precompiled executable in a tarball) doesn't render fonts antialiased, regardless of what I tried, and they look grainy and unattractive.
3. The Windows version of HelpExplorer Viewer 3.0 when installed and run in Arch in Wine or Crossover does render the default font they offer (looks like Times New Roman) fairly crisp and clear and anti-aliased, at least at the enlarged setting.
Can someone explain to me what might be going on? Why is it that the Linux version cannot render fonts anti-aliased when the Windows version running in the emulator in Linux can? Is there something that I have to change in my fonts config, fonts location, symlinks or path to get the anti-aliased fonts to work in HelpExplorer in Linux?
Why is it that the Linux version cannot render fonts anti-aliased when the Windows version running in the emulator in Linux can? Is there something that I have to change in my fonts config, fonts location, symlinks or path to get the anti-aliased fonts to work in HelpExplorer in Linux?
The Linux version of HelpExplorer uses GTK+ 1 which, AFAIK, does not support anti-aliased fonts (i.e. FreeType). I assume Wine intercepts calls to the Windows font library functions and passes them to FreeType to achieve the same effect, or something along those lines.
For the record I am also having problems with xCHM not displaying certain unicode characters - but instead those generic the-font-doesn't-support-this-character glyphs. The same things display fine in Opera (after decompressing the CHM file) and HelpExplorer. I've posted a message to the xCHM help forum so we'll see what happens.