2008年12月29日月曜日

MacZip4Winで決まり。

やっぱAppleScriptか」でCleanArchiverよりAppleScriptと書きましたが、Macの手書き説明書に「MacZip4Win」が紹介されていました。
これで決まりですね。年初にでも派遣先にてダウンロードしようと思います。
何よりCleanArchiverにはInDesignパッケージを圧縮するとフォントが0KBにという報告があがってます(コヮ~)

で、どうしても自宅がwin-xpのためかOS-X⇔windows間の文字化けの問題はOS-X⇔windows XPと脊髄反射的に考えてしまうのですが、現状最適な圧縮・解凍ソフトと文字コードにありますようにwindowsでunicodeが採用されたのはNT&2000以降のことです。文字化けが発生するのは98以前のOSです(そんな古いOSいつまでも使わないでくれよ~)。

むしろOS-X⇔xp間ではunicodeの正規化が問題です。
インフォルムさんのOSとファイル名の関係に気をつけように詳しく書かれています。
OS-XはUTF-8(mac)、xpはUTF-16LEです。
UTF-8は8bitの文字列を複数使って文字を表す方式、UTF-16は、16bitの文字列を1個ないし2個使って表す方式です。ちなみに16bitを2個使って表すことをサロゲートペアと言います。

たとえば、「が」という文字を表現することを考えてみましょう。ユニコードでは「が」という文字に「U+304C」という番号が割り当てられています。これはシフトJISなど他の文字コードと同じですが、そのほかに「か」(U+304B)と「゛」(U+3099)を合成することでも「が」を表現できるようになっているのです。この場合、「か」を基底文字、「゛」を結合文字と言います。
ユニコードの正規化形式は4種類あります。1つに合成されている「が」は正規化形式C(NFC)、「か」+「゛」のように分解されているものを正規化形式D(NFD)と呼んでいます。

Windowsをはじめとする多くのOSでは、ファイル名にNFCが採用されており、濁音や半濁音は1つの合成済みの文字で表されます。ところがMac OS XではNFDが使われているのです。もちろん、このままではファイルのやり取りなどファイル名を他のシステムに受け渡すような場合に困るので、Mac OS XにはNFCに変換する仕組みも用意されていて、問題が起きないように配慮されています。
ところが、それでもアプリケーションによっては問題が発生するのです。たとえば、Mac OS X上でInDesignに画像を貼り込む作業を考えてみましょう。MacOS XはNFDを使うため、画像のファイル名に濁音や半濁音が使われていた場合、基底文字+濁音や半濁音という形で記述されています。InDesignはリンクとして画像を取り込む際にファイル名を記録しますが、それはこのNFDの形で記録されるわけです。

次に、InDesignファイルと画像ファイルをWindowsに持ってきて開いてみます。WindowsではNFCを使うため、ファイルを移動する際にファイル名の濁音や半濁音は自動的に1文字の形に変換されます。

ところが、InDesignの内部に保持されているファイル名はNFDのままです。そのため、このままだと、濁音や半濁音付きの文字が基底文字+結合文字の2文字として認識されてしまうのです。しかも、NFDはWindowsでサポートされていないので結合文字の部分は文字化けしてしまいます。

実際、Mac OS X上で画像を貼り込んだInDesignデータをWindowsで開くと、画像のファイル名によっては文字化けし、リンクが切れてしまうというトラブルが起きます。そうなると、あらためてリンクし直すしかありません(ファイル名だけが問題なので再リンクで正しくリンクし直せば大丈夫)。

この問題を解決するには、クロスプラットフォームで作業する場合はファイル名に濁音や半濁音を使わないというルールを守るしかないでしょう。

閑話休題。イヴの日に流星さん、クリスマスの日にキアロさんの足跡がmixiについていた。
どちらもDTP業界では有名な方だけに光栄です。でも、どこから来られたんでしょう???

0 件のコメント: