🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.postscript
Article #2054

Format text in a Circular page with my PS LaTeX clone

#2054
From: Jonathan Monsarrat
Date: Wed, 02 Sep 1992 01:25
73 lines
3850 bytes
Hi everyone! This is Jonathan Monsarrat from Brown University.

Can I show you a cool hack?

I have written a program that does text formatting using the text
formatting language of LaTeX. However, it is NOT based on TeX macros
and therefore without complexity you can do fancy things with
PostScript directly.  It is written from scratch in C++ and
PostScript. It cannot do all the things that LaTeX can do and
therefore it is somewhat lame. So I call it ``LameTeX''.

Here's what it CAN do!

It allows you to format text on a page of any shape. You can place
text inside a circle, a triangle, or ANY arbitrary shape as defined by
a PostScript path. It is simple to format things around pictures
smoothly (not in a rectangle) just like they do in professional
magazines.

LameTeX is a great deal easier to force than LaTeX. It's attitude is
always "OK, let's do it your way". If you want 100 point type or white
letters instead of black, there are simple ways to do this. If you
want to change margins and sizes on the fly in the document, no problem!

LameTeX uses the same language as LaTeX, and in general does a pretty
good imitation of LaTeX, although it doesn't handle Math Mode and
fancy stuff (which is why it's lame). It understands 68 common LaTeX
commands.  There are special additional "Stealth" commands that
LameTeX can understand, but those get placed in the comments so that
normal LaTeX will always be able to format your document.

It gives you simple PostScript hooks so that you can modify the words
as they are fitted to the page, or as they are printed, and infinitely
more cool stuff besides. There is a bunch of documentation plus plenty
of example hacks. This is the sort of thing that was only previously
possible with a wysiwyg editor (to my knowledge), and you'd have to
place everything laboriously with the mouse even then. But like LaTeX
itself, everything in LameTeX is under the exacting control of a text
formatting language or a program.

This is NOT a "display postscript" hack. It converts to PostScript version 1
so it should run on any PostScript printer or simulator.

Would anyone like a copy? It is a lot of fun to try out. Let me know
and I will e-mail it to you. I should have it set up over anonymous ftp soon.

To run the program, you need to have a copy of latex and dvi2ps from
Radical Eye Software. You need a C++ compiler too.


I am hoping especially that some friendly people will send me comments
and/or suggestions and/or bugfix requests on it. I am planning on a 2nd
release in January with everything "spiffed up".

Thanks.

-Jon

P.S. Have I posted this to the correct groups? I could not find a
Usenet group for "LaTeX".

P.P.S. Help wanted: eager PostScript or C++ hacker to help increase
functionality and stability.

P.P.P.S.
%! Obfuscated PostScript !%/dup{cvx}def/def/exch load def f<234160> exch gsave
/f{dup 0 1 getinterval cvn exch cvx def}def<73657467726179>f<6D6F7665746F>f<63
6C6F736570617468>f(translate)f<6C696E65746F>f/p{45 rotate}def<726375727665746F
>f 144 36 m 360 36 l 360 396 l 144 396 l c 0.2 s fill 201.6 216 m 144 0 288 0
230 216 curveto c 1 s fill 216 dup t p 1 1 50{0 0 m 1 1 6{pop{rand 1073741824
div 2 div} cvx dup 1 exch exec sub s exec 288 mul -72 add } for r currentpoint
stroke gsave t .5 3 {setlinewidth s newpath 0 0 m 1 1 8{pop 3.6 0 18 13.68 0
7.2 r p}for}.8 10 2 index exec fill exec stroke grestore} for showpage
Technical Details
Message-ID: <1992Sep2.012528.5270@cs.brown.edu>
Path: arc1-ca.pugleaf.net!sparky!uunet!brunix!brunix!jgm

Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.postscript
Path: arc1-ca.pugleaf.net!sparky!uunet!brunix!brunix!jgm
From: jgm@cs.brown.edu (Jonathan Monsarrat)
Subject: Format text in a Circular page with my PS LaTeX clone
Message-ID: <1992Sep2.012528.5270@cs.brown.edu>
Sender: news@cs.brown.edu
Organization: Brown University Department of Computer Science
Date: Wed, 2 Sep 1992 01:25:28 GMT
Lines: 73