Home > ActionScript > Mac OS 9.1 にて Flash Player 内の日本語が文字化けする不具合に遭遇

Mac OS 9.1 にて Flash Player 内の日本語が文字化けする不具合に遭遇

とある業務ツールを Flash / ActionScript 2.0 で作成していた際に出くわした不具合。UI Components を多用しつつ、クラス設計もうまく出来たかなぁ、なんてイイ気分で作っていたのに、納品間際で実行環境が Mac OS 9.1 + I.E. 5.1 の組み合わせである事を知らされる... Oh Legacy 環境 (汗

予想通り手痛い不具合にぶち当たったので、現象と解決策をさっくりまとめてみました。同じように困り果てている人の救いになる事を願って。

不具合

Flash 実行時、UIコンポーネント系オブジェクトにて表示される日本語文字列が化けてしまう

MX 2004 からの新要素である UIコンポーネント に限ってマルチバイト文字列が化けてしまいます。しかもプリンタ印刷を1度でも実行すると、さらに文字サイズまでぐちゃぐちゃに崩れてしまうオマケつき。以下画面キャプチャ:

発症環境

  • Mac OS 9.1 (J1-9.1)
  • Internet Explorer :mac 5.1.7 (5815)
  • Flash Player 7,0,61,0
  • ActionScript : System.useCodepage = true

解決策

日本語を表示させたいUIコンポーネントに対して "_等幅" フォント指定を施す

code sample :

import mx.styles.CSSStyleDeclaration;
_global.styles.CheckBox = new mx.styles.CSSStyleDeclaration;
_global.styles.CheckBox.setStyle("fontFamily","_等幅");

※ "_等幅" にするのがポイントみたい。今回の場合、"_ゴシック" や "_明朝" だとNGでした。

関連情報

以下、直接関係は無いものの、似たような不具合について触れられているページ :

Comments:0

Comment Form

コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。

Remember personal info

Home > ActionScript > Mac OS 9.1 にて Flash Player 内の日本語が文字化けする不具合に遭遇

Search
Feeds

Page Top