icon, image: API improvement

close #1105