| line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
|
1
|
|
|
|
|
|
|
package Khonsu::Font; |
|
2
|
|
|
|
|
|
|
|
|
3
|
5
|
|
|
5
|
|
33
|
use parent 'Khonsu::Ra'; |
|
|
5
|
|
|
|
|
12
|
|
|
|
5
|
|
|
|
|
35
|
|
|
4
|
|
|
|
|
|
|
|
|
5
|
|
|
|
|
|
|
sub attributes { |
|
6
|
612
|
|
|
612
|
0
|
1543
|
my $a = shift; |
|
7
|
|
|
|
|
|
|
return ( |
|
8
|
612
|
|
|
612
|
|
2185
|
colour => {$a->RW, $a->STR, default => sub { '#000' }}, |
|
9
|
612
|
|
|
612
|
|
1872
|
size => {$a->RW, $a->NUM, default => sub { 9 }}, |
|
10
|
612
|
|
|
612
|
|
2392
|
family => {$a->RW, $a->STR, default => sub { 'Times' }}, |
|
11
|
|
|
|
|
|
|
loaded => {$a->RW, $a->DHR}, |
|
12
|
612
|
|
|
612
|
|
4710
|
line_height => {$a->RW, $a->NUM, default => sub { $_[0]->size }}, |
|
13
|
612
|
|
|
|
|
25521
|
); |
|
14
|
|
|
|
|
|
|
} |
|
15
|
|
|
|
|
|
|
|
|
16
|
|
|
|
|
|
|
sub load { |
|
17
|
1670
|
|
|
1670
|
0
|
5448
|
my ($self, $file, %attributes) = @_; |
|
18
|
1670
|
|
|
|
|
7206
|
$self->set_attributes(%attributes); |
|
19
|
1670
|
100
|
66
|
|
|
12013
|
if (!$attributes{line_height} && $self->size > $self->line_height) { |
|
20
|
20
|
|
|
|
|
89
|
$self->line_height($self->size); |
|
21
|
|
|
|
|
|
|
} |
|
22
|
1670
|
|
|
|
|
9594
|
return $self->find($file, $self->family); |
|
23
|
|
|
|
|
|
|
} |
|
24
|
|
|
|
|
|
|
|
|
25
|
|
|
|
|
|
|
sub find { |
|
26
|
1670
|
|
|
1670
|
0
|
5262
|
my ($self, $file, $family, $enc) = @_; |
|
27
|
1670
|
|
|
|
|
7418
|
my $loaded = $self->loaded; |
|
28
|
1670
|
100
|
|
|
|
7059
|
unless ($loaded->{$family}) { |
|
29
|
837
|
|
50
|
|
|
5177
|
$loaded->{$family} = $file->pdf->corefont($family, -encoding => $enc || 'latin1'); |
|
30
|
837
|
|
|
|
|
26475439
|
$self->loaded($loaded); |
|
31
|
|
|
|
|
|
|
} |
|
32
|
1670
|
|
|
|
|
11138
|
return $loaded->{$family}; |
|
33
|
|
|
|
|
|
|
|
|
34
|
|
|
|
|
|
|
} |
|
35
|
|
|
|
|
|
|
|
|
36
|
|
|
|
|
|
|
|
|
37
|
|
|
|
|
|
|
1; |