performLayout method

  1. @override
dynamic performLayout(
  1. PrinterConstraints constraints,
  2. PrinterCanvas canvas
)
override

布局

Implementation

@override
performLayout(PrinterConstraints constraints, PrinterCanvas canvas) {
  actualOffset = offset;
  actualSize = size;
  var actualStyle = style!.extendsStyle(canvas.defaultConfig!.fontStyle!);
  if (size!.height!.isInfinite) {
    actualSize = PrinterSize(
        size!.width,
        (canvas.getTextLineHeight(actualStyle) + actualStyle.lineSpace!).toDouble());
  }
  if (actualSize!.width == null) {
    String? displayText = this.getDisplayText(dataSource);
    if (displayText == null) {
      displayText = '';
    }

    actualSize = PrinterSize(
        canvas.getTextWidth(displayText, actualStyle).toDouble(),
        actualSize!.height);
  }
  actualSize = constraints.constrain(actualSize!);
}