Tgif (pronounced t-g-i-f) is an Xlib-based interactive 2-D drawing tool (using vector graphics) under X11 on
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
and most
UNIX
Unix (, ; trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
platforms (including
Mac OS
Mac operating systems were developed by Apple Inc. in a succession of two major series.
In 1984, Apple debuted the operating system that is now known as the classic Mac OS with its release of the original Macintosh System Software. The system ...
X and
cygwin
Cygwin ( ) is a free and open-source Unix-like environment and command-line interface (CLI) for Microsoft Windows. The project also provides a software repository containing open-source packages. Cygwin allows source code for Unix-like operati ...
on Windows). It was developed in 1990 and is
free software
Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed open-source license, under terms that allow users to run the software for any purpose as well as to study, change, distribut ...
released under the
QPL license.
Quirks
Because Tgif was developed long before a standard way for drawing programs to work, one might find it unfamiliar to use in a number of ways:
*Although Tgif mention point sizes, it uses a unit that is 1/128 of an inch for point sizes.
*While there is an option to display font sizes in points, the sizes are still subject to rounding to the nearest 1/128".
*Unlike modern drawing programs, Tgif uses
spline curve
In mathematics, a spline is a Function (mathematics), function defined piecewise by polynomials.
In interpolation, interpolating problems, spline interpolation is often preferred to polynomial interpolation because it yields similar results, eve ...
s instead of
Bézier curve
A Bézier curve ( , ) is a parametric equation, parametric curve used in computer graphics and related fields. A set of discrete "control points" defines a smooth, continuous curve by means of a formula. Usually the curve is intended to approxima ...
s.
*Also unlike modern drawing programs, Tgif does not allow the user to select a colour from a color wheel or through controls that allow the user to adjust colour values. Instead, Tgif provides a list with a short list of colours. If the user wishes to use a colour that is not in the list, they would need to add their desired colour to the list. This list is then saved with the currently-open drawing.
*Usable fonts are listed in a configuration file. If the user wishes to use fonts that are not on the list, they would have to change the configuration file.
*Only fonts in the
ISO 8859-1
ISO/IEC 8859-1:1998, ''Information technology— 8-bit single-byte coded graphic character sets—Part 1: Latin alphabet No. 1'', is part of the ISO/IEC 8859 series of ASCII-based standard character encodings, first edition published in 19 ...
encoding (i.e. "square")
CJK fonts and
symbols
A symbol is a mark, sign, or word that indicates, signifies, or is understood as representing an idea, object, or relationship. Symbols allow people to go beyond what is known or seen by creating linkages between otherwise different concep ...
or
dingbat
In typography, a dingbat (sometimes more formally known as a printer's ornament or printer's character) is an ornament, specifically, a glyph used in typesetting, often employed to create box frames (similar to box-drawing characters), or a ...
fonts can be used.
*Rescaling can lead to ugly defect, which is most likely due to both the use of integer coordinates and roundoff errors.
*Because Tgif uses Xlib (which predated modern
Unicode
Unicode or ''The Unicode Standard'' or TUS is a character encoding standard maintained by the Unicode Consortium designed to support the use of text in all of the world's writing systems that can be digitized. Version 16.0 defines 154,998 Char ...
support) Tgif does not and cannot support Unicode.
The Tgif file format
Tgif saves drawings in a
Prolog
Prolog is a logic programming language that has its origins in artificial intelligence, automated theorem proving, and computational linguistics.
Prolog has its roots in first-order logic, a formal logic. Unlike many other programming language ...
-based
[Tgif FAQ - Tgif File Format, http://bourbon.usc.edu/tgif/faq/format.html] plain text
In computing, plain text is a loose term for data (e.g. file contents) that represent only characters of readable material but not its graphical representation nor other objects ( floating-point numbers, images, etc.). It may also include a lim ...
file format. Because the program is based on Prolog, there isn't a lot of support from other programs for reading the Tgif file format.
Fonts are represented as
PostScript
PostScript (PS) is a page description language and dynamically typed, stack-based programming language. It is most commonly used in the electronic publishing and desktop publishing realm, but as a Turing complete programming language, it c ...
font names. Originally, it was possible to print Tgif drawings in
batch mode
Batch may refer to:
Food and drink
* Batch (alcohol), an alcoholic fruit beverage
* Batch loaf, a type of bread popular in Ireland
* A dialect term for a bread roll used in North Warwickshire, Nuneaton and Coventry, as well as on the Wirral, ...
without using an
X display. However, this feature changed somewhere in the 4.1 versions. Currently, in order to print drawings, the user would need to be running Tgif on an X display. This restriction cannot be applied if the drawing only uses
Times Roman,
Helvetica
Helvetica, also known by its original name Neue Haas Grotesk, is a widely-used sans-serif typeface developed in 1957 by Swiss typeface designer Max Miedinger and Eduard Hoffmann.
Helvetica is a neo-grotesque design, one influenced by the f ...
,
Courier
A courier is a person or organization that delivers a message, package or letter from one place or person to another place or person. Typically, a courier provides their courier service on a commercial contract basis; however, some couriers are ...
, and/or
Symbol
A symbol is a mark, Sign (semiotics), sign, or word that indicates, signifies, or is understood as representing an idea, physical object, object, or wikt:relationship, relationship. Symbols allow people to go beyond what is known or seen by cr ...
fonts.
References
{{Reflist
External links
Tgif home page
Free vector graphics editors
Vector graphics editors for Linux