1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
|
TKDVI, A DVI PREVIEWER BASED ON TCL/TK
======================================
This is TkDVI, a DVI previewer built with the Tcl/Tk toolkit. The
previewer is built around a Tk extension, `dvi', which implements an
`image type' for displaying pages from DVI files (or DVI code in
general).
This README file corresponds to TkDVI 0.3, an alpha release.
Features
--------
Here are the basic features of the `dvi' Tk extension:
* Implements re-usable Tk `image type'. DVI material can occur
wherever Tk allows images, e.g., on a canvas (which is the most
sensible place), but also in labels, buttons etc.
* Supports multiple windows displaying multiple pages from multiple
DVI files simultaneously.
* All DVI files share the same fonts (if resolution etc. allows).
* Supports fonts in PK format. (Virtual font support is forthcoming;
in the meantime dvicopy can be used to de-reference virtual fonts
in DVI files.) The standard Kpathsea library is used to locate
(and make) fonts.
* Supports arbitrary (integer-factor) image shrinking as in xdvi.
* Supports anti-aliasing as in xdvi.
* Supports simple uses of colour.
* Comes with an (incomplete) self-test suite.
Here are the basic features of the TkDVI previewer:
* Multiple DVI files.
* Multiple DVI file windows.
* Each DVI file window supports various display modes:
- `Single Page' as in xdvi
- `Two-page spread': Two facing pages, like a book.
- `16-page overview': Sixteen reduced pages at the same time, great
for looking at page breaks and floats.
- Full-screen mode for presentations.
* `Magnification glass' as in xdvi.
* `gv'-style page selector.
* PDF-style document info (experimental).
* PDF-style bookmarks when used with `hyperref' LaTeX extension
(experimental)
* `Layering' of DVI material for presentations, fill-in-the-blanks etc.
(experimental)
* Automatic reload of changed DVI files on Expose events as in xdvi.
This updates all windows that the DVI file is displayed in
(regardless of whether they are currently being exposed or not).
* Can be easily adapted, reconfigured or extended in Tcl.
The most notable omissions to date are:
* No support for EPS graphics inclusions.
As of now there is little or no documentation for most of the
experimental features. Most of the \special commands supported by
TkDVI are explained in doc/README.specials. See the testdvi/
subdirectory for some examples of TeX input and output.
Use and Distribution
--------------------
TkDVI is copyrighted © by Anselm Lingnau
<lingnau@tm.informatik.uni-frankfurt.de>.
TkDVI is NOT in the public domain but released as `free software'
under the same license as Tcl/Tk, meaning that you can use it for
whatever you want and also give away (possibly modified) copies to all
your relations, friends, and enemies (depending on how you like the
program). See the file COPYING for details.
If you do make modifications or extensions of general interest, I
would appreciate hearing about this. I'd be happy to include your
contributions in the general distribution as long as their licensing
doesn't interfere with the rest of the distribution (e.g., I can't
integrate GPL patches into the main code base because that would
`infect' the rest of TkDVI with the GPL -- I'd be happy to include
such patches in a `DIY' corner of the distribution, though.).
TkDVI uses the Kpathsea library by Karl Berry, which is licensed
unter the LGPL. Due to its size, Kpathsea is not distributed with
TkDVI but can be obtained separately.
Documentation and Other Resources
---------------------------------
There is some documentation in the `doc' subdirectory of the
distribution. As usual, this could be vastly improved.
TkDVI is available from
ftp://ftp.tm.informatik.uni-frankfurt.de/pub/dist/tkdvi/
The current version is always available as `tkdvi-current.tar.gz',
which is a symbolic link to the real file, which will be called
something like `tkdvi-0.3.tar.gz'.
There is a World-Wide Web page dedicated to TkDVI at
http://www.tm.informatik.uni-frankfurt.de/~lingnau/tkdvi/
There are two mailing lists about TkDVI:
tkdvi-announce@tm.informatik.uni-frankfurt.de
This low-volume mailing list carries announcements of general
interest to TkDVI users, such as announcements of new releases or
significant patches. (This list is moderated by me.)
tkdvi-users@tm.informatik.uni-frankfurt.de
This is a mailing list for general discussion about TkDVI, its
use, its advantages and disadvantages, bugs, features etc.
Everybody can post to this list. Traffic from tkdvi-announce
also appears here.
You can subscribe to either of these lists by sending a message with a
`Subject:' header of `subscribe' to
tkdvi-announce-request@tm.informatik.uni-frankfurt.de or
tkdvi-users-request@tm.informatik.uni-frankfurt.de ,
respectively. You will be asked to confirm your subscription; just
follow the directions and everything should be fine and dandy.
Bugs can also be reported to
tkdvi-bugs@tm.informatik.uni-frankfurt.de
Users of Debian GNU/Linux may feel free to use the Debian bug tracking
system.
Supported Platforms
-------------------
TkDVI has been tested on the following platforms:
Debian GNU/Linux 2.2 (Tcl/Tk 8.2.3, gcc 2.9)
- Should run on other comparable Linuxes as well
Success stories, failure reports, patches etc. for other environments
are most welcome.
Installation
------------
Installation is described in the file INSTALL in the same directory.
History
-------
I have been working on this program off and on since early 1994, even
to the extent of giving talks on the software at DANTE conferences (in
Münster 1994 and Oldenburg 1998). The 1994 version was based on Tk 3.6
and implemented a full-blown DVI widget. Some code was released for
this, but it was too incomplete and buggy to be generally useful.
After Tk 4.0 came out, featuring the new image subsystem, I decided to
re-implement my DVI stuff as an image type instead of a widget, in
order to be able to use Tk canvas features in conjunction with DVI
material rather than having to reimplement the canvas from scratch for
the purposes of the DVI widget. Due to other distractions, I didn't
have much time for this but finished a working version in time for the
DANTE conference in February 1998. Since then, the code has matured
somewhat, and the current code base seems solid enough to release as
an alpha version.
|