}
if (path.isMiterLimitDirty()) {
setAttribute(element, "stroke-miterlimit", path.getMiterLimit());
}
} else if (sprite instanceof TextSprite) {
TextSprite text = (TextSprite) sprite;
if (text.isTextDirty() || text.isXDirty()) {
tuneText(text);
}
if (text.isFontSizeDirty()) {
if (text.getFontSize() > 0) {
element.getStyle().setFontSize(text.getFontSize(), Unit.PX);
} else {
element.getStyle().clearFontSize();
}
}
if (text.isFontStyleDirty()) {
if (text.getFontStyle() != null) {
element.getStyle().setFontStyle(text.getFontStyle());
} else {
element.getStyle().clearFontStyle();
}
}
if (text.isFontWeightDirty()) {
if (text.getFontWeight() != null) {
element.getStyle().setFontWeight(text.getFontWeight());
} else {
element.getStyle().clearFontWeight();
}
}
if (text.isFontDirty()) {
setAttribute(element, "font-family", text.getFont());
}
if (text.isTextAnchorDirty()) {
if (text.getTextAnchor() == TextAnchor.START) {
element.setAttribute("text-anchor", "start");
} else if (text.getTextAnchor() == TextAnchor.MIDDLE) {
element.setAttribute("text-anchor", "middle");
} else if (text.getTextAnchor() == TextAnchor.END) {
element.setAttribute("text-anchor", "end");
} else {
element.removeAttribute("text-anchor");
}
}
if (text.isXDirty()) {
setAttribute(element, "x", text.getX());
}
if (text.isYDirty()) {
setAttribute(element, "y", text.getY());
}
} else if (sprite instanceof RectangleSprite) {
RectangleSprite rect = (RectangleSprite) sprite;
if (rect.isXDirty()) {
setAttribute(element, "x", rect.getX());