PDFから貼り付けた文字に混ざる「見えない文字」
PDF・テキスト整形コラム
PDFから貼り付けた単語を検索しても、なぜかヒットしない。
見た目はまったく同じなのに、一致してくれない。
こういうときは、目に見えない文字が混ざっている場合があります。
今回は、その正体をいくつか並べてみます。
ソフトハイフン
行末で単語を分割するときに使われる、条件付きのハイフンです。
折り返しの位置に来たときだけハイフンとして表示され、そうでなければ表示されません。
厄介なのは、表示されていなくても文字としては残っていること。
international の途中にこれが挟まっていると、見た目はそのままなのに、検索では一致しません。
ゼロ幅スペース
幅を持たない空白です。
折り返し位置の指定などに使われるもので、当然ながら目には見えません。
貼り付け先で単語の途中に不自然な折り返しが起きる場合、これが原因のことがあります。
折り返さない空白(NBSP)
見た目は普通の半角スペースですが、別の文字です。
「10 kg」のように、途中で改行させたくない箇所に使われます。
普通のスペースのつもりで検索・置換すると引っかからないので、地味に手間取るところかと思います。
合字
fi や fl のような組み合わせを、1文字の字形にまとめたものです。
組版としては見栄えが良くなるのですが、テキストとして取り出すと1文字の別の文字(fi)になっています。
file で検索しても file は引っかからないので、検索が効かない原因としてはわかりにくい部類かと思います。
分かれた濁点
「が」が「か」+濁点の2文字で構成されている場合があります。
表示は「が」に見えるので、文字数を数えたときに合わない、という形で気づくことが多いところです。
まとめて直す
これらは、貼り付けたテキストをPetaPDFに通せば一度に処理されます。
ソフトハイフンやゼロ幅の類は除去、折り返さない空白は普通のスペースに、合字は fi のような通常の文字に、分かれた濁点は結合します。
ひとつ、あえてやっていない処理があります。
文字コードには「見た目の似た文字をまとめて標準形に直す」正規化の方式(NFKC)があり、これを一発かけると上の問題はまとめて片付きます。
ただ、この方式は範囲が広く、① が 1 に、㈱ が (株) に、全角の英数字が半角に変わります。
資料によっては困る変換なので、PetaPDFでは対象を絞って個別に処理する形にしました。
見えない文字は、原因に見当がつくまでが長い種類の困りごとです。
検索がおかしいときは疑ってみてください。
PDFのコピペ崩れをまとめて整形
PetaPDFなら、貼り付けるだけで改行・スペース・ページ番号の混入をまとめて処理できます。