3

PIL の ImageFont と ImageDraw を使用して動的な画像を生成する Python コードを App Engine に移植することに成功しました。唯一残っている問題は、元のコードが次のような呼び出しを使用して TrueType フォントをロードすることです。

titlefont = ImageFont.truetype("Verdana Bold.ttf", titlefontsize)

フォント ファイルをアップロードして、GAE で直接アクセスすることはできません (少なくとも、できるとは思いません?!)。データストア BLOB にフォント データをダンプし、それを読み込んで PIL にフィードすることは何とか可能だと思いますが、画像生成に PIL を使用するすべての人が同じことを行うとしたら、これはエレガントではなく、非常に無駄に思えます。現在、私は立ち往生してImageFont.load_default()いますが、かなり恐ろしい結果が得られます。

GAE PIL で代替フォントを使用する賢い方法はありますか? 使用可能なフォント オブジェクトを返す追加の API が不足していますか?

4

1 に答える 1

3

アプリケーション ディレクトリ内のすべてのファイルは、デプロイ時にアプリケーションとともにアップロードされます。

そうです、アプリケーションディレクトリ内またはその下にファイルを保持し、必要に応じてそこに移動することで、必要なファイルに「ただ」アクセスできるはずです。

それらのファイルを提供したい場合、それは別のことです。https://developers.google.com/appengine/docs/python/gettingstarted/staticfiles

ただし、アプリが見つけられる場所に .ttf ファイルを含めてみてください。問題なく動作するはずです。

于 2012-11-04T16:37:34.083 に答える