사용 make_response
문자열 (dest='S'
)과 PDF 데이터 출력 응답을 만들 수 있습니다. Encode the output as latin-1, 그렇지 않으면 Flask가 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 애플리케이션 엔진은 임시 폴더에 이미지를 업로드 할 수 없으며, 먼저 이미지를 blobstore에 업로드해야합니다. blobstore에 저장) ~ pdf .please help me – user3891081