• ベストアンサー

FlashMX2004 設定サイズ外も表示されてしまう。

FlashアニメーションをFlashMX2004で520×230にサイズを設定して作ったのですが、サイズ外の部分(灰色の所)まで表示されてしまいます。 なにか設定がおかしいのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.2

#1です。 > ファイルの読み込みをおこなっていて、 > サイズは520×230に設定していますが、 > 上手く行かないので今はマスクを使って表示させたい部分を > 指定しています。 現物を見たわけではないので絶対とは言い切れませんが, 書かれていらっしゃる対処法がベストだと思います。 子SWFを別の親SWFからロードすれば, 親のSWFのステージが優先になりますから, 子SWFのステージは全く無視されます。 背景色も無視されます。 したがって,マスクで対処するのがベストです。 > Flashを520×230でパブリッシュして、 > HTMLでサイズの指定をしないで表示させると、 > ワークエリアまで表示されてしまうのでしょうか? それはロードしない場合(ロードするとかしないとかは関係ない場合)の話でしょう? その場合は,当然表示されます。 でないと逆に困ります。 消すのは,インスタンス指定やマスクで対処できますが, 表示させるのには,基本的に対処できませんから,表示されないと困ります。 ↑言っている意味が分かりにくいと思いますが, 言いかえると表示させたいから配置するわけです。 配置した物が何の指示もなしに非表示になっては困るということです。 > ワークエリアの部分はアニメーションでは表示されないと本で読んだので、 > 表示されてしまうので設定がおかしいのかと思っています。 ちゃんとHTMLでステージ以外を表示させないようにしておけば表示されません。 ですから, > ワークエリアの部分はアニメーションでは表示されない というのは正解です。 しかし, HTMLを適当に無茶苦茶にするとステージ外は表示されます。 でも普通はそんな無茶苦茶なことをしないので, >ワークエリアの部分はアニメーションでは表示されない というのはやはり正しいと思います。 無茶をすれば当然例外は起こります。 「乾電池では感電死しない。」 これは正しいと思います。 しかし乾電池を千個直列につないだ物を千個並列につないで, その両極に触れれば感電死すると思います。 でもそんなことは最初から話の対象にはなっていないので, 「乾電池では感電死しない。」 は一般的に正しいと思います。 ごくごく一般的にあるHPのFlash(SWF)をブラウザで直接表示させたことはありませんか? たいてい(99%以上)ステージ外が見えますよ。 見えないのは背景色がFlashアニメーション本体と同じでなおかつそのエリアに何もでない場合です。 もしくはマスクをかけているかです。 もしくはステージ外に背景色と同じ塗りを描いてステージの部分だけくり抜いてあるかです。

syomi
質問者

お礼

ありがとうございます。良く理解できました。 > ワークエリアの部分はアニメーションでは表示されない ということをそのままの意味に受け取っていたので、ずーっとおかしい、おかしいと悩んでいました。 今までのやり方でいいんだという事が解り心置きなくFlashアニメーションが作れます。

その他の回答 (1)

  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

> サイズ外の部分(灰色の所)まで表示されてしまいます。 これはどういう状況でのことしょうか? たとえば,520×230 の SWF をパブリッシュして, HTML上にタグで 520×300 の大きさに表示させると, 普通は上と下にステージ外の部分が 35px ずつ表示されます。 たとえば,520×230 の SWF をパブリッシュして, HTML上にタグで 600×230 の大きさに表示させると, 普通は右と左にステージ外の部分が 40px ずつ表示されます。 これが普通の現象ですし, また, そんな変なことをしないもの普通です。 あと HTML は関係なしで, パブリッシュした SWF を単独で表示させて, そのウィンドウを縦や横に引き延ばすと, 引き延ばした分だけ縦や横にステージ外の部分が表示されます。 これも普通の現象です。 また,これによって何か不都合が生じることも普通はありません。 単に「そういうものです。」と言うしかありません。 何か特殊な目的があって, 普通ではないことをする場合に, ステージ外の部分を表示させないようしたいときは, 次のページのようにすれば良いと思います。 Flash の画面表示について http://hakuhin.hp.infoseek.co.jp/main/as/stage.html 上記ページの↓  「スケールモードを設定したい」  http://hakuhin.hp.infoseek.co.jp/main/as/stage.html#STAGE_00  上記項目の↓   「■外が表示されないようアスペクト比を維持して表示」    と   「■上下左右がフィットするように表示」 でもこうするのは,何か特別な事情がある場合ですよ。 普通はそういう事情には巡り会わないのでこれ(上の2つ)をすることはまずありません。

syomi
質問者

補足

ステージより大きなサイズで背景を作って上下または左右に移動させるようにしたり、ワークエリアからキャラクターが入って来て抜けて行くような感じのアニメーションを作っています。 Loaderでファイルの読み込みをおこなっていて、サイズは520×230に設定していますが、上手く行かないので今はマスクを使って表示させたい部分を指定しています。 Flashを520×230でパブリッシュして、HTMLでサイズの指定をしないで表示させると、ワークエリアまで表示されてしまうのでしょうか? ワークエリアの部分はアニメーションでは表示されないと本で読んだので、表示されてしまうので設定がおかしいのかと思っています。

関連するQ&A

専門家に質問してみよう