Skip to content

Commit

Permalink
Don't use fraction for exposure times > 0.25, round to one dec
Browse files Browse the repository at this point in the history
  • Loading branch information
mattiasw committed Feb 4, 2024
1 parent 9e21369 commit 2779d3c
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 4 deletions.
2 changes: 1 addition & 1 deletion dist/exif-reader.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/exif-reader.js.map

Large diffs are not rendered by default.

8 changes: 6 additions & 2 deletions src/tag-names-common.js
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,12 @@ export default {
return 'Unknown';
},
ExposureTime(value) {
if (value[0] >= value[1]) {
return `${Math.round(value[0] / value[1])}`;
if (value[0] / value[1] > 0.25) {
const decimal = value[0] / value[1];
if (Number.isInteger(decimal)) {
return '' + decimal;
}
return decimal.toFixed(1);
}
if (value[0] !== 0) {
return `1/${Math.round(value[1] / value[0])}`;
Expand Down
7 changes: 7 additions & 0 deletions test/unit/tag-names-exif-ifd-spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,13 @@ describe('tag-names-exif-ifd', () => {
expect(TagNamesExifIfd[0x829a].description([6, 1])).to.equal('6');
expect(TagNamesExifIfd[0x829a].description([1, 1])).to.equal('1');
expect(TagNamesExifIfd[0x829a].description([0, 1000])).to.equal('0/1000');
expect(TagNamesExifIfd[0x829a].description([8, 10])).to.equal('0.8');
expect(TagNamesExifIfd[0x829a].description([1, 4])).to.equal('1/4');
expect(TagNamesExifIfd[0x829a].description([1, 3])).to.equal('0.3');
expect(TagNamesExifIfd[0x829a].description([100, 399])).to.equal('0.3');
expect(TagNamesExifIfd[0x829a].description([13, 10])).to.equal('1.3');
expect(TagNamesExifIfd[0x829a].description([15, 10])).to.equal('1.5');
expect(TagNamesExifIfd[0x829a].description([4, 3]).substring(0, 6)).to.equal('1.3');
});

it('should have tag FNumber', () => {
Expand Down

0 comments on commit 2779d3c

Please sign in to comment.