/// Load a local PDF file
Future<Uint8List> loadPdf(File pdfFile) async {
Future<Uint8List> documentBytes = pdfFile.readAsBytes();
return documentBytes;
}
/// Pass in document bytes to render image using [Printing]
/// pages: [0] set to 0 to render first page only.
getImageFromPdf(Future<Uint8List> documentBytes) async {
await for (var page in pw.Printing.raster(await documentBytes, pages: [0], dpi: 72)) {
final image = page.toImage(); // ...or page.toPng()
print(image);
}
}
5条答案
按热度按时间2ic8powd1#
使用pdf_render和image插件
zpgglvta2#
**正确答案:**使用Printing和pdf插件,为了将PDF转换为图像,我们可以简单地通过以下方式实现:
d4so4syb3#
I built a package,这只是一个显示PDF缩略图的小部件。
我得到每一页的方式是通过pdfx包。
这是我的包中的一行代码。
https://github.com/mirkancal/pdf_thumbnail/blob/main/lib/src/pdf_thumbnail.dart#L77
uxh89sit4#
唯一的办法就是使用pdfx。(安装此软件包)
首先,您应该从pdf文件中获取图像:
请随意使用PDF从您的资产从一个文件。
然后我们可以在小部件中显示创建的图像:
olqngx595#
使用Printing,您只需从任何PDF文档中传入字节。
您可以使用任何方法加载PDF文档字节,例如
import 'dart:io';
加载并使用.readAsBytes()
方法。