buildStream method

UPdfStream buildStream(
  1. Uint8List data, {
  2. Map<String, Object?> extra = const <String, Object?>{},
  3. bool compress = true,
})

Implementation

UPdfStream buildStream(Uint8List data, {Map<String, Object?> extra = const <String, Object?>{}, bool compress = true}) {
  final Uint8List deflated = compress && !kIsWeb ? UPdfCodecs.deflate(data) : data;
  final bool useDeflate = compress && !kIsWeb && deflated.length < data.length;
  final Uint8List payload = useDeflate ? deflated : data;
  final Map<String, Object?> entries = <String, Object?>{...extra};
  if (useDeflate) entries["Filter"] = const UPdfName("FlateDecode");
  entries["Length"] = payload.length;
  return UPdfStream(dict: UPdfDict(entries), rawOffset: 0, rawLength: payload.length, rawBytes: payload);
}