ActionScript 誰かが物凄い勢いで解答するスレ31
934 :
Now_loading...774KB:2013/10/18(金) 18:28:32.58 ID:MemT2L45
>>931 ありがとうございます。
ただ、実際にやりたい事は、
ファイルやURLからの読み込んだデータではなく、UTF8のソースコード上に指定した文字列を変換したいので、
その方法を知りたいです。
言葉足らずで大変申し訳ありませんでした。
よろしくお願いします。
>>932 24か32ビットじゃないとだめと思われる
PNG外部読込みのはバグ認定でいいよ
埋め込みだとちゃんと色値取れるんだから
>>934 System.useCodePage = true;
>>937 チャンクといわれても… こんなん出ました 何かまずい箇所があるでしょうか
IHDR Size:13 Byte Offset:8 CRC32:29E16883 / verify: true
gAMA Size:4 Byte Offset:33 CRC32:36058AE9 / verify: true
tEXt Size: 25 Byte Offset:49 CRC32:61C9653C / verify: true
PLTE Size:6 Byte Offset:86 CRC32:6B62BF3E / verify: true
IDAT Size:228 Byte Offset:104 CRC32:E1C10A36 / verify: true
IEND Size:0 Byte Offset:344 CRC32:AE426082 / verify: true
gAMAチャンクがガンマ値なんだが、その値が効いてるんではなかろうか。CRC32の値出されてもわからんw
試したわけではないからわからんが、ブラウザだとIEとモダンブラウザでPNGの色味が違うときはまず疑った。
safariも面倒だった覚えが。
fireworksでチャンク削るとかなんかそんなオプションなかったっけ?
いやいやw ガンマ値で色値が変わるなんて困るよw
それなら埋め込みでも変わるべき 何で外部読込みの時だけ影響するんだ
作ってるのはゲーム系で PNG画像をそのままマップデータとして扱いたいんだ
個々のエンドユーザーにマップを作ってもらう仕様なんだけど 一々ガンマのチャンク削るとか
そんなの説明したらメンドクサくてプレイしてもらえないでしょ?
ちなみに
>>939さんも
>>932のコードで色値が変わるよね?
ああ ブラウザによってガンマ値が異なってて
それをHTML等の外部読込み時に忠実に再現するって事なのかな?
それにしたってローカルからの読み込み時は無視してもらいたい
getPixelの方にガンマ値を無視するチェックでもありゃいいのにな
>>940 面倒だけどFlashBuilderで試した。
が、fdfdfdになったぞw
で、gAMAチャンクを削除した画像だとffffffという結果。
ちょっと気になったんで、回避方法は調べてみよう。
気長に待てw
ちがう、fefefeだった。<なにもしてないpng画像
gAMAに限らずチャンク全削除だった。
現実逃避の時間がなくなってきたんでまた今度
横から失礼
頑張れ!回避方法期待してます
結局デコーダ自作じゃないと無理という結論に。
> それにしたってローカルからの読み込み時は無視してもらいたい
> getPixelの方にガンマ値を無視するチェックでもありゃいいのにな
ファイルガンマが設定されているということは、
そのガンマ値での表示が正しい表示と、作成者が決めたはず。
だからFlash環境では正しく表示されるべき方(=チャンクを正しく解釈すること)を選択することは理にかなっている。
問題は、そういう設定があるのを知らずに使ってる人が多いってことだと思う。
画像作成者=PNG利用者の場合、チャンク削るなりして正しい画像にすればいいが、
システム何が正しいかわからないのだからしょうがない。
となると、システムに準備されていない限り、
プログラム作成者が正しいと思うファイル読み込みで処理するしかない。
同じように悩んでる人が居るね。
http://wonderfl.net/c/t2BDW 目的は違うけど、デコーダ作っている人がいた。
http://d.hatena.ne.jp/heriet/20090123/1232650068 こんなもんじゃないだろうか。
>>946 解決しました ありがとうございました!
回避方法は PNG画像をURLLoaderでバイナリで読み
そこのherietさんのデコーダにぶっ込み生成された画像(色値のみ?)で正確な色値を抽出できました
当初はByteArrayから直接色データを取り出そうとしましたが超メンドイのであきらめましたw
…と思ったらだめでしたOTZ
自分の作品に組み込んだらいくつかの色が正確に抽出できませんでした
今までのように全滅とはならなかったのは救いですが
誰かPNGのバイナリデータから色値のみを抽出するデコーダクラスを作ってくれないかな…w
>>946のリンクの奴の、パレットとかそこらへんは読んだ?
どう悪いかわからんとどうしようもない。
AS1.0でテキストフィールドに配列の一部を表示したいんですけど
tf.variable = "array[3]";
これだとうまくいかない……
tf.variable = "array";
ではさすがに読みづらいし、何か上手い方法はないですか?
tf.text = array[3];
厳密にやるなら
tf.text = String(array[3]); か tf.text = array[3].toString();
かね。エラー出るかどうかはわからん。
TextFieldのvariableプロパティなんて使ったことないわ。
952 :
Now_loading...774KB:2013/10/31(木) 12:32:14.52 ID:Oy+baEdM
いつの間にかFlash Player プロジェクターでexe化できなくなってる
Flash CC もプロジェクト書き出しはないみたい
古いの使え以外に何か代替方法ありますか?
無いんだなこれが
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.KeyboardEvent;
public class Main extends Sprite
{
public function traceKeyDown(event:KeyboardEvent):void {
trace("key down: " + event.charCode);
}
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
addEventListener(KeyboardEvent.KEY_DOWN, traceKeyDown);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
}
}
}
これでコンパイルしてみたけどtrace文が出力されない
キーボードの文字が押されたかどうかを取得したいがどうすればいいの?
addChildした親MCの子MCをaddChildしています
子MCからイベントリスナーで親のMCに定義してある
functionを参照させたいのですがエラーがでてしまいます。
親MC 関数定義
function do_Open():void{
trace("ボタンを押しました");
}
子MC イベントリスナー
hoge.addEventListener(MouseEvent.CLICK,Open);
function Open(e:MouseEvent):void {
parent.do_Open();
}
エラーメッセージでは、親MCに書かれている関数が見つからないぞ。
という感じだと思うのですが解決方法がわかりません。
よろしくお願いいたします。
こうじゃね? ( parent as MovieClip ).do_Open();
てかその構造が変だな ボタンも親で定義しる
parentはDisplayIbjectContainerだからな
実行時はともかくコンパイル時にはdo_Openメソッドが保証されてないのでその親クラスでキャストする
>957
>958
( parent as MovieClip ).do_Open();にて思うような動作をさせることが出来ました
勉強のためにキャストする方法も試してみたいと思います。
どうもありがとうございました
可能
あなたの言う地図上での最小移動単位でグラフを作る必要がある。
へクスなのかスクエアなのかどうするつもりかで変わる。
962 :
960:2013/11/06(水) 10:33:22.74 ID:iZP6+rB4
>>961 本当ですか!ありがとうございます。
スクエアのつもりです。
ドラクエタイプを想定するとマップチップごとの移動コストがグラフになるだけだから、
スタート地点、ゴール地点が何処だろうと処理しやすいと思うんだけど。
964 :
Now_loading...774KB:2013/11/09(土) 13:33:54.82 ID:+s1+OvXv
Loderを作り外部画像を読み込ませて、
画面内のボタンを押すことで別画像を読み込ませたいと思っています
ボタンを押すことで、最初の画像もRemoveされて
URLRequestの内容も変わっていることがトレースで確認できるのですが
画像表示用の表示用McをNewしてみると、古い画像を読み込んでしまいます。
Removeしても、古い情報を持ったMCが影にスタンバっているような感じなのですが、これを削除して
新規Mcとして生成、新規URLRequestを読み込ませるためにはどうしたらよいのでしょうか?
すみません、実現可能かどうかの質問をさせてください。
自分のサイトに設置したflash(swfファイル)が
訪問者によって実行される度に
他サイトのとあるページのHTMLソースを取り出すことは可能でしょうか?
それと、もし可能だった場合は
その際のリファラ情報はどうなりますか?変更可能ですか?
可能、可能
969 :
Now_loading...774KB:2013/11/13(水) 17:01:26.25 ID:jY5ikZrl
不可能だろ
970 :
Now_loading...774KB:2013/11/14(木) 07:22:49.04 ID:TC9ZzzID
いいえ、可能です
この話題何度目だ?
不可能でしょ
Starling + AndroidでflvのVideoを再生しています。
デスクトップでデバッグすると普通に再生されますが、
実機だと色が少し暗くなります。Videoの上に半透明の
黒をのっけたようなかんじです。なにか解決策がありましたら
教えて下さいお願いします。
ちなみにstagevideoクラスではなく、videoクラスを使っています。
>>973 やっぱりデスクトップも色が若干黒くなっていました。
仕様でしょうねたぶん。
as1のtextfieldでtf.wordWrap=true;の時
表示範囲の右端に「」が含まれてると
勝手に改行されて一行の文字数と合わなくなっちゃうんですけど
自動整形をなくして右端に「を表示させる方法は何かないですか?
chromeでflashを動作させるとアンチエイリアスが綺麗にかかりません
対策法をご存知のかたいらっしゃいましたらお願いします
978 :
Now_loading...774KB:2013/11/23(土) 00:02:04.99 ID:duI7peTC
FlashDevelopで[Embed(source=〜でファイルを埋め込んで使っています
エディタからプロジェクトをテストすると埋め込んだオブジェクトを表示できるのですが、bin/htmlを実行しても表示されません
どんな問題が考えられますか?
やってることはFlare3Dで.f3dファイルの埋め込みです。
ちなみに埋め込まずにURLLoaderでファイルを読み込んでも同じ結果です。
979 :
Now_loading...774KB:2013/11/23(土) 22:30:45.73 ID:+4L9Ib7x
>>977 IEを使うんだ
>>978 Flare3Dなどわからん 専用スレないのか
おれにも教えてくれ フォーカスをセットしたボタンを消すとstageに定義したキーボードイベントも
反応しなくなる(キー入力での処理が効かなくなる) Tabキーを押すと復活するんだけど
Tabキー押下以外でコードで復活させる事はできないの?
stage.focus = stage;//これはだめだった
勘違いだった stage.focus = stage; でフォーカス戻ったw
>>978 エラーが出てるんじゃなくて?
wmodeとか
982 :
978:2013/11/24(日) 01:01:29.37 ID:4JZA8CY4
>>981 デフォルトのparams.wmode = “direct”;
Spriteに画像を読み込むのとかはちゃんと表示されてるから、bin/配下からだと何か必要な物に対するパスがズレるのかなと思ってる
>>982 それにしたってファイル読めてないならなんかエラー出ると思うんだけどなあ
telemetry有効にしてScoutで見たらStage3Dのところにエラーは出ていない?