私はキャンバスを使用してテーブルに表示するための画像のBase64インライン符号化データを作成したいと考えています。 PythonはWebページを動的に生成して作成します。それは、Pythonがイメージモジュールを使ってサムネイルを作成することを意味します。すべてのサムネイルが作成された後、Pythonは各サムネイルのbase64データを生成し、b64データをユーザのWebページの隠しスパンに配置します。次に、ユーザは、各サムネイルのチェックマークを、その興味に関連してクリックする。次に、[pdf生成]ボタンをクリックして、選択した画像を含むpdfファイルを作成します。 jsPDFを使用しているJavaScriptは、隠されたスパンb64データを生成して、pdfファイル、そして最終的にはpdfファイルに画像ファイルを作成します。Imageオブジェクトからencodeb64を作成することはできますか?
私は、スクリプトの実行中にPythonスクリプトの実行時間を短縮し、メモリ内のbase64サムネイルデータを生成することで、ディスクI/O操作を最小限に抑えることを望んでいます。
これは私が達成したいものの例です。
import os, sys
import Image
size = 128, 128
im = Image.open("/original/image/1.jpeg")
im.thumbnail(size)
thumb = base64.b64encode(im)
これは悲しげに働く、TypeErorrを取得できません - これを実現する方法について
TypeError: must be string or buffer, not instance
任意の考え?
+1これはjpgへのエンコードを取得するのに良い方法です:) –
両方の回答が私のやりたいことのために働いていますが、これは私のプログラムと一直線になっていて流体でした:)だから私はあなたと一緒に行きますこれ!私は両方から借りてくるので、私は答えとして両方を受け入れることができれば嬉しいですが、StringIOは私のために本当にうまくいくようです!みんな、ありがとう! – 0xhughes
ああ、あまりにも長いbase64データで、ブラウザが1分遅れました。 – youngminz