Re: font angst [message #1325 is a reply to message #1324] |
Mon, 06 September 1993 15:02  |
deutsch
Messages: 19 Registered: February 1992
|
Junior Member |
|
|
In article <25vrn2$f02@skates.gsfc.nasa.gov>, ian@denali.gsfc.nasa.gov (Ian Sprod) writes:
> I am having problems using the 'charthick' keyword with the XYOUTS command.
> The results look terrible - fonts become deformed and are not suitable for
> presentation.
>
> For example try :
>
> IDL> xyouts,0.1,0.2,size=1.4,'!3Note overshoot on MMMM',/norm,charthick=2
>
> I need thick fonts to reduce flicker when images are put on VHS videotape for
> presentations.
>
> Any ideas/solutions out there?
If you are unhappy with the vector-drawn fonts, the solution is to move to
either hardware fonts or bit-mapped fonts. Many devices have hardware fonts
which one can invoke for better quality fonts, although the fonts are often
not transportable to other devices.
To switch to hardware fonts use:
IDL> !p.font=0
where
IDL> !p.font=-1
will get you back to vector-drawn fonts.
To set the desired font, use the device command. For example:
IDL> set_plot,'ps'
IDL> !p.font=0
IDL> device,/helv,/bold
All Postscript fonts are listed and discussed in the IDL manuals.
Another example:
IDL> set_plot,'x'
IDL> !p.font=0
IDL> device,font='terminal-bold'
You can find out which fonts are available under your implementation of
X Windows with the system program 'xlsfonts' (not IDL). e.g.:
% xlsfonts
I suggest running this program in a window with a very large scroll buffer.
So, here is a expansion on your above example which runs under OpenWindows 3.0
on a SPARCstation: You may get 'Requested font does not exist' elsewhere
!p.font=-1
xyouts,0.1,0.2,'!3Note overshoot on MMMM',/norm,charthick=2
!p.font=0
device,font='times-bold'
xyouts,0.1,0.3,'!3Note overshoot on MMMM',/norm
device,font='terminal-bold'
xyouts,0.1,0.4,'!3Note overshoot on MMMM',/norm
device,font='helvetica-bold'
xyouts,0.1,0.5,'!3Note overshoot on MMMM',/norm
device,font='12x24romankana'
xyouts,0.1,0.6,'!3Note overshoot on MMMM',/norm
device,font='8x16romankana'
xyouts,0.1,0.7,'!3Note overshoot on MMMM',/norm
device,font='-adobe-helvetica-bold-r-normal--14-140-75-75-p- 82-iso8859-1'
xyouts,0.1,0.8,'!3Note overshoot on MMMM',/norm
The major problems with this is a) there are a grillion fonts to sift
through if you're picky and b) these fonts are only availabe on X Windows
and worse often only on that particular platform! i.e. if you find a nice
font under OpenWindows 3.0, chances are slim that you'll find the exact
same font under DECwindows/Motif of others. If you stick with the adobe
"iso" fonts, you'll have the best chances for portability (e.g. the last one
in the above example.)
Let me call your attention to perhaps the best ones, the adobe "iso" fonts:
-adobe-helvetica-bold-r-normal--10-100-75-75-p-60-iso8859-1
-adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso8859-1
-adobe-helvetica-bold-r-normal--14-140-75-75-p-82-iso8859-1
-adobe-helvetica-bold-r-normal--18-180-75-75-p-103-iso8859-1
-adobe-helvetica-bold-r-normal--24-240-75-75-p-138-iso8859-1
-adobe-helvetica-bold-r-normal--8-80-75-75-p-50-iso8859
The distinguishing numbers are ^^ here. This is essentially point-size
of each font. You cannot use the charsize= keyword with these hardware
fonts (you can with PostScript hardware fonts, though)
The above is a pretty good solution for most purposes under X windows. You
did not specify what device you are using, so I'll hope you are using this.
If you are using an IVAS, IIS, SunView, or some other implementation, this
won't help you..
The answer then may be to use bit-mapped fonts. This is basically a make-
your-own solution. I have some software which I used to create and use
bit-mapped fonts which where are larger and fatter than any available X
fonts. If you're not happy with the X fonts or need bigger fonts, I can
send you this bit-mapping solution.
cheers,
Eric
Eric Deutsch Email: deutsch@astro.washington.edu
Department of Astronomy FM-20 Voice: (206) 543-1979, 2922
University of Washington FAX: (206) 685-0403
Seattle, WA 98195 Johnson Hall, Room 226
|
|
|