maxYAxisWidth static method
Implementation
static double maxYAxisWidth(ChartAxis yAxis) {
Size getTextAreaSize(String text, TextStyle textStyle) {
TextPainter textPainter = TextPainter(
text: TextSpan(text: text, style: textStyle),
textDirection: TextDirection.ltr,
maxLines: 2,
)..layout(maxWidth: 50, minWidth: 0);
double textWidth = textPainter.size.width;
double textHeight = textPainter.size.height;
return Size(textWidth, textHeight);
}
if (yAxis.axisItemList.isNotEmpty) {
//确定y轴文本最大宽度,以及每个文本大小
yAxis.axisItemList.forEach((AxisItem item) {
Size textSize = getTextAreaSize(item.showText, yAxis.textStyle);
item.textSize = textSize;
if (textSize.width > yAxis.maxTextWidth) {
yAxis.maxTextWidth = textSize.width;
}
});
}
return yAxis.maxTextWidth + 10;
}