2017-06-07 17 views
0

iTextSharpを使用して、読者が知らない単語を含むPDFを生成しています。だから私はこれらの言葉に下線を引いて、(1)ユーザが単語の上にマウスを置いたときに定義がポップアップし、(2)ユーザがポップアップされた定義をクリックすると、定義セクション。iTextSharp - ホバーにテキストを表示

私はこれをオンラインで行うためのコード例を見ていますが、私はリンクがページに表示される場所を知っている必要があります。私の場合は、構造化文書(章と節)単語の位置。

私はそれがPdfAnnotationとLinkを使用していると思われますが、正確な方法を理解することはできません。

テキストが表のセルにあるときにもソリューションが機能する場合、ボーナスポイントが表示されます(そこに問題があるソリューションがあります)。

P.S.いくつかの進捗状況:私は私の定義セクションを作成するとき

、私は私のPDF文書に挑戦単語を追加すると、私はチャンク上)(SetGenericTagを呼び出す

this.Chunks[0].SetLocalDestination("Definitions"); 

を呼び出します。その後、PdfPageEvent.OnGenericTagための私のオーバーライドで()私はこれを行う:

私は必要なものの一部を満たして
PdfAnnotation link = PdfAnnotation.CreateLink(writer, rect, PdfAnnotation.HIGHLIGHT_INVERT, PdfAction.GotoLocalPage("Definitions", false)); 
writer.AddAnnotation(link); 

- 私はそれがドキュメントの定義セクションに私を取る単語をクリックした場合。しかし、あなたが単語の上にマウスを置いたときに現れる定義はまだありません。ここで

+0

あなたは、これは[ポップアップウィンドウをitextsharp注釈から画像やテキストを表示する](https://stackoverflow.comの重複しないことを確認しています/ questions/23968916/pop-up-a-window-from-itextsharp-annotation-to-display-images-and-text)?これは、公式のドキュメント[onMouseOver javaScriptアクションをTextFieldに追加する方法](http://developers.itextpdf.com/question/how-add-onmouseover-javascript-action-textfield)と[How画像とテキストを表示するためのポップアップウィンドウを作成するには?](http://developers.itextpdf.com/question/how-create-pop-window-display-images-and-text) –

+0

公式文書からの2番目のリンクと同じ。私がそのコードを実装すると、Windowsアドビリーダーで自分の言葉にマウスを合わせると標準的な "このコメントにあなたの返信を追加"ポップアップが表示されますが、マウスを動かすと形が変わります。 Macでは同じポップアップですが、マウスを動かすと点滅します。いずれの場合も、それをクリックして定義セクションにジャンプするオプションはありません。 –

+0

公式ドキュメントの最初のリンクからコードを実装すると、単語の上にカーソルを置くと何も起こりません。単語とテキストフィールドがページの同じ場所に表示されます。 –

答えて

0

は私が思い付いたものです:

PushbuttonField button = new PushbuttonField(writer, rect, "DefineButton-" + (++NumButtons)); 
PdfFormField field = button.Field; 
field.Action = PdfAction.GotoLocalPage("Definitions", false); 
field.UserName = definition; 
writer.AddAnnotation(field); 
+0

もちろん、Macプレビューアプリはツールチップを表示しません。一口。 –

関連する問題