oivindt@bio.uio.no (Oivind Toien) (04/19/91)
I am trying to output vertical text to the screen initiated with the CreateFontIndirect procedure. Setting the parameters lfOrientation:=900; and lfEscapement:=900; makes stroked fonts (Roman, Script and Modern) appear vertical. This does however not work with the bit-mapped fonts, and not with the corresponding fonts on a system where ATM was installed. The example I modified (GDIDEMO.PAS that came with TP for Windows) uses the TextOut procedure. I have tried to play with the other parameters in TLogFont with no improvement. EXCEL 3.0 is however able to do this, and it seems that they do not use special fonts. (I may be wrong here). Am I missing something here? If it is not possible to do this now (except using non-standard fonts and techniques), will this improve when we get true-type? Any comment will be appreciated. I will need vertical text on the Y-axis for a plotting-program. -- Oivind Toien <oivindt@ulrik.uio.no> Div. of General Physiology, Dept. of Biology, Univ. of Oslo P.O. Box 1051, N-0316 Oslo 3, NORWAY Phone+47-2-454732 Fax+47-2-454726
rainer@zelator.uucp (Rainer Brendel) (04/21/91)
In <OIVINDT.91Apr19164856@darwin.uio.no> oivindt@bio.uio.no (Oivind Toien) writes: >I am trying to output vertical text to the screen initiated with the >CreateFontIndirect procedure. Setting the parameters >lfOrientation:=900; and lfEscapement:=900; makes stroked fonts (Roman, >Script and Modern) appear vertical. This does however not work with >the bit-mapped fonts, and not with the corresponding fonts on a system >where ATM was installed. A possible solution is writing a string into a bitmap, turning the bitmap by 90 degrees, and displaying it. Though this works with every bitmapped device, it looks good only on devices that have ASPECTX = ASPECTY. This method is not restricted to diplay devices. If your printer has BitBlt capability, you may apply it there as well. You may find an example of text drawn into a bitmap in chapter 9 of Charles Petzold's book. Rotating a bitmap requires a lot of bit shift- ing that should be done in assembler. When I encountered the same problem I solved it with Actor and assembler. Please feel free to email me for the assembler primitives and, if wanted, an Actor demo class. The assembler routines anyhow need some hacking. Actor has a different argument passing. rainer -- ------------------------------------------------------------------------ EMAIL: rainer@zelator.in-berlin.de Rainer Brendel ------------------------------------------------------------------------
kblackne@mcs.drexel.edu (Ken Blackney) (04/22/91)
In <OIVINDT.91Apr19164856@darwin.uio.no> oivindt@bio.uio.no (Oivind Toien) writes: > >>I am trying to output vertical text to the screen initiated with the >CreateFontIndirect procedure. Setting the parameters >lfOrientation:=900; and lfEscapement:=900; makes stroked fonts (Roman, >Script and Modern) appear vertical. This does however not work with >the bit-mapped fonts, and not with the corresponding fonts on a system >where ATM was installed. > I have BitStream's FaceLift installed and what you described works just fine. I wrote a small program to display a message at various angles to see how it worked and it looked pretty good. The system did not seem to allow an escapement that is different than the orientation. (It seemed to set the escapement= orientation;) I did not try it with non-FaceLift fonts. Ken