在编写PDF转图片的代码时遇到问题
我的需求是:上传一份文件。然后有一个判断,如果是图片则做一系列处理然后给AI能力,如果是PDF则先转化成图片再做以上步骤。
现在的问题是,我在网上搜索的教程都是只能转化本地保存的PDF,这种传输过来的要怎么处理呢?

在编写PDF转图片的代码时遇到问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- CSDN专家-showbo 2023-04-06 12:40关注
AI支持什么格式的图片数据?支持2进制数据可以用pypdfium2将pdf每页内容处理成2进制数据后传递给AI。
from flask import Flask, request,render_template import pypdfium2 as pdfium import io app = Flask(__name__) @app.route("/upload", methods=["POST"]) def save_file(): file = request.files['file'] bindata=file.read()#文件2进制数据 suffix=file.filename.lower().split('.')[-1] returnValue=""##图片识别后返回给客户端的内容 if suffix=="pdf":#pdf文件处理 pdf=pdfium.PdfDocument(bindata) n_pages=len(pdf)#页数 for i in range(n_pages): page=pdf[i] bitmap=page.render(scale = 300/72)#300dpi,更大尺寸改这里 pil_image = bitmap.to_pil()#PIL.Image.Image output = io.BytesIO() pil_image.save(output, format='JPEG') bindata=output.getvalue()##图片2进制 #将2进制传递给AI处理后赋值给returnValue elif suffix in['jpg','jpeg','gif','png']: #将2进制传递给AI处理后赋值给returnValue pass##图片处理 return returnValue#返回给客户端 @app.route("/", methods=["GET"]) def index(): return render_template("index.html") if __name__ == '__main__': app.run(host="0.0.0.0", port=5000, debug=True)
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 2无用