在写这篇文章的时候真的是一把鼻涕一把泪,遇到了几个坑,搞了一天半才搞出来,资质愚钝了,网上查找了资料,发现基本上没有pdf转图片相关的,难道都没这个需求么,接下来我先描述下我遇到的问题和现象吧
首先我通过PdfRenderer将pdf文件转成bitmap集合,因为pdf文件可能有几页,所以需要集合装起来
然后将bitmap集合里面的每个bitmap都转化成png或者jpg存储到本地,问题来了
我将每个bitmap用imageview显示是可以的,然后去本地打开图片发现黑色,这个问题卡死我了,先预留着,下面再讲述,上代码逻辑了
- pdf转bitmap集合
private ArrayList<Bitmap> pdfToBitmap(File pdfFile) {
ArrayList<Bitmap> bitmaps = new ArrayList<>();
try {
PdfRenderer renderer = new PdfRenderer(ParcelFileDescriptor.open(pdfFile, ParcelFileDescriptor.MODE_READ_ONLY));
Bitmap bitmap;
final int pageCount = renderer.getPageCount();
for (int i = 0; i < pageCount; i++) {
PdfRenderer.Page page = renderer.openPage(i);
int width = getResour