Hi
Erkennt jemand, was der Code macht, und wenn ja, wie lange hat es gedauert bis zum Durchblick?
1 minute um soweit zu kommen, dass es mich nicht interessiert was es macht, sodnern wie man es besser selbst macht ;-)
#!/usr/bin/perl
( $arg1 = $ARGV[0] ) =~ tr/,/./;
die "\nNo arguments.\n" unless $arg1;
$arg2 = $ARGV[1];
die "\nNo filename specified.\n" unless $arg2;
$arg3 = ( lc( $ARGV[2] ) == 'nomargins' );
sub_b( $arg2, sub_d( sub_c($arg2) ) );
exit;
sub sub_d {
my $ek1n = shift;
$ek1n =~ s/(<FSize +)([\d.]+)/$1.sub_e()/ge;
$ek1n =~ s/(<Pgf[FLR].*? +)([\d.]+)/$1.'0.0'/ge if $arg3;
return $ek1n;
}
sub sub_e { return ( $2 * $arg1 > 400 ) ? 400 : ( $2 * $arg1 ); }
sub sub_c {
$fb21 = "Can't read file $_[0]";
open IN, "<$_[0]" or die $fb21 . " ($!)";
local $/;
my $hpk4 = <IN>;
close IN;
return $hpk4;
}
sub sub_b {
$fb21 = "Can't write file $_[0]";
open OUT, ">$_[0]" or die $fb21 . " ($!)";
print OUT $_[1];
close OUT;
}
Solong
LanX