uPdfRectFromArray function

Rect uPdfRectFromArray(
  1. List<Object?>? values, {
  2. Rect fallback = const Rect.fromLTWH(0, 0, 612, 792),
})

Implementation

Rect uPdfRectFromArray(List<Object?>? values, {Rect fallback = const Rect.fromLTWH(0, 0, 612, 792)}) {
  if (values == null || values.length < 4) return fallback;
  final List<double> numbers = <double>[];
  for (final Object? value in values) {
    if (value is num) numbers.add(value.toDouble());
  }
  if (numbers.length < 4) return fallback;
  final double left = numbers[0] < numbers[2] ? numbers[0] : numbers[2];
  final double right = numbers[0] < numbers[2] ? numbers[2] : numbers[0];
  final double bottom = numbers[1] < numbers[3] ? numbers[1] : numbers[3];
  final double top = numbers[1] < numbers[3] ? numbers[3] : numbers[1];
  final Rect rect = Rect.fromLTRB(left, bottom, right, top);
  return rect.width <= 0 || rect.height <= 0 ? fallback : rect;
}