CTAN Comprehensive TeX Archive Network

Directory graphics/metapost/contrib/macros/dviincl

README
DVIINCL: made in BOP s.c., bop@bop.com.pl; 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: bop@bop.com.pl

Download the contents of this package in one zip archive (7.7k).

dviincl – Include a DVI page into output

DVItoMP is one of the auxiliary programs available to any package; it converts a DVI file into a file. Using it, one can envisage including a DVI page into an EPS files generated by . Such files allow pages to include other pages.

Packagedviincl
Version1.00
LicensesPublic Domain Software
MaintainerBOP
Contained inTeX Live as dviincl
MiKTeX as dviincl
TopicsDVI processor
...
Guest Book Sitemap Contact Contact Author