Я использую Paper JS, и мне нужно использовать существующий набор значков, которые я могу получить в виде строки base64 (это значение, которое я не могу изменить). У меня нет проблем с рендерингом растров. Однако, когда я устанавливаю для них позицию следующим образом:
const myRaster = new Raster(<someBase64>);
myRaster.position = new Point(receivedX, recievdY);
myRaster.onClick = () => console.log('raster click');
Событие onClick будет работать, только если я щелкну точно по точке [x, y], назначенной свойству position
. X и Y получены из базы данных и соответствуют другим видимым элементам.
Я играл на веб-сайте Paepr JS, и без использования позиции new Point
onClick работает по всему image.
Мое решение на данный момент - создать невидимый многоугольник (новый Path.RegularPolygon) и прикрепить к нему событие onClick, и оно работает. Однако, должно быть более простое решение, и я хотел бы понять, чего мне здесь не хватает.
Спасибо!