[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: LASi 1.0.4 Postscript Printing Engine Announcement
Announcement:
LASi v. 1.0.4, A Unicode-based Postscript Printing Library.
http://eyegene.ophthy.med.umich.edu/lasi/
Hi, everyone,
I would like to announce the release of LASi v. 1.0.4, a Unicode-based
Postscript printing engine. LASi was written by Larry Siden and provides
a C++ stream output interface ( with operator " << " ) for creating Postscript
documents that can contain characters from any of the scripts and symbol blocks
supported in Unicode and by Owen Taylor's Pango layout engine.
Here's an abbreviated sample of what LASi provides. As you can see, LASi preserves
the ability to use Postscript operators like "moveto" and "showpage" directly
-- these are simply written to the stream unchanged. What LASi provides
are methods like "setFont()", "setFontSize()", and "show()" which allow you to
use TrueType and OpenType fonts and Unicode UTF-8 text strings in any script supported
by Unicode and by Pango with the same simplicity that Postscript's "show" operator
provides for basic Postscript:
LASi::PostscriptDocument doc;
doc.osBody() << setFont("serif") << setFontSize(18);
// Text strings are in UTF-8:
char testString[]="Hello 你好";
doc.osBody() << "100 600 moveto" << std::endl;
doc.osBody() << show(testString);
doc.osBody() << "showpage" << std::endl;
doc.write(cout);
Although the capability to produce Unicode-based multilingual Postscript documents
exists in large Open Source application framework libraries such as GTK+, QT, and KDE,
LASi was designed for projects which require the ability to produce Postscript
independent of any one application framework, or independent of a GUI toolkit. The
only dependencies are Pango, glib, and FreeType2. Also, since the stream output
interface is so easy to use, developers using other toolkits might want to experiment
with LASi's simplicity anyway.
As I have now assumed maintainership of this library and have recently, along with my
colleague Ritu Khanna, spent a fair amount of time eliminating bugs
and trying to formalize the API and documentation, I
would greatly appreciate constructive criticism from anyone and everyone who might have
time to take a look at this fairly small but very convenient library.
Happy Holidays!
- Ed Trager <ehtrager@xxxxxxxxx>
Kellogg Eye Center
University of Michigan
Ann Arbor
--
Linux-UTF8: i18n of Linux on all levels
Archive: http://mail.nl.linux.org/linux-utf8/