InDesign居残り補習室

どれだけ勉強しても上達しない管理人の、InDesign備忘録を中心に。たまにブックレビューなども。

スポンサーサイト  --/--/--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


検索・置換の怪  2006/04/14

「吉」の上側が土になる、いわゆる「つち吉」は、上位サロゲートと下位サロゲートの組み合わせで一文字を表現する、サロゲートペアのひとつである。
勉強部屋ではStudyroomCS No.37にて紹介されている。

ユニコードについてのWikipediaでの記述はこちら

さて、必要があって、InDesignドキュメント中のあるストーリーについて、「吉」を全て「つち吉」に変更することになった。
ユニコード値は勉強部屋でも解説されている通り、<20BB7>である。

使用フォントはモリサワA-OTFのリュウミンL。

置換してみると……。
before.jpg

after0.jpg

ありゃ。失敗。

ナゼだめなのかな?
ちと煮詰まって、漢字もかなも数字も欧文も全部リュウミンLの合成フォントを作ってみる。
化けちゃった文字を合成フォントに置き換えると……。
changefont1.jpg

changefont2.jpg

あら不思議。

それじゃー、ってことで、最初にもどってA-OTFリュウミンL-KLの「吉」を「<20BB7>」に置換する際、置換形式で先ほど作った合成フォントを指定してみた。
changefont4.jpg

ほほぅ。
気持ち悪いけど、サロゲートペアの文字に一括置換したいときは当分この方法で逃げるか。。。
しかし、なぜこうなるのか、調べ方もわからん。誰か教えて状態(苦笑)
スポンサーサイト

ほんとですね~
なんでだろと思い、AdobeJapan 1-5対応のリュウミンPr5のフォントで試したところ、ちゃんと置換されました。
で、字形パレットでよくよく見てみると、リュウミンProの「つち吉」のユニコード番号はu+5409(aalt)。「吉」と同じu+5409で、全異体字となってるようです。Pr5のフォントとはCMapが違うってことか…。でも合成フォントだと大丈夫なのはなぜだろう。なんかた、だんだんわからなくなってきたな(笑)

今自宅なので確認できませんが、たしかに会社で「つち吉」を字形パレットで見たら「吉」と同じユニコード番号でした。
しかしYUJIさんの勉強部屋の記述を先に読んでいたので、少なくとも「つち吉」に関しては一意に指定できるコード番号があることを知っていたわけです。

Pr5では大丈夫なのかぁ。
Proは、合成フォントならOKという不可解さが気持ち悪くて……。いつもより30分くらい寝る時間が減りそうです(笑)

EG Bridgeの文字パレットで文字情報を確認すると以下のようになっています。


Unicode:5409
CID (Adobe Japan1):1634

つち??
Unicode:20BB7 (D842+DFB7)
CID (Adobe Japan1):13706

で、CS2で上記の2文字を入力して情報パレットで確認すると「吉」は「0x5409」「つち吉」の方は「0x20BB7」と表示されます。CS1の文字情報表示が間違ってるということかと。CID番号での検索置換ができると一発で変換できそうなんですが…。

追記です。
EG Bridgeの文字パレットで書体バリエーションをA-OTFリュウミンLにして「吉」の関連文字を表示させると「つち吉」はトウフになって、CS1と同じ表示になってます。
文字は含まれているけど、アクセスに使用する文字コードの呼び出し方法に違いがあるということになるみたいですね。なので、CS1の情報表示は間違いではないということになる??
CS2で吉→<020BB7>への検索置換をしてみたら、やはりトウフになりました。入力するときは問題なにのになぜ???

KOUJIさん、情報ありがとうございます。
> CS2で吉→<020BB7>への検索置換をしてみたら、やはりトウフになりました。
そうなんですか。
しかし、Pr5だときちんと置換されるとの事ですから、敬遠していたPr5導入も、検討の余地があるかもしれません。

検索/置換ダイアログで「吉」を「<20BB7>」に
置換する際に、詳細設定ボタンで「検索形式の
設定」→[文字スタイルなし]+[段落スタイルなし]
「置換形式の設定」→[文字スタイルなし]+[段落
スタイルなし]の条件を付加して"吉"を<20BB7>に
置換してみました。Fontは小塚明朝 Pro Lです。
Proだと問題なく置換できましたが、FontをStdの
小塚明朝 Std Lに変更して置換すると、問題の
トウフで表示されました。
今休み中なので、次の出社日にでも、もういちど
会社のモリサワOTFで実験してみたいと思います。

流星さん、検証ありがとうございます。
お休みの日までお手を煩わせているようで申し訳ない。
感謝します♪

いき♂さん
返事遅くなってすみません。試行錯誤の連続でした(汗

落ち着いたので、レポートします。
まず、前回書き込んだ時の情報は間違ってました…
書体「小塚明朝 Pro L」だと、普通に置換できるんですよね。
それに気が付いて、さらに悩んでいました。

字形パレットでの入力で問題がないのは、一度「吉」を入力して、
異体字情報を変更しているのではないかとの仮説を立てました。
入力後に変な動きをするからです。
合成フォントで問題なく置換できるのもその為なのではないかと思います。
それで作ったのが下記スクリプトです。

また例のごとくVBSです。JS覚えたい…
'-------------------------------------------------------------------------
Set MyApp = CreateObject("InDesign.Application.CS")
Set MyObj = MyApp.Search("吉", , , , , "吉")
'For Each In だと要素数255個までしか取得できないので、回数分ループさせる
For I = 1 To MyObj.Count
MyObj(I).OpenTypeFeatures = Array(1953259873, 1)
Next
Set MyObj = Nothing
Set MyApp = Nothing
'-------------------------------------------------------------------------

#じつは、置換を一発で戻せない仕様ですが(TT;

流星さん、ありがとうございます。
休み明け早々のレス、感謝です!

> また例のごとくVBSです。JS覚えたい…

私は逆に、今更ながらVBを勉強しようかと考え始めています。
やはりInDesignを起動することなくコントロールできる言語は強い…。

コメントの投稿





管理者にだけ表示を許可する

トラックバック

http://kstation2.blog10.fc2.com/tb.php/28-17a069ad

(新しい記事)← Edicolorライクなテキスト取り込み
タブリーダーのTIPS(2) →(古い記事)

 | HOME | 

カレンダー

07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -

FC2カウンター

2006年3月28日カウント開始

Amazon

FC2 Affiliate

動くPDF

プロフィール

あわせて読みたい

あわせて読みたいブログパーツ

最近の記事

最近のコメント

最近のトラックバック

Lc.ツリーリンク

RSSリンク

直感カテゴリーツリーV1.1

ブログ内検索

ブロとも一覧

marumi

神楽崎 ゆう


■ ブログ名:I'm writing NOVEL

七篠 銀字


■ ブログ名:風と夜空と氷の国

MS


■ ブログ名:へなちょこDTP

桜桃


■ ブログ名:追憶の桜吹雪

瑪瑙 輝遊


■ ブログ名:千里の道も一歩から

magatu


■ ブログ名:unsigned

暁 鷲 (あかつき しゅう)


■ ブログ名:空を裂け!

NewMark

C-Roll


FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。