image.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. var tslib_1 = require("tslib");
  4. var group_component_1 = require("../abstract/group-component");
  5. var util_1 = require("../util/util");
  6. var ImageAnnotation = /** @class */ (function (_super) {
  7. tslib_1.__extends(ImageAnnotation, _super);
  8. function ImageAnnotation() {
  9. return _super !== null && _super.apply(this, arguments) || this;
  10. }
  11. /**
  12. * @protected
  13. * 默认的配置项
  14. * @returns {object} 默认的配置项
  15. */
  16. ImageAnnotation.prototype.getDefaultCfg = function () {
  17. var cfg = _super.prototype.getDefaultCfg.call(this);
  18. return tslib_1.__assign(tslib_1.__assign({}, cfg), { name: 'annotation', type: 'image', locationType: 'region', start: null, end: null, src: null, style: {} });
  19. };
  20. ImageAnnotation.prototype.renderInner = function (group) {
  21. this.renderImage(group);
  22. };
  23. ImageAnnotation.prototype.getImageAttrs = function () {
  24. var start = this.get('start');
  25. var end = this.get('end');
  26. var style = this.get('style');
  27. var bbox = util_1.regionToBBox({ start: start, end: end });
  28. var src = this.get('src');
  29. return tslib_1.__assign({ x: bbox.x, y: bbox.y, img: src, width: bbox.width, height: bbox.height }, style);
  30. };
  31. // 绘制图片
  32. ImageAnnotation.prototype.renderImage = function (group) {
  33. this.addShape(group, {
  34. type: 'image',
  35. id: this.getElementId('image'),
  36. name: 'annotation-image',
  37. attrs: this.getImageAttrs(),
  38. });
  39. };
  40. return ImageAnnotation;
  41. }(group_component_1.default));
  42. exports.default = ImageAnnotation;
  43. //# sourceMappingURL=image.js.map