summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/FAQ-en/html/FAQ-usepictex.html
blob: 8995939275b9e716485536f58abf7dae32ed010d (plain)
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
<head>
<title>UK TeX FAQ -- question label usepictex</title>
</head><body>
<h3>Why can&#8217;t I load PicTeX?</h3>
<p/>PicTeX is a resource hog; fortunately, most modern TeX
implementations offer generous amounts of space, and most modern
computers are pretty fast, so users aren&#8217;t too badly affected by its
performance.
<p/>However, PicTeX has the further unfortunate tendency to fill up
TeX&#8217;s fixed-size arrays &#8212; notably the array of 256 &#8216;dimension&#8217;
registers.  This is a particular problem when you&#8217;re using
<i>pictex.sty</i> with LaTeX and some other packages that also need
dimension registers.  When this happens, you will see the TeX error
message:
<blockquote>
<pre>
! No room for a new \dimen.
</pre>
</blockquote><p>
There is nothing that can directly be done about this error: you
can&#8217;t extend the number of available <code>\</code><code>dimen</code> registers without
extending TeX itself.
  <a href="FAQ-etex.html">e-TeX</a> and <a href="FAQ-omegaleph.html">Omega</a> both do this, as
  does <a href="FAQ-commercial.html">MicroPress Inc&#8217;s VTeX</a>.

<p/>It&#8217;s actually quite practical (with most modern distributions) to use
e-TeX&#8217;s extended register set: use package <i>etex</i> (which
comes with e-TeX distributions) and the allocation mechanism is
altered to cope with the larger register set: PicTeX will now load.
<p/>If you&#8217;re in some situation where you can&#8217;t use e-TeX, you need to change
PicTeX; unfortunately PicTeX&#8217;s author is no longer active in the
TeX world, so one must resort to patching.  There are two solutions
available.
<p/>The ConTeXt module <i>m-pictex.tex</i> (for Plain TeX and
variants) or the corresponding LaTeX <i>m-pictex</i> package provide
an ingenious solution to the problem based on hacking the code of
<code>\</code><code>newdimen</code> itself.
<p/>Alternatively, Andreas Schrell&#8217;s <i>pictexwd</i> and related
packages replace PicTeX with a version that uses 33 fewer
<code>\</code><code>dimen</code> registers; so use <i>pictexwd</i> in place of
<i>pictex</i> (either as a LaTeX package, or as a file to read
into Plain TeX).
<p/>And how does one use PicTeX anyway, given that the
manual is so <a href="FAQ-docpictex.html">hard to come by</a>?
Fortunately for us all, the <i>MathsPic</i>
system may be used to translate a somewhat different language into
PicTeX commands; and the <i>MathsPic</i> manual is free (and
part of the distribution).  <i>MathsPic</i> is available either as
a <i>Basic</i> program for DOS, or as a <i>Perl</i>
program for other systems (including Windows, nowadays).
<dl>
<dt><tt><i>etex.sty</i></tt><dd><a href="http://mirror.ctan.org/macros/latex/contrib/etex-pkg.zip">macros/latex/contrib/etex-pkg</a> (or <a href="http://mirror.ctan.org/macros/latex/contrib/etex-pkg/">browse the directory</a>); <a href="http://mirror.ctan.org/help/Catalogue/entries/etex-pkg.html">catalogue entry</a>
<dt><tt><i>m-pictex.sty</i></tt><dd>Distributed as part of <a href="http://mirror.ctan.org/macros/context/current/cont-tmf.zip">macros/context/current/cont-tmf.zip</a>; <a href="http://mirror.ctan.org//help/Catalogue/entries/context.html">catalogue entry</a>
<dt><tt><i>m-pictex.tex</i></tt><dd>Distributed as part of <a href="http://mirror.ctan.org/macros/context/current/cont-tmf.zip">macros/context/current/cont-tmf.zip</a>; <a href="http://mirror.ctan.org//help/Catalogue/entries/context.html">catalogue entry</a>
<dt><tt><i>MathsPic</i></tt><dd><a href="http://mirror.ctan.org/graphics/mathspic.zip">graphics/mathspic</a> (or <a href="http://mirror.ctan.org/graphics/mathspic/">browse the directory</a>); <a href="http://mirror.ctan.org/help/Catalogue/entries/mathspic.html">catalogue entry</a>
<dt><tt><i>pictexwd.sty</i></tt><dd>Distributed as part of <a href="http://mirror.ctan.org/graphics/pictex/addon.zip">graphics/pictex/addon</a> (or <a href="http://mirror.ctan.org/graphics/pictex/addon/">browse the directory</a>); <a href="http://mirror.ctan.org/help/Catalogue/entries/pictexwd.html">catalogue entry</a>
</dl>
<p/><p/><p/><p>This question on the Web: <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=usepictex">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=usepictex</a>
</body>