make_response
Используйте для создания ответа с выходом PDF данных в виде строки (dest='S'
). Encode the output as latin-1, в противном случае флажок будет кодировать его как UTF-8, и это может быть неверно. Установите заголовки Content-Disposition
и Content-Type
, чтобы сообщить обозревателю, что требуется загрузить/обработать файл PDF. Верните построенный ответ.
from flask import make_response
@app.route('/jpg_to_pdf/<name>')
def jpg_to_pdf(name):
pdf = FPDF()
pdf.add_page()
pdf.image(os.path.join(app.instance_path, name + '.jpg'), 50, 50)
response = make_response(pdf.output(dest='S').encode('latin-1'))
response.headers.set('Content-Disposition', 'attachment', filename=name + '.pdf')
response.headers.set('Content-Type', 'application/pdf')
return response
В этом примере предполагается, что изображения находятся в папке экземпляра, при необходимости измените, чтобы указать, где находятся изображения.
Спасибо, но как я укажу свое изображение, которое загружено в Blobstore – user3891081
на самом деле google-приложение не позволяет загружать изображение в папку temp, мы должны сначала загрузить его в blobstore, вот почему я спрашиваю, как я могу конвертировать изображение (хранится в blobstore) в pdf .пожалуйста, помогите мне – user3891081