[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: TrueType Font Guide feedback



%% Ross Boylan <RossBoylan@stanfordalumni.org> writes:

  rb> Thanks for making this available; I used the one for 4.x, as I
  rb> used the earlier one. It's very helpful.

Welcome!

  rb> There was one point in the instructions I got a little lost.  It's in
  rb> section 5.1 "The next subject of interest is where the .alias file
  rb> should be put."  You then refer to the .scale file belong in
  rb> /etc/X11/fonts/TrueType.

  rb> For those of us who didn't install the debian package, this directory
  rb> does not exist.  I'm probably fairly typical: I figured I'd use the
  rb> fonts already on my drive, since I boot several OSs.

Well, OK, but note that you're not following the instructions in the
document so there's little doubt things will not work the way the
document says they will :).

You should check the license on the fonts already on your drive, if
you're concerned with things like that: they may well not be usable on
OS's other than the native OS (Windows, presumably).  The Core Fonts
package is explicitly legally licensed.

I left enough information in there for folks to be able to work with
local fonts (how to create a .scale and .dir file, for example), but I
didn't provide, nor did I mean to provide, really detailed instructions
for this.

I'll see if I can find some time to add more details.

  rb> So you need an instruction to create that directory, and then you need
  rb> to say what files should be moved or copied there.  I copied both of
  rb> the fonts.* files I just created.  This meant that when I executed the
  rb> rm you gave, I was left with a .scale file in the directory.  I
  rb> suspect that was not the intent.

  rb> Then the next problem comes in 5.3 at update-fonts-alias.  For this to
  rb> work with an argument of TrueType requires /usr/lib/X11/fonts/TrueType
  rb> to exist.  I made a symlink to the directory I started with.

I don't believe this is the Right Way to do this.

If you're installing your own fonts, not using Debian packages, I don't
think you should put the information for them into /etc/X11, etc.  Those
areas are for Debian packages which install fonts.

If you are installing your own fonts, outside of a Debian package, I
think you should put them somewhere else, like
/usr/local/share/fonts/ttfonts as in my document, and construct the
fonts.scale, fonts.dir, and fonts.alias files in that directory
directly, and add that directory as a FontPath.

In general I try to put _ALL_ locally installed (outside of a package)
files somewhere outside of the standard system directories (such as in
/usr/local or /opt or wherever) and just add references to them; adding
your own files into Debian system package-controlled directories can
lead to problems.

Definitely creating /usr/lib/X11/fonts/TrueType as a symlink to some
other directory is not correct: Debian packages will want to create that
as a directory so you don't want to create it yourself.

The way the other TrueType packages do it is they either dump their
files in that directory directly, or they create symlinks for each
individual .ttf file, not the entire directory (this is what the MS
fonts package does).

  rb> By the way, the .scale file had entries that were not iso8859-1 (e.g.,
  rb> -3).

Yes, I know.  That's fine, and correct.  The .scale file only has one
entry for each font/character set combination, so that's not a drain on
resources.

It's not a problem to have the extra character sets: the only reason we
trim the alias file is that it has an entry for every font/character
set/point size/weight/slant/etc. combination possible, which is quite a
few files.  Since we only need the aliases for a few applications (maybe
we won't need them at all in Netscape 6/Mozilla) we save some compute
power by trimming out all the charsets we don't use.

Note you can still use those charsets!  They just don't have a full
suite of aliases.

  rb> Now, here are a few other observations.

  rb> wine kept crashing on me until I deleted the linotype-palatino fonts
  rb> from the /usr/lib/X11/fonts/TrueType/fonts.dir (copied to
  rb> fonts.scale).  Apparently this is an X bug, but it might be good to
  rb> let people know.

OK, but note that this font is not in the MS core fonts package.

  rb> Users previously using xfstt will want to remove the 7101 server from
  rb> their XF86Config-4.

Only if they don't want a font server any longer of course.

  rb> I think that to get the new path to work you not only need to modify
  rb> FontPath in XF86Config.-4, but you need to add this path to the list
  rb> in /etc/X11/fs/config for catalogue.  In fact, if I understand
  rb> correctly, the XF86Config-4 entry may be optional as long as you have
  rb> something at 7100 for the font server.

The fs/config file configures the font server.  You need one or the
other, but not both (actually, it can still help to have things

  rb> Since the server now has freetype built in, I'm not sure if running
  rb> the font server separately has any value (at least for a local
  rb> machine).  Any clarification of that would be helpful.

My doc says:

  In XFree86 4, loadable modules functionality was added to the X server
  and among the loadable modules provided were two providing TrueType
  font support directly in the X server, without requiring an external
  font server (obviously if you need a font server for some other
  reason, you are still free to use one).

Maybe this should be expanded.

  rb> The whole X setup seems to have a lot of redundancy (e.g., *.dir
  rb> and *.scale), which is asking for trouble.  I don't know if there's
  rb> anything you can say about it that would help, though.

Well, the *.dir vs. *.scale is how the X setup is done.  The *.dir files
are used for regular, non-scaled fonts.  The *.scale file is used only
for scalable (TrueType, etc.) fonts.

I'm not sure why there have to be two or why they have to have the same
contents, though.

  rb> Anyway, it might be worth letting people know they can fool with
  rb> such things in, e.g., /etc/X11/app-defaults/Xman.

Personally, I wouldn't change anything there.

Again, that's a system file controlled by the package manager.  I know
it's a config file, so it won't be updated without asking first, but
even so it's a PITA to keep updating that file with that kind of
modification.  I really avoid modifying any package-controlled files
unless there's no other alternative.

With X resources there are more alternatives than you can shake a stick
at :).  There's really no need to modify these config files.
Personally, I create a $HOME/app-defaults directory, then in my shell
setup I set:

  export XUSERFILESEARCHPATH=$HOME/app-defaults/%N

Obviously if you use XDM or GDM or whatever you need this set in your
session setup file as well.

Now I can create a $HOME/app-defaults/Xman (for example) file, and every
time I start xman it'll be loaded just like the system Xman resource
file, overriding those settings.

The nice thing about this method, as opposed to using .Xdefaults and
xrdb -load or whatever, is that they're dynamic: you change the file and
restart the app and you don't have to reload them into the X server.

  rb> When I configured NS (Mozilla, actually) as described in part 7 the
  rb> choices actually appeared as Monotype-arial black.

Arial Black is a different font.  You should have _both_ Arial _and_
Arial Black in the Monotype foundry.

If you don't, you're missing some fonts or some aliases or some contents
of your .scale file or something.

  rb> Do you want to make a recommendation for the serif fonts, e.g.,
  rb> monotype-times new roman?

Personally I don't have any real opinion.  I rarely use serif fonts.
Use what you think looks good :).

  rb> A couple lines on exactly how and when to restart the font server
  rb> and the X server would be good.  I was concerned doing so would
  rb> kill my session, so I just logged out and then back in.  I'm also
  rb> not sure whether, e.g., /etc/init.d/xfs reload is adequate, or if
  rb> restart is necessary.

I thought I mentioned this, but perhaps it was too brief.

You can either restart the server (by logging out and in), _OR_ you can
use xset to change your font path dynamically.

They're equally good, so use whichever you're more comfortable with.

My document doesn't deal with font servers at all, it's completely
geared towards using the builtin font management not an external server.
Therefore, /etc/init.d/xfs is irrelevant; I actually uninstalled the
font servers on my system altogether.


Thanks for the notes...!

-- 
-------------------------------------------------------------------------------
 Paul D. Smith <psmith@baynetworks.com>    HASMAT--HA Software Methods & Tools
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist
-------------------------------------------------------------------------------
   These are my opinions---Nortel Networks takes no responsibility for them.



Reply to: