From e96ef46cf8ad5cb95c12abf6ee20ed95ae2f111c Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Mon, 19 Jul 2010 14:55:22 +0200 Subject: [PATCH] For pictures taken on manual, set both aperture and shutter as bold. --- perl/Sesse/pr0n/Common.pm | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/perl/Sesse/pr0n/Common.pm b/perl/Sesse/pr0n/Common.pm index d325907..ad905d1 100644 --- a/perl/Sesse/pr0n/Common.pm +++ b/perl/Sesse/pr0n/Common.pm @@ -863,10 +863,14 @@ sub make_infobox { # fields"; note the comma separation. Every field has an associated "bold flag" # in the second part. - my $shutter_priority = (defined($info->{'ExposureProgram'}) && + my $manual_shutter = (defined($info->{'ExposureProgram'}) && $info->{'ExposureProgram'} =~ /shutter\b.*\bpriority/i); - my $aperture_priority = (defined($info->{'ExposureProgram'}) && + my $manual_aperture = (defined($info->{'ExposureProgram'}) && $info->{'ExposureProgram'} =~ /aperture\b.*\bpriority/i); + if ($info->{'ExposureProgram'} =~ /manual/i) { + $manual_shutter = 1; + $manual_aperture = 1; + } my @classic_fields = (); if (defined($info->{'FocalLength'}) && $info->{'FocalLength'} =~ /^(\d+)(?:\.\d+)?\s*(?:mm)?$/) { @@ -878,24 +882,24 @@ sub make_infobox { if (defined($info->{'ExposureTime'}) && $info->{'ExposureTime'} =~ /^(\d+)\/(\d+)$/) { my ($a, $b) = ($1, $2); my $gcd = gcd($a, $b); - push @classic_fields, [ $a/$gcd . "/" . $b/$gcd . "s", $shutter_priority ]; + push @classic_fields, [ $a/$gcd . "/" . $b/$gcd . "s", $manual_shutter ]; } elsif (defined($info->{'ExposureTime'}) && $info->{'ExposureTime'} =~ /^(\d+(?:\.\d+)?)$/) { - push @classic_fields, [ $1 . "s", $shutter_priority ]; + push @classic_fields, [ $1 . "s", $manual_shutter ]; } if (defined($info->{'FNumber'}) && $info->{'FNumber'} =~ /^(\d+)\/(\d+)$/) { my $f = $1/$2; if ($f >= 10) { - push @classic_fields, [ (sprintf "f/%.0f", $f), $aperture_priority ]; + push @classic_fields, [ (sprintf "f/%.0f", $f), $manual_aperture ]; } else { - push @classic_fields, [ (sprintf "f/%.1f", $f), $aperture_priority ]; + push @classic_fields, [ (sprintf "f/%.1f", $f), $manual_aperture ]; } } elsif (defined($info->{'FNumber'}) && $info->{'FNumber'} =~ /^(\d+)\.(\d+)$/) { my $f = $info->{'FNumber'}; if ($f >= 10) { - push @classic_fields, [ (sprintf "f/%.0f", $f), $aperture_priority ]; + push @classic_fields, [ (sprintf "f/%.0f", $f), $manual_aperture ]; } else { - push @classic_fields, [ (sprintf "f/%.1f", $f), $aperture_priority ]; + push @classic_fields, [ (sprintf "f/%.1f", $f), $manual_aperture ]; } } -- 2.39.2