pythonから "Wheel Tags"を印刷する必要があります。ホイールタグには画像、線、テキストが含まれます。Pythonでグラフィックスを印刷する
Pythonチュートリアルには、画像libを使用してポストスクリプトファイルを作成するための2つの段落があります。それを読んだ後、私はまだデータをレイアウトする方法を知らない。私は、画像、テキスト、および線をレイアウトする方法のサンプルをいくつか持っていることを期待していましたか?
ありがとうございました。
pythonから "Wheel Tags"を印刷する必要があります。ホイールタグには画像、線、テキストが含まれます。Pythonでグラフィックスを印刷する
Pythonチュートリアルには、画像libを使用してポストスクリプトファイルを作成するための2つの段落があります。それを読んだ後、私はまだデータをレイアウトする方法を知らない。私は、画像、テキスト、および線をレイアウトする方法のサンプルをいくつか持っていることを期待していましたか?
ありがとうございました。
はhttp://effbot.org/imagingbook/psdraw.htm
注を参照してくださいこと:
PSDrawモジュールが積極的に2005年以来維持してきたとは思われません。私は、その努力のほとんどが代わりにPDFフォーマットをサポートするようにリダイレクトされていると思います。代わりにpypdfを使用するほうが幸せかもしれません。
それは「#のFIXME:不完全」のようなコメントをしている
はページサイズの設定のいずれかの方法で持っているように見えていないソースに「まだ実装されていません」とを - 私が思い出すようにデフォルトを意味します〜A4(8.26 x 11.69インチ)
すべての測定は1インチあたり72ポイントです。 - あなたが開始する準備ができている
import Image
import PSDraw
# fns for measurement conversion
PTS = lambda x: 1.00 * x # points
INS = lambda x: 72.00 * x # inches-to-points
CMS = lambda x: 28.35 * x # centimeters-to-points
outputFile = 'myfilename.ps'
outputFileTitle = 'Wheel Tag 36147'
myf = open(outputFile,'w')
ps = PSDraw.PSDraw(myf)
ps.begin_document(outputFileTitle)
PSは今、指定されたファイルへのPostScriptを書き込みますPSDrawオブジェクトで、文書のヘッダが書かれています
あなたのような何かをする必要があります絵を描くもの。
画像を追加するには、次の行を追加するには
ps.setfont("Helvetica", PTS(12)) # PostScript fonts only -
# must be one which your printer has available
loc = ( # where to put the text?
INS(1), # horizontal value - I do not know whether it is left- or middle-aligned
INS(3.25) # vertical value - I do not know whether it is top- or bottom-aligned
)
ps.text(loc, "Here is some text")
:テキストを追加するには
im = Image.open("myimage.jpg")
box = ( # bounding-box for positioning on page
INS(1), # left
INS(1), # top
INS(3), # right
INS(3) # bottom
)
dpi = 300 # desired on-page resolution
ps.image(box, im, dpi)
を
lineFrom = (INS(4), INS(1))
lineTo = (INS(4), INS(9))
ps.line(lineFrom, lineTo)
を...と私はすべてのオプションが表示されませんストロークウェイトを変更します。
終了したら、ファイルを閉鎖しなければならないような:
ps.end_document()
myf.close()
編集:私はストロークの重みを設定する上で読んでのビットをしていた、と私は別のモジュール間で走った、psfile :http://seehuhn.de/pages/psfile#sec:2.0.0モジュール自体は非常に小さく見えます。彼は未加工の追記をたくさん書いていますが、舞台裏で何が起こっているのかがわかります。
この種の作業には、オープンソースライブラリReportlabをお勧めします。
非常に使いやすく、PDF形式に直接出力します。
公式ドキュメントから非常に単純な例:
from reportlab.pdfgen import canvas
def hello(c):
c.drawString(100,100,"Hello World")
c = canvas.Canvas("hello.pdf")
hello(c)
c.showPage()
c.save()
限り、PILがインストールされているように、あなたのページに画像を追加することも非常に簡単です:
canvas.drawImage(self, image, x,y, width=None,height=None,mask=None)
「画像」 PIL Imageオブジェクト、または使用するイメージのファイル名のいずれかです。
documentationの例もたくさんあります。