[comp.windows.x] Rotating Text

websterc@bierstadt.scd.ucar.edu (Chris Webster) (11/16/90)

I am trying rotate text 90 degrees counter clockwise in an
XSimpleWindow.  Does anybody have a clue?

--Chris

websterc@ncar.ucar.edu

mouse@LARRY.MCRCIM.MCGILL.EDU (11/16/90)

> I am trying rotate text 90 degrees counter clockwise in an
> XSimpleWindow.  Does anybody have a clue?

As far as I can tell, your only choice if you want to stay within the
core X protocol is to display the text into something offscreen - a
pixmap or bitmap - and read it back (XGetImage), rotate it "by hand",
send it over to the server again (XPutImage), and display it as a
bitmap image.  (If someone has any better way of doing this, while
staying within the core protocol, please tell me!)

Various extensions, notably those providing access to PostScript, make
this much easier.

					der Mouse

			old: mcgill-vision!mouse
			new: mouse@larry.mcrcim.mcgill.edu

etaylor@wilkins.iaims.bcm.tmc.edu (Eric Taylor) (11/17/90)

Write your text to a pixmap.
Create an Ximage from the pixmap.
Rotate the Ximage :
	I1(x,y) = I2(y,x) or something like that.
Send the Ximage to the screen.
--
					Eric Taylor
					Baylor College of Medicine
					etaylor@wilkins.bmc.tmc.edu
					(713) 798-3776

fgreco@dprg-330.GOVt.shearson.COM (Frank Greco) (11/17/90)

I believe the only way is to manually manipulate some bitmaps of the text
offscreen and then bitblast them back.

Of course this is trivial in NeWS.

Frank G.

klee@wsl.dec.com (Ken Lee) (11/17/90)

In article <9011161809.AA13347@islanders.>, fgreco@dprg-330.GOVt.shearson.COM (Frank Greco) writes:
|> Of course this is trivial in NeWS.

Of course this is trivial in any high level graphics package available
for X, including Display PostScript, PEX, PHIGS, and GKS.

-- 
Ken Lee
DEC Western Software Laboratory, Palo Alto, Calif.
Internet: klee@wsl.dec.com
uucp: uunet!decwrl!klee

epstein@trwacs.UUCP (Jeremy Epstein) (11/19/90)

In article <9011160929.AA02439@Larry.McRCIM.McGill.EDU>, mouse@LARRY.MCRCIM.MCGILL.EDU writes:
> > I am trying rotate text 90 degrees counter clockwise in an
> > XSimpleWindow.  Does anybody have a clue?
> 
> As far as I can tell, your only choice if you want to stay within the
> core X protocol is to display the text into something offscreen - a
> pixmap or bitmap - and read it back (XGetImage), rotate it "by hand",
> send it over to the server again (XPutImage), and display it as a
> bitmap image.

Another solution which has been proposed is to come up with a rotated
font, and to load one glyph at a time.  The application then has to
figure out glyph placement by itself (retch).

This is a question that gets asked quite regularly...can it be added
to the Frequently Asked Questions list???

--Jeremy
-- 
Jeremy Epstein			UUCP: uunet!trwacs!epstein
Trusted X Research Group	Internet: epstein@trwacs.fp.trw.com
TRW Systems Division		Voice: +1 703/876-8776
Fairfax Virginia

fgreco@dprg-330.GOVt.shearson.COM (Frank Greco) (11/19/90)

> 
> In article <9011161809.AA13347@islanders.>, fgreco@dprg-330.GOVt.shearson.COM (Frank Greco) writes:
> |> Of course this is trivial in NeWS.
> 
> Of course this is trivial in any high level graphics package available
> for X, including Display PostScript, PEX, PHIGS, and GKS.
> 
	Display PostScript, yes I agree, but can PEX, PHIGS or GKS handle
	the *same* fonts as your printer?  Can they handle a *real*
	vertical font (for international support)?  Can they handle
	rotating fonts at *any* angle, not just in set increments?.

	Frank G.