add pen width parameter