独自の外字を,検索機能を使ってヒットさせるには

独自の外字を,検索機能を使ってヒットさせるには

- km 55 の投稿
返信数: 6
CIDで指定できる「ハサミの記号」を使った場合は, Adobe Readerの検索機能を使ってキーワードを「ハサミ」とするとヒットしますが,「フォントと外字」で記載されている方法で独自の外字を作った場合は,検索する方法がみつかりませんでした。
tex側で,疑似的に読みを,独自の外字につける対処方法はないでしょうか。

例えば,独自の外字にルビをふりルビをキーワードとして検索するとした場合に,
okumacro の \ruby の機能に追加する機能として,文字の色を白色(または透明)に,表示位置を外字の背景側に移動し,文字サイズをもっと小さくしておくなどと考えていましたが,どこを変更すればいいのか判断できませんでした。この方法がベストかどうかも含めてご指導を頂ければ幸いです。
km 55 への返信

Re: 独自の外字を,検索機能を使ってヒットさせるには

- 奥村 晴彦 の投稿
なるほど,それはいいですね。単に隠し文字を入れるだけなら

\usepackage{color}
\newcommand{\hidden}[1]{\leavevmode\rlap{\color{white}#1}}

でもよさそうですね。
奥村 晴彦 への返信

Re: 独自の外字を,検索機能を使ってヒットさせるには

- km 55 の投稿
ご指導有難うございます。
検索できるようになり満足しています。

ちなみに,スマートではありませんが次のようにして使ってみました。
漢字に例えれば,部首はPDFに,旁は #1 になると思います。

\newcommand{\LRkagi}[1]{{\ooalign{{\raisebox{-0.12zw}{\includegraphics[width=1zw,bb=0 0 100 100]{kagi.pdf}}{\hidden{かぎ}}}\crcr{{\scalebox{0.82}[0.82]{#1}}\hfil}}}}

お手数をおかけしました。

km 55 への返信

Re: 独自の外字を,検索機能を使ってヒットさせるには

- km 55 の投稿
かなり強引な縮小(1zwの標準データがなかったので)ですが

正\raisebox{-0.12zw}{\includegraphics[width=1zw]{tiger.eps}}{\hidden{とらの絵}正正

とした場合,「とら」での検索はできませんでした。
この場合は,「と正ら」での検索はできるようです。

再現できないかも知れませんが \hidden を使う場合には条件があるようです。
参考まで
km 55 への返信

Re: 独自の外字を,検索機能を使ってヒットさせるには

- 奥村 晴彦 の投稿
ひぇー,Adobe Readerは賢いんですね!

Mac OS XのPreviewで検索したら,「とら」は見つかるけれども「と正ら」は見つかりませんでした。

やっぱり白にして背景に置くだけではだめで,ルビのように小さい文字にしてベースラインからずらして他の文字と重ねないようにしてから白にしないといけないのですね。\hidden{} は手抜きでした。

どなたか \ruby{} を改造してちゃんとしたものを作ってください。m(__)m
奥村 晴彦 への返信

Re: 独自の外字を,検索機能を使ってヒットさせるには

- km 55 の投稿
\hidden の使い方を述べよ,という宿題(課題)をだされたのかな? と思っています。
「レポート提出の代わり」の雑感です。

雑感
1) \hidden は,HTML のタグ <a name="***">~</a> と似ている一面もあるようです。
<どこからか呼ばれる(検索される)ための目印(しおり)>

2) \hidden は,#1 への入力を漢字一文字限定とするのが,今のところベストの
ようです。<ひらがな一文字の場合,本文の内容もヒット>

3) 「とら」,「とらの絵」でも検索できる方法がありましたが,たぶん個々に要調整の
ようです。

4) 奥村先生の著書 改訂版5刷 p.79, p.83 の円マークを見ていて思いついた
ものです。ただし,再現性は不明,且つ要調整。

\newcommand{\kasaneru}[2]{{\ooalign{{\hss{\scalebox{0.7}[0.7]{{\color{white}#1}}}\hss}\crcr{#2}}}}
正{\kasaneru{寅}{\includegraphics[width=1zw]{tiger.eps}}正\\
漢字一文字限定。

波及効果(?),簡易版の白抜きマークができそうです。
\newcommand{\kasanerusiro}[2]{{\ooalign{{#1}\crcr{\hss{\scalebox{0.7}[0.7]{{\color{white}#2}}}\hss}}}}
正{\kasanerusiro{\CID{16234}}{寅}}正\\

(ちなみに,\llap ... p.79 は同著書の索引には入っていないようです)

5) \hidden は,今後につながる役割をはたしたと思われる。

6) 今までできなかった検索ができるようになったことに関しては,
個人的に満足のいく結果となった。

-----
何度もお手数をおかけしました。有難うございました。

km 55 への返信

Re: 独自の外字を,検索機能を使ってヒットさせるには

- 奥村 晴彦 の投稿
まとめ,ありがとうございます。

> (ちなみに,\llap ... p.79 は同著書の索引には入っていないようです)

失礼致しました。m(__)m

\llapはKnuthがplain.texで定義した1行マクロ

\def\llap#1{\hbox to\z@{\hss#1}}

です。重ねる方向が逆の

\def\rlap#1{\hbox to\z@{#1\hss}}

もあります。