From 53c8405139ffdc848753335f50b6b746a7bafcb5 Mon Sep 17 00:00:00 2001 From: Constantin Berhard Date: Fri, 20 Nov 2015 17:51:21 +0100 Subject: [PATCH] made aspect ratio accurate --- screen.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/screen.py b/screen.py index f9bef55..b0c6577 100644 --- a/screen.py +++ b/screen.py @@ -18,6 +18,7 @@ import re, subprocess from enum import Enum +from fractions import Fraction ## utility functions @@ -66,13 +67,8 @@ class Resolution: def __str__(self): # get ratio - ratio = int(round(16.0*self.height/self.width)) - if ratio == 12: # 16:12 = 4:3 - strRatio = '4:3' - elif ratio == 13: # 16:12.8 = 5:4 - strRatio = '5:4' - else: # let's just hope this will never be 14 or more... - strRatio = '16:%d' % ratio + ratio = Fraction(self.width, self.height) # automatically divides by the gcd + strRatio = "%d:%d" % (ratio.numerator, ratio.denominator) return '%dx%d (%s)' %(self.width, self.height, strRatio) def __repr__(self): -- 2.30.2