原文链接

通过Overlay

该方法依赖于jQuery

  1. viewer.importXML(diagramXML, function() {
  2. var overlays = viewer.get('overlays');
  3. var elementRegistry = viewer.get('elementRegistry');
  4. var shape = elementRegistry.get('UserTask_1');
  5. var $overlayHtml =
  6. $('<div class="highlight-overlay">')
  7. .css({
  8. width: shape.width,
  9. height: shape.height
  10. });
  11. overlays.add('UserTask_1', {
  12. position: {
  13. top: -5,
  14. left: -5
  15. },
  16. html: $overlayHtml
  17. });
  18. });

通过覆盖一个DOM,改变颜色。

BPMN 2.0 扩展

  1. var bpmnModeler = ...;
  2. var modeling = bpmnModeler.get('modeling');
  3. var elementsToColor = [ element1, element2 ];
  4. modeling.setColor(elementsToColor, {
  5. stroke: 'green',
  6. fill: 'yellow'
  7. });