extractText method

Future<UDocTextPage> extractText(
  1. UPdfPage page
)

Implementation

Future<UDocTextPage> extractText(UPdfPage page) async {
  final ui.PictureRecorder recorder = ui.PictureRecorder();
  final Canvas canvas = Canvas(recorder);
  final _UPdfContentExecutor executor = _UPdfContentExecutor(document: document, canvas: canvas, options: const UPdfRenderOptions(drawAnnotations: false), textOnly: true);
  final List<double> base = uPdfBaseMatrix(page.box, page.rotation, 1);
  try {
    final Uint8List content = await document.pageContent(page);
    await executor.run(content, page.resources, base, 0);
  } on Object {
    executor.markTruncated();
  }
  recorder.endRecording().dispose();
  final Size size = page.rotation == 90 || page.rotation == 270 ? Size(page.box.height, page.box.width) : Size(page.box.width, page.box.height);
  return executor.buildTextPage(page.index, size);
}