- ベストアンサー
AS2.0で写真に枠線を付ける方法
- Flashを使用してActionScript 2.0で画像に枠線を付ける方法を探しています。
- createEmptyMovieClipを使用して画像をロードし、lineStyleとbeginFillを使用して白い枠線を付けることを試みましたが、うまくいきませんでした。
- 解決策を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
問題を単純化しましょう。 (=ちゃんと問題を切り分けましょう。) ロードするしない以前の問題です。 (ロードが頭にあるので問題点が切り分けられてないのでは?) これ↓では白い枠自体が描けないでしょう? ------------------------ createEmptyMovieClip("mc", getNextHighestDepth()); mc.lineStyle(1,0xffffff,100,true,"none","none","miter",90); mc.beginFill(0xffffff,100); mc.moveTo(0,0); mc.moveTo(0,55); mc.moveTo(120,55); mc.moveTo(120,0); mc.endFill(); ------------------------- 白い背景付きの枠を書くのであれば こう↓です。 ------------------------- createEmptyMovieClip("mc", getNextHighestDepth()); mc.lineStyle(1, 0xffffff, 100, true, "none", "none", "miter", 90); mc.beginFill(0xffffff, 100); mc.moveTo(0, 0); mc.lineTo(0, 55); mc.lineTo(120, 55); mc.lineTo(120, 0); mc.endFill(); ------------------------- 以上。 と終わりたいところですが せっかく MovieClipLoader を用意されているようなので MovieClipLoader を使う ならでは のスクリプトを以下に書きます。 ------------------------------------------ //ロード監視用のインスタンスloadListenerを作成 var loadListener:Object = new Object(); //MovieClipLoader インスタンスmcLoaderを作成 var mcLoader:MovieClipLoader = new MovieClipLoader(); //この階層にムービークリップmcを作成 createEmptyMovieClip("mc", getNextHighestDepth()); //JPEGロード完了時の動作を定義 loadListener.onLoadInit = function(target:MovieClip):Void { //ロードしたMCの幅と高さを取得 var w = target._width; var h = target._height; // target.lineStyle(2, 0xffffff, 100, true, "none", "none", "miter", 90); target.beginFill(0xffffff, 100); target.moveTo(0, 0); target.lineTo(0, h); target.lineTo(w, h); target.lineTo(w, 0); target.endFill(); }; //mcLoader の監視役として loadListener を登録 mcLoader.addListener(loadListener); //img/test.jpg をロード mcLoader.loadClip("img/test.jpg", mc); ------------------------------------------ ↑外部JPEGのサイズは任意で(固定でなくて)プログラミングできるという意味です。
お礼
ありがとうございます。 moveToをいくら重ねても線は引けないですよね。 情けない…。