Use a WebGL drawer implementation (using three.js) instead of the default context2d drawer
The context2d drawing operations in core OpenSeadragon have been
consolidated from the
TiledImageand
Tileclasses into the
Drawerclass, which inherits from a new
DrawerBasebase class. The
TiledImageand
Tileclasses now handle the logic of managing tile positioning and image data, with cleaner separation from details of the rendering process.
DrawerBasedefines a public API that core OpenSeadragon code uses to interact with the drawer implementation. To use a custom drawer/render, define a new class that inherits from
DrawerBaseand implements the public API. The constructor of this class can be passed in during construction of the viewer using the new
customDraweroption.
import { ThreeJSDrawer } from './threejsdrawer.js'; let viewer = OpenSeadragon({ ... customDrawer: ThreeJSDrawer, ... });