The buffer is provided externally and will NOT be cleared to
transparent black. It MUST outlive the Canvasity.
Initially, the visible coordinates will run from (0,0) in the
upper-left to (width, height) in the lower-right and with
pixel centers offset (0.5, 0.5) from the integer grid, though
all this may be changed by transforms.
The sizes must be between 1 and 32768, inclusive.
Note: internal allocated memory is reused if you keep
reusing the same instance with .initialize.
Construct a new canvas. Reset to default state.
The buffer is provided externally and will NOT be cleared to transparent black. It MUST outlive the Canvasity.
Initially, the visible coordinates will run from (0,0) in the upper-left to (width, height) in the lower-right and with pixel centers offset (0.5, 0.5) from the integer grid, though all this may be changed by transforms.
The sizes must be between 1 and 32768, inclusive.
Note: internal allocated memory is reused if you keep reusing the same instance with .initialize.