Index of /ctan/graphics/metapost/contrib/macros/dviincl/
| | | |
../ | | - | Directory |
0czytaj.sla | 2000-Jan-04 00:00:00 | 1.9K | application/vnd.scribus |
0dviincl.inf | 2000-Jan-04 00:00:00 | 2.4K | application/octet-stream |
fix_brks.mp | 2000-Jan-04 00:00:00 | 0.8K | application/octet-stream |
fix_page.mp | 2000-Jan-04 00:00:00 | 0.1K | application/octet-stream |
README | 2000-Jan-04 00:00:00 | 2.4K | text/plain;charset=utf-8 |
README.pl | 2000-Jan-04 00:00:00 | 1.9K | application/x-perl |
storyx.tex | 2000-Jan-04 00:00:00 | 0.4K | application/x-tex |
test-bop.mp | 2000-Jan-04 00:00:00 | 0.5K | application/octet-stream |
test-bop.tex | 2000-Jan-04 00:00:00 | 0.2K | application/x-tex |
testit.bat | 2000-Jan-04 00:00:00 | 1.2K | application/octet-stream |
testit.sh | 2000-Jan-04 00:00:00 | 0.4K | application/x-sh |
DVIINCL: made in BOP s.c., [email protected]; public domain software
[This is a short information about the DVIINCL utility]
One of the auxiliary programs belonging to every METAPOST package
is DVItoMP, converting a DVI into a METAPOST file. Hence the idea
(due to Marcin Woli/nski) of including a DVI page into the EPS
files generated by METAPOST.
There are, however, several problems to overcome:
(1) Some DVI items are neglected by DVItoMP, most notably
`special' commands;
(2) DVItoMP expects that each page in a DVI file contains
a vrule of width 1sp positioned at the right lower
corner of the page; thanks to it, MPtoDVI knows the size
of the bounding box of a page. If such a rule do not occur
in the dvi file, the result of conversion is unpredictable,
e.g., Oostrum's (DOS) implementation simply doesn't write
`setbounds' commands (which are responsible for assigning
the proper bounding box to a translated DVI page), while
Delorie's (Web2C) implementation generates `setbounds'
commands corresponding to an empty box;
(3) MP files generated by DVItoMP contain special directives,
`mpxbreak', that METAPOST does not accept in its ``normal'' mode;
Ad 1. This imposes limits on the possible applications.
Ad 2. It is reasonable to ignore the `setbound' command if the source
DVI is not generated by MPtoTeX+TeX.
Ad 3. A simple postprocessor is sufficient to circumvent the problem;
the treatment is so simple, that it can be even METAPOST itself.
SYNOPSIS
1. Use DVItoMP to convert a DVI file into the corresponding MPX file:
dvitomp DVI_file MPX_file
2. Proceed the resulting MPX with METAPOST:
mpost \vardef ifi = str MPX_file enddef; vardef ofi = str MPY_file enddef; input fix_brks.mp
(cf. a batch file testit.bat for DOS/WIN32 or testit.sh for U*X);
In the resulting MPY_file, `mpxbreak' directives are replaced with
`if' commands.
The program `fix_brks.mp' basic assumes that `mpxbreak' directives occur
in separate lines, without superfluous spaces.
3. The METAPOST file making use of such a DVI page should use the following
construction:
...
picture p;
p:=fix_page(10,"file.mpy"); % `10' is an imaginary page number,
% "file.mpy" is an imaginary file name
draw p;
...
where `fix_page' is a macro defined in file `fix_page.mp'.
4. That's all.
Comments are welcome
e-mail contact: [email protected]