2016-08-05 7 views
0

私はWinformsにPdfNet(C#)を使用しています。PdfNet readonly注釈は読み取り専用ではありません

私はテキストに下線を引くことができるようにしたいので、私はこのようなアンダーライン注釈 作成:

Annot underlineAnnot = Annot.Create(m_document, Annot.Type.e_Underline, rect) 
underlineAnnot.SetFlag(Annot.Flag.e_read_only); 

このページによると、それは読み取り専用注釈を移動することはできません。https://www.pdftron.com/pdfnet/docs/PDFNet/html/T_pdftron_PDF_Annot_Flag.htm

をしかし、ツールモードe_annot_editで移動すると、実際に移動します。

注釈をマウスイベントに反応させないようにするにはどうすればいいですか?

+0

を作成するときにコールバックを登録するには、あなたがNugetからこのパッケージをダウンロードしたことがありますか?もしそうなら、あなたはプロジェクトのURLを投稿して、私も同様に試してあなたに答えを得ようとすることができますか? –

+0

私を助けようとしているThxだが、それは私のものではないので、プロジェクトを共有するのはちょっと難しい。 – PrisonMike

答えて

1

現在、ビューアは読み取り専用を強制していません。

これはあなた自身で簡単に行うことができます。

次の署名を使用してデリゲートメソッドを作成します。

return false to allow editing, otherwise return true 
public bool edit_annot_proc(Annot annot, object obj) 
{ 
    return annot.GetFlag(Annot.Flag.e_read_only); 
} 

あなたはPDFViewCtrlオブジェクト

mypdfviewctrl.SetAnnotationEditPermissionHandler(edit_annot_proc, null); 
+0

ありがとうございますが、私は現在、このメソッドを含まない5.1バージョンを使用しています。アップグレードせずにこれを行う方法はありますか? – PrisonMike

+0

この場合、PDFViewCtrlクラスをサブクラス化し、OnMouse [Up | Down]イベントをオーバーライドし、デフォルト動作を許可しない場合はbase.OnMouseUp(e)の呼び出しをスキップします。 PDFViewTestサンプルのMyPDFView.cs OnMouseUpを参照してください。 – Ryan

+0

私は本当にそれをスキップしたくない、いくつかの注釈は私のプロジェクトで無視する必要があります。注釈が無視されるべき別の注釈と重なる場合、重複する注釈だけがツールモードe_annot_editで選択されるべきである。更新することなくこれを達成するのはちょっと難しいですが、更新は私のプロジェクトのオプションではありません – PrisonMike

関連する問題