TeX::DVI
Write out TeX's DVI (DeVice Independent) file
Synopsis
use TeX::DVI; use Font::TFM; my $dvi = new TeX::DVI "texput.dvi"; my $font = new_at Font::TFM "cmr10", 12 or die "Error loading cmr10 at 12 pt: $Font::TFM::errstr\n"; $dvi->preamble(); $dvi->begin_page(); $dvi->push(); my $fn = $dvi->font_def($font); $dvi->font($fn); $dvi->word("difficulty"); $dvi->hskip($font->space()); $dvi->word("AVA"); $dvi->black_box($font->em_width(), $font->x_height()); $dvi->pop(); $dvi->end_page(); $dvi->postamble(); $dvi->close();
Description
Method TeX::DVI::new creates a new DVI object in memory and opens the output DVI file. After that, elements can be written into the file using appropriate methods.
These are the methods available on the Font::TFM object:
- preamble, postamble, begin_page, end_page, push, pop
-
Writes out appropriate command of the .dvi file.
- font_def
-
The parameter is a reference to a Font::TFM object. Info out of this object will be printed out. The method returns the internal number of the font in this .dvi file.
- font
-
Writes out the font_sel command, the parametr is the number returned by font_def.
- hskip, vskip
-
Skips.
- black_box
-
Creates a black box, can be used for hrules and vrules.
- special
-
Writes out the special command, one parameter is written as the command.
- word
-
Writes out a word given as the first parameter. The currently selected font is used to gather information about ligatures and kernings, that's why it's possible to say
$dvi->word("difficulty");
and the ffi will be ligatured all right.
- close
-
Close the file.
Bugs
The error handling is rather weak -- the modul currently assumes you know why you call the method you call.
Version
1.01
Available from
http://www.adelton.com/perl/TeX-DVI/
Author
(c) 1996--2011 Jan Pazdziora.
All rights reserved. This package is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Contact the author at jpx dash perl at adelton dot com.
See also
Font::TFM(3), TeX::DVI::Parse(3), perl(1).