improve label width calc