Addicted to Mac

こころおどるコンピュータ。

Fireworks CS3がATSServerの暴走を誘発

text:

Adobe Creative Suite CS3を導入してしばらく経ちましたが、個人的にけっこう悩ましい問題が発生。もしかしたら一番利用しているかも知れないFireworks CS3で、テキスト入力をしようするとMac OS XのATSServerが暴走してしまうのです。

ようやくIntel CPUネイティブで動作するようになったCS3。どのソフトの起動も動作もキビキビとしていて、明らかにRosetta上で動く旧バージョンとは一線を画す操作感で満足しきりでした。

ところが、Fireworks CS3のテキスト入力がトリガーとなってATSServerが暴走してしまう現象を最近になって確認。暴走とは言っても一過性のものでテキスト入力処理を終えれば正常な状態に戻るのですが、暴走中は1文字あたりの入力に体感的に1〜2秒は待たされている感じで、すこぶる不快。

問題のATSServerとはApple Type Solution Serverの略で、Mac OS X上でフォントのレンダリングとレイアウトを一手に引き受けるコア・プロセスの一つ。暴走したからといって多方面への影響を考えるとプロセスを終了させるわけにはいかず、実際にアクティビティモニタから終了させようとすると「"ATSServer"を終了すると、ログアウトしてしまいます。」と警告が表示されるようになっている。

同様の症状が報告されていないかAdobeのForumやGoogleで調べてみたところ、海外ユーザーより1件の報告を発見。しかし具体的な改善策の報告やもちろんアップデータの公開はなく、かなりマニアックな症状であることは分かった。

ただしATSserverのみに絞って調べてみたところ、それっぽい話題がちらほら。...ともかく、色々試行錯誤した結果自分なりの改善策を見つけたのでアウトプットしておきます。

まずはATSServerのcacheを削除して再起動。具体的にはMacのシステムボリューム直下より、以下(/Library/Caches/com.apple.ATS)を削除する。

つづいてFireworks CS3でのテキスト入力時にも注意が必要。

  1. フォントにアンチエイリアスを利用したい場合はアンチエイリアス処理に「システムのアンチエイリアス」を使用する。
  2. 12ポイント未満の文字を使用しない。
  3. 小さな文字サイズで長い文章を入力する必要がある場合には、まずアンチエイリアス処理無しの設定で入力し、入力後に処理をかけるようにする。

以上で大幅な改善が見られた。どうやらまずFireworks CS3独自のアンチエイリアス処理を利用するとマズいらしく、さらに12ポイント未満の文字サイズを使うと途端にATSServerに負荷がかかり始めるらしい。

1.のアンチエイリアス処理について言えば、Fireworks CS3独自のものとシステム標準のものとで大差はないと思います。旧バージョンまでは小さなサイズの文字をレンダリングする際に「カスタムのアンチエイリアス」を使うことでより美しいアンチエイリアス処理かかるようでしたが、CS3にしたところ差が無くなったように思います。(OSのアップデートによる改善という可能性もあり。)

2.に関しては実用上問題大アリなのですが、なぜか12ポイント以上の指定にすればもの凄くサクサク動くことが判明。ただし1.の設定をしていない場合には12ポイント以上の文字サイズであってもATSServerが唸り始めます。

さらに3.については2.で発生する実用上の問題に対する回避策。アンチエイリアス処理をしながらテキスト入力をするとATSServerとの相性問題が発生するが、あとからまとめて処理する場合にはすんなりいくようなのです。

というわけで確たる原因を見つけることがはできなかったのですが、ATSServerにかかるストレスと自分の精神にかかるストレスはだいぶ軽減されました。不具合の原因として一番疑わしいのはFireworks CS3ですね...。CS3インストール時に同時インストールされるAdobeのフォントの可能性も疑ったのですが、他のアプリケーションでは全く起こらない症状であるということを踏まえるとこれは考えにくい。

個人の環境に因るという点はもちろん認識してますが、バグはバグですし面倒で仕方がないので早く直していただきたいです。けっこうマイッチング。何しろ情報が少ないので、もし原因が分かっている方いらっしゃいましたら助言いただけると大変助かります。