pdf_graphics 1.2.1 copy "pdf_graphics: ^1.2.1" to clipboard
pdf_graphics: ^1.2.1 copied to clipboard

PDF content interpreter, device interface, font engine, shadings, ICC color, and text extraction — render pages to any device. Pure Dart, web-ready.

example/main.dart

import 'dart:typed_data';

import 'package:pdf_document/pdf_document.dart';
import 'package:pdf_graphics/pdf_graphics.dart';

void main() {
  final document = PdfDocument.open(_textPdf('Hello from pdf_graphics'));
  final text = PdfTextExtractor.extract(document, 0);

  print(text.text);
  print('Runs: ${text.runs.length}');
}

Uint8List _textPdf(String text) {
  final content = 'BT /F1 24 Tf 72 720 Td ($text) Tj ET';
  final objects = [
    '<< /Type /Catalog /Pages 2 0 R >>',
    '<< /Type /Pages /Kids [3 0 R] /Count 1 >>',
    '<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] '
        '/Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >>',
    '<< /Length ${content.length} >>\nstream\n$content\nendstream',
    '<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >>',
  ];
  final buffer = StringBuffer('%PDF-1.4\n');
  final offsets = <int>[];
  for (var i = 0; i < objects.length; i++) {
    offsets.add(buffer.length);
    buffer.write('${i + 1} 0 obj\n${objects[i]}\nendobj\n');
  }
  final xrefOffset = buffer.length;
  buffer
    ..write('xref\n0 ${objects.length + 1}\n')
    ..write('0000000000 65535 f \n');
  for (final offset in offsets) {
    buffer.write('${offset.toString().padLeft(10, '0')} 00000 n \n');
  }
  buffer
    ..write('trailer\n<< /Size ${objects.length + 1} /Root 1 0 R >>\n')
    ..write('startxref\n$xrefOffset\n%%EOF\n');
  return Uint8List.fromList(buffer.toString().codeUnits);
}
0
likes
0
points
3.37k
downloads

Publisher

verified publisherbenmilanko.com

Weekly Downloads

PDF content interpreter, device interface, font engine, shadings, ICC color, and text extraction — render pages to any device. Pure Dart, web-ready.

Repository (GitHub)
View/report issues

Topics

#pdf #rendering #fonts #text-extraction

License

unknown (license)

Dependencies

image, pdf_cos, pdf_document

More

Packages that depend on pdf_graphics