Ну, я заметил, что вы используете fillRect
для чего-то, почему бы не использовать его для всего?Просто fillRect
соответствующий столбец, а затем выполните еще один fillRect
снизу вверх, чтобы создать новый прямоугольник.
Я не уверен, что это самый быстрый способ сделать это, но вы можете попробоватьcopyPixels
, что я слышал очень быстро.Мое предложение использовать это безо всякой боли - собрать растровое изображение, которое идет от наличия столбца с высотой 0px до полной высоты, а когда вам нужен столбец с высотой X, скопируйте из готового растрового изображенияв столбце X и скопируйте его в столбец Y на исходном изображении «связки столбцов».
Надеюсь, это поможет.Пишите комментарии, и я постараюсь уточнить в ответ, если это будет необходимо.