Изменение размера видимого поля холста gwt, но не его содержимого?

У меня есть веб-сайт, где я хочу интегрировать холст GWT в основной слой. Когда я изменяю размер окна браузера, я хочу, чтобы "видимая область" холста соответственно изменяла размеры, НО не его содержимое. Как в картах Google, где я просто вижу части того, что было нарисовано.

canvas.setSize(..)
canvas.setCoordinateSpaceHeight(..);
canvas.setCoordinateSpaceWidth(..);

Что я должен установить, чтобы

  • всегда изменяйте размер холста в соответствии с окном браузера
  • не имея изменения содержания?

1 ответ

Решение

Все три свойства.

Вы хотите setSize изменить размер холста, и вы хотите сделать пространство координат ("внутренний размер" холста) таким же, как его размер ("внешний размер") или в том же соотношении, что и до изменения размера.

Если вы начинаете с холста 300×200 с координатным пространством 300×200 (так, чтобы пиксель в Context2D сопоставляется с пикселем CSS), и вам нужно изменить размер холста до 600×400, а затем установить желаемое значение для координатного пространства также равным 600×400, чтобы сохранить соотношение пикселей 1 холст == 1 CSS.

Другие вопросы по тегам