Games::Go::Dg2TeX - Perl extension to convert Games::Go::Diagrams
to TeX
use Games::Go::Dg2TeX
my $dg2tex = B<Games::Go::Dg2TeX-E<gt>new> (options);
my $tex = $gd2tex->convertDiagram($diagram);
A Games::Go::Dg2TeX object converts a Games::Go::Diagram object
into TeX source code which can be used stand-alone, or it can be
incorporated into larger TeX documents.
- my $dg2tex =
Games::Go::Dg2TeX->new (?options?)
- A new Games::Go::D2TeX takes the following options:
- In its default usage, the comments to each diagram comprise an unbreakable
vbox---they must all appear on one page. This can cause problems if the
comments are very extensive. This option generates more complicated TeX
macros which allow the comments to be broken across pages. This option may
not be used with -simple or -longComments.
Default: true
- simple => true |
false
- This generates very simple TeX which may not look so good on the page, but
is convenient if you intend to edit the TeX. This option should not be
used with -longComments.
Default: false
- twoColumn
=> true | false
- This generates a two-column format using smaller fonts. This option forces
simple true, and it may not be used with -longComments or
-coords.
Default: false
- coords => true |
false
- Generates a coordinate grid. This option may not be used with
-twoColumn.
Default: false
- bigFonts =>
true | false
- Use fonts magnified 1.2 times.
Default: false
- If this option is NOT used then the characters {, } and \ found in
comments are replaced by [, ] and /, since TeX roman fonts do not have
these characters. If this option is used, these substitutions are not
made, so you can embed TeX source (like {\bf change fonts}) directly
inside the comments.
- gap => number of
points
- The gap in points between diagrams.
Default: 12
If coords and twoColumn are both true, Dg2TeX warns
and turns off coords. If longComments and simple are
both true, warns and turns off longComments. If longComments
and twoColumn are both true, warns and turns off longComments.
Finally, if twoColumn is true, turns simple on (no
warning).
- $dg2tex->configure (option => value, ?...?)
- Change Dg2TeX options from values passed at new time.
- $dg2tex->print ($tex ? , ... ?)
- prints raw TeX code to file as defined at new time.
Whether or not file was defined, print accumulates the TeX
code for later retrieval with converted.
- my $tex =
$dg2tex->converted ($replacement_tex)
- Returns the TeX source code converted so far for the Dg2TeX object.
If $replacement_tex is defined, the accumulated
TeX source code is replaced by
$replacement_tex.
- $dg2tex->comment ($comment ? , ... ?)
- Inserts the TeX comment character ('%') in front of each line of each
comment and prints it to file.
- my $tex_source =
$dg2tex->convertDiagram ($diagram)
- Converts a Games::Go::Diagram into TeX. If file was defined
in the new method, the TeX source is dumped into the file.
In any case, the TeX source is returned as a string scalar.
- my $tex =
$dg2tex->TeXifyText ($text)
- Converts $text into TeX code by changing certain
characters that are not available in TeX cmr10 font, and by converting
\n\n into \hfil\break. TeXifyText behavior is modified by
texComments and simple options.
Returns the converted text.
- $tex_title = $dg2tex->convertProperties (\%sgfHash)
- convertProperties takes a reference to a hash of properties as
extracted from an SGF file. Each hash key is a property ID and the hash
value is a reference to an array of property values:
$hash->{propertyId}->[values]. The following
SGF properties are recognized:
Both long and short property names are recognized, and all
unrecognized properties are ignored with no warnings. Note that these
properties are all intended as game-level notations.
- $dg2tex->close
- print the TeX closer (\bye) and close the dg2tex object. Also
closes file if appropriate.
Nah. At least, I don't think so. Well, I hope not.
Reid Augustin, <reid@hellosix.com>
Copyright (C) 2005 by Reid Augustin
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself, either Perl version 5.8.5 or,
at your option, any later version of Perl 5 you may have available.