package PDF::FromHTML::Template::Constants;
use strict;
BEGIN {
use Exporter ();
use vars qw(@ISA @EXPORT_OK);
@ISA = qw(Exporter);
@EXPORT_OK = qw(
%PointsPer
%Verify
);
}
# This is a list of conversions from various units of measure to points.
# The key will be the first letter of the unit.
our %PointsPer = (
I => 72.27, # Inches
P => 1, # Points
);
$PointsPer{C} = ($PointsPer{I} / 2.54); # Centimeters
#GGG Add:
# PDFTemplate properties (to go with %NoSetProperty)
our %Verify = (
#GGG This also needs improvement ... Not all available fonts are listed
'FACE' => {
'__DEFAULT__' => 'Times-Bold',
( map { $_ => 1 } qw(
Courier Courier-Bold Courier-Oblique Courier-BoldOblique
Helvetica Helvetica-Bold Helvetica-Oblique Helvetica-BoldOblique
Times-Roman Times-Bold Times-Italic Times-BoldItalic
Symbol ZapfDingbats
)),
},
'ALIGN' => {
'__DEFAULT__' => 'left',
#GGG Add a full-justify option - this requires a lot of coding prowess
( map { $_ => 1 } qw(
center left right
)),
},
'OPENACTION' => {
'__DEFAULT__' => 'fitpage',
( map { $_ => 1 } qw(
fitbox fitheight fitpage fitwidth retain
)),
},
'OPENMODE' => {
'__DEFAULT__' => 'none',
( map { $_ => 1 } qw(
bookmarks fullscreen none thumbnails
)),
},
# Pagesize is specified in points
'PAGESIZE' => {
'__DEFAULT__' => 'Letter',
'Letter' => {
PAGE_WIDTH => 8.5 * $PointsPer{I},
PAGE_HEIGHT => 11 * $PointsPer{I},
},
'Legal' => {
PAGE_WIDTH => 8.5 * $PointsPer{I},
PAGE_HEIGHT => 14 * $PointsPer{I},
},
'A0' => {
PAGE_WIDTH => 2380,
PAGE_HEIGHT => 3368,
},
'A1' => {
PAGE_WIDTH => 1684,
PAGE_HEIGHT => 2380,
},
'A2' => {
PAGE_WIDTH => 1190,
PAGE_HEIGHT => 1684,
},
'A3' => {
PAGE_WIDTH => 842,
PAGE_HEIGHT => 1190,
},
'A4' => {
PAGE_WIDTH => 595,
PAGE_HEIGHT => 842,
},
},
);
1;
__END__