Create  Edit  Diff  Phillro Industries  Index  Search  Changes  History  Source  RSS  Note  wikifarm  Login

Phi::Metafile

Phi::Metafile

Win32 のエンハンスドメタファイルグラフィックのラッパー

Phi::Metafile はメタファイル (EMF ファイル形式 ) を格納します。

Phi::Metafile のプロパティはメタファイルのサイズおよび特性を示します。

メタファイルをキャンバスに描画するには, Phi::Metafile を引数として渡して, Phi::Canvas#draw , Phi::Canvas#stretch_draw を呼び出します。

properties

enhanced : Boolean

メタファイルをディスクに格納する方法を決めます。

enhanced プロパティは,メタファイルをディスクに格納する方法を設定できます。

true
メタファイルは .emf (Win32 エンハンスドメタファイル ) として格納されます。
false
メタファイルは .wmf (Windows 3.1 メタファイル, Aldus ヘッダー付き ) として格納されます。

メモリ内での形式は常に EMF です。 WMF は機能が非常に限られており, WMF として格納すると, EMF では保持される情報の一部は保有されません。 enhanced は読み込み時にメタファイルの種類に一致するように設定されます。 WMF として読み込まれた場合は WMF として保存します。


require "phi"
require "methods_for_wiki"
puts Phi::Metafile.methods_for_wiki

assign

canvas {| canvas | .. }

メタファイルの内部的なカンバスをブロック引数にして、ブロックを実行する。

require "phi"
metafile = Phi::Metafile.new
metafile.canvas{| canvas | p canvas } #=> #<Phi::MetafileCanvas:0x12b9230>

ブロックがないとエラーになります。

require "phi"
metafile = Phi::Metafile.new
metafile.canvas  #=> no block given (LocalJumpError)

* このような仕様になっているのは、Delphiでの TMetafile が、「カンバスを廃棄したときにメタファイルの本体に書き込む」という特殊な仕様になっているためです。rubyではオブジェクトの廃棄はガベジコレクションに任されており、明示的には出来ませんので、ブロックの終了時にDelphiレベルで廃棄する必要があるためです。

empty => Phi::Graphic#empty

empty? => Phi::Graphic#empty?

event_handle => Phi::Persistent#event_handle

extend => Phi::Persistent#extend

height => Phi::Graphic#height

height= => Phi::Graphic#height=

load

load_from_clipboard_format => Phi::Graphic#load_from_clipboard_format

load_from_file => Phi::Graphic#load_from_file

load_from_stream => Phi::Graphic#load_from_stream

mm_height

mm_height=

mm_height プロパティは,メタファイルイメージの高さを 0.01 ミリメートル単位(エンハンスドメタファイルが使うネイティブなスケール)で示します。

mm_width

mm_width=

mm_width プロパティは,メタファイルイメージの幅を 0.01 ミリメートル単位(エンハンスドメタファイルが使うネイティブなスケール)で示します。

modified => Phi::Graphic#modified

modified= => Phi::Graphic#modified=

modified? => Phi::Graphic#modified?

palette => Phi::Graphic#palette

palette= => Phi::Graphic#palette=

palette_modified => Phi::Graphic#palette_modified

palette_modified= => Phi::Graphic#palette_modified=

palette_modified? => Phi::Graphic#palette_modified?

save

save_to_clipboard_format => Phi::Graphic#save_to_clipboard_format

save_to_file => Phi::Graphic#save_to_file

save_to_stream => Phi::Graphic#save_to_stream

transparent => Phi::Graphic#transparent

transparent= => Phi::Graphic#transparent=

transparent? => Phi::Graphic#transparent?

width => Phi::Graphic#width

width= => Phi::Graphic#width=

Last modified:2004/11/08 20:33:37
Keyword(s):
References:[Phi-Classes] [Phi-Constants] [Phi::Canvas] [Phi::Graphic] [Phi::Image] [Phi::Picture]