Ross Moore for building buttons to show and hide <strong>the</strong> pop-up images. Now when a float is encountered, <strong>the</strong> full contents <strong>of</strong> <strong>the</strong> environment is written out into a file, named according to <strong>the</strong> figure or table number, as part <strong>of</strong> a new L A<strong>TEX</strong> job which includes a preamble loading most <strong>of</strong> <strong>the</strong> same packages as in <strong>the</strong> main job. This subsidiary job is run, using L A<strong>TEX</strong> followed by dvips/ps2eps/epstopdf to get a single-page PDF with correct bounding box. <strong>The</strong> file is loaded back into <strong>the</strong> main job using \pdfrefximage within a \setbox, and its PDF object reference number is recorded for later use in placing <strong>the</strong> image on a JavaScript button field, when an appropriate \ref occurs. <strong>The</strong> object reference is also written into <strong>the</strong> .aux file as <strong>the</strong> expansion <strong>of</strong> a macro having its name derived from <strong>the</strong> figure number. This allows <strong>the</strong> reference to be used on <strong>the</strong> next run, with any \ref command that occurs before <strong>the</strong> float has been encountered, and also allows checking to see whe<strong>the</strong>r <strong>the</strong> reference number has changed, in which case a message is written to <strong>the</strong> .log file warning that ano<strong>the</strong>r L A<strong>TEX</strong> run is required. Finally, <strong>the</strong> tokens for <strong>the</strong> float environment are recovered and processed normally. On subsequent L A<strong>TEX</strong> runs, <strong>the</strong> image files do not need to be rebuilt, but are loaded from <strong>the</strong> PDF images created on an earlier run. If editing <strong>of</strong> <strong>the</strong> main document source changes <strong>the</strong> order <strong>of</strong> floats, <strong>the</strong> toggle buttons may become associated with <strong>the</strong> wrong images. Simply delete those images from <strong>the</strong> current directory; <strong>the</strong> correct ones should be generated afresh on <strong>the</strong> next L A<strong>TEX</strong> run. In case <strong>the</strong> content <strong>of</strong> a float contains \ref and \eqref commands or citations, <strong>the</strong> subsidiary job that creates an image also loads a copy <strong>of</strong> <strong>the</strong> .aux file from <strong>the</strong> main job, which copy was made at <strong>the</strong> end <strong>of</strong> <strong>the</strong> previous run. It’s possible that cross-references have not fully stabilised, so simply delete any affected image; after two more runs it will have been regenerated and included. If browser s<strong>of</strong>tware had a ‘cross-reference spyglass’ feature (as suggested in <strong>the</strong> first paragraph <strong>of</strong> this item), <strong>the</strong>n not only would <strong>the</strong>re be no need for <strong>the</strong> PDF to contain JavaScript coding for <strong>the</strong> extra buttons, but also <strong>the</strong>re would not be doubling-up <strong>of</strong> <strong>the</strong> information contained in figure and table floats. Fur<strong>the</strong>rmore, such a pop-up-like feature would ‘just work’ also for cross-references to section headings, numbered equations, etc., as well as to <strong>the</strong> floats, and perhaps also for citations and ‘back-references’ from <strong>the</strong> bibliography (see Figure 7, for example). This is surely <strong>the</strong> way that such a feature ought to be implemented; ideally it should not be nec- essary for a scientific document to include explicit programming which controls how its content be displayed, but just have declarations <strong>of</strong> which browsersupplied functions are to be used. <strong>The</strong> implementation presented here is mainly to demonstrate <strong>the</strong> usefulness and practicality <strong>of</strong> such a ‘pop-up’ feature for cross-referenced material, so that browser vendors might be encouraged to incorporate a similar feature within <strong>the</strong>ir own publicly-available s<strong>of</strong>tware. However, <strong>the</strong>re are certainly o<strong>the</strong>r, simpler uses for pop-ups to show extra images that are not found elsewhere among <strong>the</strong> usual pages <strong>of</strong> a document. c. Extended use <strong>of</strong> bookmarks (see Figure 3), ... Use <strong>of</strong> bookmarks is quite common for <strong>the</strong> major sections <strong>of</strong> a document; this is automatic when using \usepackage{hyperref} with a L A<strong>TEX</strong> document. This is here extended fur<strong>the</strong>r to creating bookmarks for definitions, <strong>The</strong>orems, Lemmas, etc., and also for figures, tables, and some equation displays. To avoid <strong>the</strong> bookmark window becoming too cluttered, only those equations that have actually been crossreferenced within <strong>the</strong> document are given <strong>the</strong>ir own bookmark. 8 Having such bookmarks means that <strong>the</strong>re are named destinations with <strong>the</strong> PDF at all <strong>the</strong> important places for <strong>the</strong> structure and content <strong>of</strong> <strong>the</strong> document. Fur<strong>the</strong>rmore <strong>the</strong>se names are available in a separate file, so potentially this can be used to construct hyperlinks directly to <strong>the</strong>se important places. This could be extremely useful in <strong>the</strong> context <strong>of</strong> a digital archive. For figures and tables, a meaningful string to be <strong>the</strong> textual anchor in <strong>the</strong> ‘Outline’ window is obtained as <strong>the</strong> first sentence in <strong>the</strong> caption. This is obtained by reading <strong>the</strong> caption from <strong>the</strong> .l<strong>of</strong> or .lot file and parsing to locate <strong>the</strong> first full stop (‘.’). With <strong>The</strong>orems, Lemmas, Propositions, etc., <strong>the</strong> anchortext uses <strong>the</strong> appropriate numbering, as seen in Figure 3. <strong>The</strong> limiting <strong>of</strong> bookmarks to only those referenced is achieved by patching <strong>the</strong> \@setref internal macro to implement a ‘memory’ <strong>of</strong> referenced labels. A line is written into <strong>the</strong> .aux file; this defines a macro, with name derived from <strong>the</strong> label. <strong>The</strong> coding for placing equation numbers is patched so that \df@tag now also places an anchor, and a bookmark for this anchor when <strong>the</strong> memory indicates that <strong>the</strong> equation has been referenced—which is known on <strong>the</strong> 2 nd and subsequent L A<strong>TEX</strong> runs. 8 It can be argued that if an equation is not referenced <strong>the</strong>n it doesn’t need an equation number. However, many articles have been written where <strong>the</strong> author has not followed this maxim. For creation <strong>of</strong> bookmarks, this maxim has been programmed-in. 468 <strong>TUG</strong>boat, <strong>Volume</strong> <strong>29</strong> (2008), No. 3 — Proceedings <strong>of</strong> <strong>the</strong> 2008 Annual Meeting
Advanced features for publishing ma<strong>the</strong>matics, in PDF and on <strong>the</strong> Web Figure 3: Bookmarks: <strong>the</strong>se three images, taken from different articles, illustrate various aspects <strong>of</strong> <strong>the</strong> automatically created ‘bookmarks’. <strong>The</strong>se provide easy access to <strong>the</strong> important parts <strong>of</strong> <strong>the</strong> document, including front-matter as well as sections <strong>of</strong> <strong>the</strong> ma<strong>the</strong>matical article itself; such as definitions, <strong>the</strong>orems, pro<strong>of</strong>s, remarks and figures. <strong>The</strong> middle image shows that ma<strong>the</strong>matical symbols can be used within bookmarks, while from <strong>the</strong> lower one it can be seen that a bookmark is not produced for every numbered equation, but only for those that are cross-referenced within <strong>the</strong> article itself. <strong>TUG</strong>boat, <strong>Volume</strong> <strong>29</strong> (2008), No. 3 — Proceedings <strong>of</strong> <strong>the</strong> 2008 Annual Meeting 469
- Page 1 and 2:
The Communications of the TEX Users
- Page 3 and 4:
TUG2008 Proceedings University Coll
- Page 5 and 6:
TUG 2008—program Monday, July 21
- Page 7 and 8:
At the reception. Around the front
- Page 9 and 10:
Taco Hoekwater, inside the Beamish
- Page 11 and 12:
Another, equally large, disadvantag
- Page 13 and 14:
This “saves” the original \text
- Page 15 and 16:
Figure 5: Macro result pushed back
- Page 17 and 18:
TEXworks: Lowering the barrier to e
- Page 19 and 20:
Direct and reverse synchronization
- Page 21 and 22:
The TEXnical terms used to describe
- Page 23 and 24:
6.2 An orthogonal implementation On
- Page 25 and 26:
In fact, the text editors and the v
- Page 27 and 28:
albanian greek norwegian belarusian
- Page 29 and 30:
input manually, but are generated b
- Page 31 and 32:
1.2 Commercially available software
- Page 33 and 34:
If L ATEX can fit the snippet into
- Page 35 and 36:
Pascal MetaPost, but using CWEB as
- Page 37 and 38:
The TEX-Lua mix Hans Hagen Pragma A
- Page 39 and 40:
\setbox0=\hbox{x}\the\wd0 In Lua we
- Page 41 and 42:
start.char = uc return true end end
- Page 43 and 44:
stream-based approach, this time th
- Page 45 and 46:
example is support for OpenType fon
- Page 47 and 48:
typesetting system is TEX [4] creat
- Page 49 and 50:
13. Image conversion from various f
- Page 51 and 52:
the mapping file example.paraStyleN
- Page 53 and 54:
The second author accepts or reject
- Page 55 and 56:
Languages for bibliography styles J
- Page 57 and 58:
@STRING{srd = {Stephen Reeder Donal
- Page 59 and 60:
# # standard footnote format (latex
- Page 61 and 62:
. , \bbled \bbleds .
- Page 63 and 64:
Languages for bibliography styles (
- Page 65 and 66:
References [1] James C. Alexander:
- Page 67 and 68:
Vistas for TEX: liberate the typogr
- Page 69 and 70:
- even direct formatting instructio
- Page 71 and 72: e that quick, simple and clear rend
- Page 73 and 74: see that there are slight differenc
- Page 75 and 76: Creating cuneiform fonts with MetaT
- Page 77 and 78: Definition of encoding (Unicode) Pl
- Page 79 and 80: epresentation with proper path dire
- Page 81 and 82: When it came to implementing the T1
- Page 83 and 84: 4.3 OpenType math in new TEX engine
- Page 85 and 86: However, there have always been exc
- Page 87 and 88: [2] Nelson Beebe: Character set enc
- Page 89 and 90: Meta-designing parameterized Arabic
- Page 91 and 92: on the pen direction at each point
- Page 93 and 94: % Description for isolated ’alif
- Page 95 and 96: Figure 15: Tracing a word from left
- Page 97 and 98: Table 1 shows the MOS scores for in
- Page 99 and 100: P3 P3 P3 Q2 Q2 Q2 � � W3 W3 W3
- Page 101 and 102: abridged form, it looks like this:
- Page 103 and 104: with extensions is still somewhat m
- Page 105 and 106: local rx, ry = second.y_coord - ty,
- Page 107 and 108: \startreusableMPgraphic{name}... \s
- Page 109 and 110: the macro \testengine sees two argu
- Page 111 and 112: and exhyph-uk.tex, respectively. Th
- Page 113 and 114: stand for markers of semiconsonants
- Page 115 and 116: y finite state transducers (FSTs).
- Page 117 and 118: local p = hpack(copy(h.list)) lastl
- Page 119 and 120: with PDF documents. Several new tec
- Page 121: Advanced features for publishing ma
- Page 125 and 126: — — — — — — — — Fig
- Page 127 and 128: Advanced features for publishing ma
- Page 129 and 130: telegraph. The relatively recent di
- Page 131 and 132: 1: [ type: unichar, code: 0073 ] ]
- Page 133 and 134: 5 Conclusions The model introduced
- Page 135 and 136: 4 Why TEX files and not other marku
- Page 137 and 138: The galley Module or: How I Learned
- Page 139: TUGboat, Volume 29 (2008), No. 3 48
- Page 142 and 143: 488 TUGboat, Volume 29 (2008), No.
- Page 144 and 145: TUGBOAT Volume 29 (2008), No. 3 Tab