2 返信 最新の回答 日時: Sep 27, 2003 9:13 AM ユーザー:(kumaochan)

    グリフIDで入力する方法(SDK)

    Level 1
      グリフID(CID番号)から文字を入力することにチャレンジしています。UNICODE文字があるものはCTUnicodeTranslator::GlyphIDToTextChar
      を使って、ほぼ変換可能なのですが、1.異体字の文字、2.グリフIDしかない文字(SJIS,UNICODEにない文字)はこの方法では変換できないので、kTextAttrSpecial GlyphBossとITextAttrSpecialGlyphを使って、文字をグリフIDに置き換えるという方法をやってみましたが、うまくいきません。
      ちなみに1.は与の異体字(グリフID=20073)、2.はグリフID=19071などです。
      IPMFont::IsValidGlyphIDでkTrueが返ってくるので、有効なグリフIDであることは確認できたのですが、これ以上進みません。
      ここらへんに詳しい方、アドバイスをいただければ幸いです。
        • 1. Re: グリフIDで入力する方法(SDK)
          C++は扱っていないのでプログラムのヘルプは出来ませんが、グリフIDに関してはいくつか……。

          まず、http://www.kjsystems.com/download.html
          のサイトに無料のツールでInDesign上の文字のグリフIDを取り出せるツールありますよ。また、そのツールを利用すればVB上からでもグリフIDを直接入力して文字の入力が可能でした。

          ちなみにグリフIDで文字を入力する一点について言えば、タグを使用すれば簡単に出来ますよ。タグを利用して過去にOpenTypeの全字形のPNG画像を作成したことがあります。
          非常に時間がかかりましたが、一応動きました。
          • 2. Re: グリフIDで入力する方法(SDK)
            Level 1
            しゃもんさん
            こんにちは。早速アドバイスありがとうございます。タグを活用することと、グリフIDツールですね、研究してみます。
            それにしても、全字形を取得されたことがあるのですか...。たいしたもんですね。
            僕もがんばって勉強します。まずはお礼まで。