implement different screen scale support