LoginSignup
0
0

More than 5 years have passed since last update.

Illustratorのプラグイン開発で日本語の文字列を表示する

Last updated at Posted at 2018-10-05

はじめに

Illustratorのプラグインの開発のおはなし。
IllustratorのAPIを使ってポップアップウィンドウを表示する際に
日本語を表示するのにちょっとつまづいたのでメモ

開発環境

Mac用のプラグインはXcode、Windows用のプラグインはVisualStudioを用いてビルド
推奨開発環境などはAdobeのサイト参照、基本的にそれに沿ってやってます。
IllustratorのAPIはAdobeのサイトから落とせます。

ソースコード

基本的には下の感じでYes,Noの選択肢を持つポップアップウィンドウが出せるはず。

aiplugin.cpp
const char* str = "今日はいい天気ですね"
ai:::UnicodeString aiStr(str);
YesNoAlert(aiStr);

Windows、Mac共にビルドは通ったのだが
Mac版はプラグインを起動してポップアップを表示したときに文字化けしてしまった。

解決策

下のように一文足したら文字化けが治った。

aiplugin2.cpp
ai:::UnicodeString aiStr;
const char* str = "今日はいい天気ですね"
aiStr = ai::UnicodeString::FromUTF8(str);
YesNoAlert(aiStr);

ただ、aiplugin2.cppのソースコードだと逆にWindowsで文字化けが発生した
同一のソースコードを利用する場合はマクロなんかで切り分ける必要があるようだ。

まとめ

原因がいまいちつかめていないが、修正内容からするとおそらく文字コードだと思われる。
ただどちらのソースコードも文字コードはUTF-8のはず。
なのでaiplugin2.cppのソースコードを用いてもWindowsで正常に動くはずなのだが...。
ひとまず暫定対応としてFromUTF8のメソッドを使う事を覚えておく。

0
0
6

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0