如何使用Flutter将PDF文件转换为图像?

时间:2019-12-30 20:36:53

标签: flutter

如何使用Flutter将PDF文件转换为图像?

我想使用esc_pos_printer将图像打印到ESC / POS打印机。该软件包不接受PDFImage,它必须是Flutter Image

我看到很多可以执行此操作的PHP插件,但对于Flutter则无济于事。

编辑:另一个question here的答案是,它显示了一些代码来解码“ pdf64”中的图像,但我无法确切地知道“ pdf64”是什么。

我使用flutter_html_to_pdf从html创建了PDF,如下所示:

Directory appDocDir = await getApplicationDocumentsDirectory();
var targetPath = appDocDir.path;
var generatedPdfFile = await FlutterHtmlToPdf.convertFromHtmlContent(
    htmlContent, targetPath, targetFileName);
generatedPdfFilePath = generatedPdfFile.path;

现在,我需要知道如何从该PDF或字节码创建Flutter Image,以将原始数据发送到打印机。

1 个答案:

答案 0 :(得分:1)

您可以使用https://pub.dev/packages/printing

await for (var page in Printing.raster(document)) {
  final image = page.asImage();
  ...
}

此插件还可以使用以下方法将您的HTML转换为Pdf:

final pdf = await Printing.convertHtml(
      format: PdfPageFormat.a4,
      html: '<html><body><p>Hello!</p></body></html>',
));