画像処理について
選択画像の部分を
透明にわくどりをするに
どうすればいいでしょうか??
質問内容が大雑把過ぎて怪盗も小○?
clwhiteを透明にしたいんですが・・・
この場合のcl○○○○がわかりません。
おしえてください。
何がしたいのか、全くわかりません。
Image1.Transparent := True; //???
Image4.Canvas.Pixels[i+x,j+y]:= clwhite;
なっているのですがこの場合の選択部分を
clwhiteではなく透明にしたいのですが。
面倒だからといって投げやりに質問すればただ荒れるのみ。
質問する側には最低限の知識やマナーは必要だ。
この場合のマナーというのは言葉遣いだけではないですよ。
「透明」とか「枠取り」とかの用語を不用意に使う神経の事をいうのです。
選択部分というのは点?
Imageの下(背景)は単色じゃないんだよね?
そこを Imageの下(背景)の色に変えたいということなら、
Imegeコントロールの透明にしたい部分の背景色をあらかじめ保存しておかねば。
もし背景が画像でそのデータがあるなら、その画像のソコの色を指定すればいい。
clWhiteで白くできるように、
質問者はcl○○○○という設定で透明にできると思っていて、○○○○の部分を知りたいということでしょうから、答えはcl○○○○という設定では透明にできません。となりますね。
Delphiでの画像処理の基礎となる TCanvas は、Win32 の描画システム GDI に
依存していますので、画像そのものの一部を透明にする機能はありません。
TImage には、描画の際に特定の色を透明にする機能がありますが、画像そのもの
のなかを透明にしているわけではありません。ですから、回答は「できません」
ということになると思います。
XP 以降に搭載されている GDI+ を使うと、 pf32bit のフォーマットのアルファ
チャネルに透明度を設定できて、画像そのものに透明度を設定でき、そのままで
描画することができます。わたしのHPでは、Delphi で GDI+ を使う例が示されて
います。参考になるかもしれません。
四角形で囲むとなるとどうすればいいでしょうか。
少しは「何をどうしたいか」説明することを
自分の頭で考える
以下にマスク画像作成のアルゴリズムが詳しく説明されています。
VBですが、処理の概念は良く分かると思います。
これを行えば周辺が透明になります。
見当違いでしたらごめんなさい。
http://homepage1.nifty.com/CavalierLab/lab/win/transparent.html
ここにDelphiのもありました。
http://homepage1.nifty.com/project21/articles/delphi/tips02.htm
空気を読もうよ。
参考リンクだけ示したって、発言者が何もしないしする気も無いことは自明でしょ。
ヤル気がないってのは能力がないよりもタチが悪いよ。
とりあえず、何をしたいかというのを、
わかりやすく説明した方がいいと思います。
答える側の立場にたって、書いてみましょう。
そうすれば、回答者は、答えやすくなります。
どんなコンポーネントを使っていて、
どのように、透明にしたいのか?
四角形で囲むとは、
どういうことをしたいのでしょう?
ツイート | ![]() |