extractPageText method

Future<LiPdfViewerPageText> extractPageText(
  1. int pageNum, {
  2. bool includeMarkedContent = false,
  3. bool disableNormalization = false,
  4. bool trim = true,
})

Implementation

Future<LiPdfViewerPageText> extractPageText(
  int pageNum, {
  bool includeMarkedContent = false,
  bool disableNormalization = false,
  bool trim = true,
}) async {
  final document = pdfDocument;
  if (document == null) {
    throw StateError('No PDF document is loaded.');
  }
  if (pageNum < 1 || pageNum > totalPages) {
    throw RangeError.range(pageNum, 1, totalPages, 'pageNum');
  }

  final page = await document.getPageDart(pageNum);
  final textContent = await page.getTextContentDart(
    includeMarkedContent: includeMarkedContent,
    disableNormalization: disableNormalization,
  );
  final items = _mapPageTextItems(textContent.items);
  final text = _joinPageTextItems(items, trim: trim);

  return LiPdfViewerPageText(
    pageNumber: pageNum,
    text: text,
    language: textContent.lang ?? '',
    items: items,
  );
}