My PDFファイルにボタンにイベントが添付されています。プログラムでイベントを変更できるようにする必要があります。私はiTextSharpを使ってこの方法を試しましたが、新しいファイルでjavascriptを変更しませんでした。プログラムでPDFファイルのJavaScriptイベントを変更するにはどうすればよいですか?
var pdfReader = original PdfReader(originalPdfDocumentPath);
pdfReader.RemoveUsageRights();
var pdfStamper = new PdfStamper(pdfReader、 )新しいFileStream(newPdfDocumentPath、FileMode.Create、FileAccess.Write、FileShare.None)、 '\ 0'、true);
var originalXml = pdfReader.AcroFields.Xfa.DomDocument.InnerXml;
var newXml = originalXml.Replace( "Table2.Row1.instanceManager.removeInstance(1)"、 "Table2.Row1.removeInstance(this.parent.parent.index)");
pdfStamper.AcroFields.Xfa.DomDocument.InnerXml = newXml; //残念ながら、この行は何もしません。
pdfStamper.Close();
pdfReader.Close();
ご協力いただければ幸いです。
コードの周囲にコードブロックを使用してください。 – Dorian
ボタンに付けられたJavascriptとxfaフォームのxmlは2つの異なるものです。この例は、あなたの道であなたを助けるかもしれません:http://developers.itextpdf.com/content/best-itext-questions-stackoverview/actions-and-annotations/itext7-how-add-onmouseover-javascript-action-textfield –
私が変更する必要があるスクリプトは、XFA内部の動的なフォームの中にあります。私の例では、元のスクリプトが変数originalXmlに表示されます。私が知る必要があるのは、Xfa.DomDocument.InnerXmlをnewXml文字列に置き換える方法です。 –