Bug 14468: Remove warnings when creating Labels
This patch removes 2 types of warnings when creating Labels a) Using '0' as filling char is not to the like of prStrWidth On C4/Creators/Layout.pm b) A RM followup from Galen on Bug 8375 to C4/Creators/PDF.pm makes impossible to find properly a font :( (http://git.koha-community.org/gitweb/?p=koha.git;a=commit;h=f7ef93e758850e991091e7268b8d1b1453082df4) on C4/Labels/Label.pm To test: Pre patch 1) Go to Tools > Labels 2) Create a new layout, name ABC, type 'Barcode/Biblio' 3) Create a new batch, add 2 items 4) Export as PDF using the new layout 5) Look at logs, you will find something like a) label-create-pdf.pl: Use of uninitialized value $strwidth in numeric lt (<) at /home/bgkriegel/kohaclone/C4/Creators/Layout.pm line 233., referer: http://staffdev.koha-community.org.ar/cgi-bin/koha/labels/label-print.pl (Only one of this kind) b) Two related lines similar to this examples label-create-pdf.pl: Use of uninitialized value in -e at /home/bgkriegel/kohaclone/C4/Creators/PDF.pm line 226., referer: http://staffdev.koha-community.org.ar/cgi-bin/koha/labels/label-print.pl label-create-pdf.pl: ERROR in koha-conf.xml -- missing <font type="Ft1">/path/to/font.ttf</font> at /home/bgkriegel/kohaclone/C4/Creators/PDF.pm line 229., referer: http://staffdev.koha-community.org.ar/cgi-bin/koha/labels/label-print.pl (many many lines x number of items on batch) 6) Apply the patch 7) Export the same PDF, no more warnings 8) Bonus 1: change main font to Courier and Helvetica and check results 9) Bonus 2: check using arabic records Many hours to find :( Easy to fix Signed-off-by: Nick Clemens <nick@quecheelibrary.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
parent
285cb4dece
commit
fea62637df
|
|
@ -230,7 +230,7 @@ sub get_text_wrap_cols {
|
|||
my $textlimit = $params{'label_width'} - (( 3 * $params{'left_text_margin'} ) || 13.5 );
|
||||
|
||||
while ($strwidth < $textlimit) {
|
||||
$string .= '0';
|
||||
$string .= '8'; # using '8' as filling char instead of '0'
|
||||
$col_count++;
|
||||
$strwidth = C4::Creators::PDF->StrWidth( $string, $self->{'font'}, $self->{'font_size'} );
|
||||
}
|
||||
|
|
|
|||
|
|
@ -219,16 +219,8 @@ sub StrWidth {
|
|||
my $self = shift;
|
||||
my ($string, $font, $fontSize) = @_;
|
||||
|
||||
# replace font code with path to TTF font file if need be
|
||||
my $ttf = C4::Context->config('ttf');
|
||||
if ( $ttf ) {
|
||||
my $ttf_path = first { $_->{type} eq $font } @{ $ttf->{font} };
|
||||
if ( -e $ttf_path->{content} ) {
|
||||
$font = $ttf_path->{content};
|
||||
} else {
|
||||
warn "ERROR in koha-conf.xml -- missing <font type=\"$font\">/path/to/font.ttf</font>";
|
||||
}
|
||||
}
|
||||
# replace font code with correct internal font
|
||||
$font = C4::Creators::PDF->Font($font);
|
||||
|
||||
return prStrWidth($string, $font, $fontSize);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -468,9 +468,8 @@ sub draw_label_text {
|
|||
LABEL_LINES: # generate lines of label text for current field
|
||||
foreach my $line (@label_lines) {
|
||||
next LABEL_LINES if $line eq '';
|
||||
my $fontName = C4::Creators::PDF->Font($font);
|
||||
$line = log2vis( $line );
|
||||
my $string_width = C4::Creators::PDF->StrWidth($line, $fontName, $self->{'font_size'});
|
||||
my $string_width = C4::Creators::PDF->StrWidth($line, $font, $self->{'font_size'});
|
||||
if ($self->{'justify'} eq 'R') {
|
||||
$text_llx = $params{'llx'} + $self->{'width'} - ($self->{'left_text_margin'} + $string_width);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue