【问题标题】:How to convert a PDF file to an image with Flutter?如何使用 Flutter 将 PDF 文件转换为图像?
【发布时间】:2020-04-19 12:56:21
【问题描述】:

如何使用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 以将原始图像发送到打印机。

【问题讨论】:

  • 我做到了。我看不到如何将该打印机连接到 192.168.1.100:9100,否则我可以使用它。
  • Printing 还想要一个最高 16 的包版本。在我删除包之前它不会运行。
  • 我想做同样的事情。你找到解决办法了吗?

标签: flutter


【解决方案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>',
));

【讨论】:

  • 使用 pdf_merger 将 pdf 转换为图像,它支持 android 和 IOS。在调用此包之前,请确保您允许读写权限。 pub.dev/packages/pdf_merger
  • 为我工作,谢谢。
猜你喜欢
  • 2014-07-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-13
  • 2011-03-30
  • 2018-03-22
  • 2013-08-13
相关资源
最近更新 更多