-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathepsf.sty.ltxml
67 lines (61 loc) · 2.68 KB
/
epsf.sty.ltxml
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
60
61
62
63
64
65
66
# -*- CPERL -*-
# /=====================================================================\ #
# | epsf | #
# | Implementation for LaTeXML | #
# |=====================================================================| #
# | Part of LaTeXML: | #
# | Public domain software, produced as part of work done by the | #
# | United States Government & not subject to copyright in the US. | #
# |---------------------------------------------------------------------| #
# | Bruce Miller <[email protected]> #_# | #
# | http://dlmf.nist.gov/LaTeXML/ (o o) | #
# \=========================================================ooo==U==ooo=/ #
#
# modified May 2014, bjd to insert epsffileline
#
package LaTeXML::Package::Pool;
use strict;
use warnings;
use LaTeXML::Package;
#**********************************************************************
# (See LaTeXML::Post::Graphics for suggested postprocessing)
# Provides alternative argument syntax.
RawTeX(<<'EOTeX');
\newif\ifepsfatend
\newif\ifepsfdraft
\newif\ifepsfframe
\newif\ifepsfshow
\epsfshowtrue
\newif\ifepsfshowfilename
\newif\ifepsfverbose
\newdimen\epsfframemargin
\newdimen\epsfframethickness
\newdimen\epsfxsize
\newdimen\epsfysize
\newdimen\pspoints
\pspoints = 1bp
\epsfxsize = 0pt
\epsfysize = 0pt
\epsfframemargin = 0pt
\epsfframethickness = 0.4pt
EOTeX
DefPrimitive('\epsfclipon', sub { AssignValue(epsf_clip => 1); return; });
DefPrimitive('\epsfclipoff', sub { AssignValue(epsf_clip => 0); return; });
DefConstructor('\epsfbox[] Semiverbatim', sub {
my ($document, $bb, $graphic) = @_;
my $clip = LookupValue('epsf_clip');
my $options = ($clip ? ($bb ? "viewport=$bb, clip" : "clip") : '');
$graphic = ToString($graphic); $graphic =~ s/^\s+//; $graphic =~ s/\s+$//;
my @candidates = pathname_findall($graphic, types => ['*'], paths => LookupValue('GRAPHICSPATHS'));
if (my $base = LookupValue('SOURCEDIRECTORY')) {
@candidates = map { pathname_relative($_, $base) } @candidates; }
$document->insertElement('ltx:graphics', undef, graphic => $graphic,
candidates => join(',', @candidates), options => $options); });
Let('\epsfgetlitbb', '\epsfbox');
Let('\epsfnormal', '\epsfbox');
Let('\epsffile', '\epsfbox');
Let('\epsffileline', '\epsfbox'); # Fatal error token T_CS[\epsffileline] is not defined
DefPrimitive('\epsfgetbb Semiverbatim', undef);
DefPrimitive('\epsfframe', undef); # Ignore (?), and process the arg.
#**********************************************************************
1;