height, width can be null