/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ /** * AUTO-GENERATED FILE. DO NOT MODIFY. */ /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ import { getFont } from '../../label/labelStyle'; import ZRText from 'zrender/lib/graphic/Text'; var PATH_COLOR = ['textStyle', 'color']; // TODO Performance improvement? var tmpRichText = new ZRText(); var TextStyleMixin = /** @class */ function () { function TextStyleMixin() {} /** * Get color property or get color from option.textStyle.color */ // TODO Callback TextStyleMixin.prototype.getTextColor = function (isEmphasis) { var ecModel = this.ecModel; return this.getShallow('color') || (!isEmphasis && ecModel ? ecModel.get(PATH_COLOR) : null); }; /** * Create font string from fontStyle, fontWeight, fontSize, fontFamily * @return {string} */ TextStyleMixin.prototype.getFont = function () { return getFont({ fontStyle: this.getShallow('fontStyle'), fontWeight: this.getShallow('fontWeight'), fontSize: this.getShallow('fontSize'), fontFamily: this.getShallow('fontFamily') }, this.ecModel); }; TextStyleMixin.prototype.getTextRect = function (text) { tmpRichText.useStyle({ text: text, fontStyle: this.getShallow('fontStyle'), fontWeight: this.getShallow('fontWeight'), fontSize: this.getShallow('fontSize'), fontFamily: this.getShallow('fontFamily'), verticalAlign: this.getShallow('verticalAlign') || this.getShallow('baseline'), padding: this.getShallow('padding'), lineHeight: this.getShallow('lineHeight'), rich: this.getShallow('rich') }); tmpRichText.update(); return tmpRichText.getBoundingRect(); }; return TextStyleMixin; }(); ; export default TextStyleMixin;