Refactored to take font as cannot rely on fonts being there