Changed label and font size calculation to include some edge cases.