Skip to main content
fuijisawa
Participant
June 4, 2018
Question

文字コードに10が付加される?

  • June 4, 2018
  • 1 reply
  • 714 views

黒電話(U+260E)と白電話(U+260F)を含むPDF(フォント埋め込みではない)を作成して、AcrobatReaderDC(2018.011.20040)で表示すると、黒電話は表示されるが、白電話は表示されない。白電話をコピペして文字コードを確認すると、U+10260Fになっている。なぜ10が付加されてしまうのか?

    This topic has been closed for replies.

    1 reply

    assause
    Community Expert
    Community Expert
    June 4, 2018

    記載されただけですと何とも言えないところがあります。

    作成まで踏まえていらっしゃるようなので、下記の情報は欠かせないところです。

    • 作成元のOSやアプリケーションとそのバージョン
    • 元アプリケーション時点で使用されているフォント
    • PDFを生成した方法(アプリケーション名やそのバージョン、作業手順など)
    • Acrobat Readerで表示に利用されている代替フォント名
    • 文字コードの確認方法

    また少し確認したのですが、下記の手順内容では再現がしませんでした。

    • Windows 10 RS4+付属のワードパッド
    • MS明朝でそれぞれの文字を入力
    • Acrobat DC Conitiniousを用い、Adobe PDFドライバー+最小ファイルサイズでPDF生成
    • Acrobat Reader DC(同一PC内)で開いてフォントの埋め込みがないことを確認
    • テキストを選択+コピーし、テキストエディタのMeryへペースト、コード確認

    なおフォントが埋め込まれていない場合は表示するシステムに含まれるフォントが用いられることになるので、

    作成元の結果とはどうしても相違は生じます。

    確実性を担保するのであれば、フォント埋め込みは必須になります。

    fuijisawa
    fuijisawaAuthor
    Participant
    June 5, 2018

    ご支援ありがとうございます。情報不足、失礼しました。

    *       作成元のOSやアプリケーションとそのバージョン

    RedHatLinuxEnterprise7.3のサーバに、インフォテック社Create!Form Cast v11を

    インストールしています。

    *       元アプリケーション時点で使用されているフォント

    MS明朝を指定しています。

    *       PDFを生成した方法(アプリケーション名やそのバージョン、作業手順など)

    Create!Form Cast v11を用いて、フォントを埋め込まない方式でPDFを生成しています。

    *       Acrobat Readerで表示に利用されている代替フォント名

    MS明朝を指定しており、表示側PCにもMS明朝があるため、MS明朝となると

    思っていますが、回答がズレていたらすみません。

    *       文字コードの確認方法

    Acrobat Reader DCで、生成されたPDF(黒電話と白電話のみの2文字の簡易なもの)を表示します。

    そうすると、黒電話は表示されますが、白電話は空白?で表示されません。

    ただ、ここをコピペはできますので、文字コードがわかるテキストエディタにコピペして

    確認すると、10260Fになります。同様の方法で、黒電話をコピペして確認すると260Eとなっています。

    因みに、インフォテックの方に「PDFに含まれるストリーム部分の圧縮を解除し抽出したテキスト」をいただきました

    が、PDF時点では、260Eであり、260Fであることが示されていました。

    以下、抜粋。

    stream
    q 1 0 0 1 0 0 cm /Fm_str Do Q
    BT
    10 0 0 10 34.2 807.8 Tm
    0 g 0 G
    0 Tc
    /F900U 1 Tf
    <260E>Tj
    /F900 1 Tf
    0 -3 TD
    0 Tc
    /F900U 1 Tf
    <260F>Tj
    /F900 1 Tf
    ET

    endstream

    よろしくお願いします。

    assause
    Community Expert
    Community Expert
    June 5, 2018

    Adobe製品以外の、他社製PDFソリューションを用いて生成しているPDFであれば、

    そのPDFエンジンとしての問題と想定が必要になるので、そのメーカーへの問合せになります。

    PDFの仕様としてはCID to Unicodeなどの処理はありますが、それもPDFファイルに依存するので、

    生成元次第でしかない、というのが実際のところです。

    またMS明朝にはバージョンがありますし、PDFの生成方法次第では同一と認識でないことはあります。

    これもPDF生成時としての話も含まれることになってきますが、

    利用しているフォントバージョン等も踏まえての対応は欠かせないところです。

    (MS明朝はfonts.comあたりからの購入か何かでしょうか)

    ただし繰り返しになりますが、表示として確実なのはフォントは埋め込みすることです。

    これだけは確実性の担保という意味ではそれしか方法がありません。