image: support user define type