私は最近、Adobe Airで表示していたPDFで印刷機能を呼び出す方法を探していました。この仲間の助けを借りて、この問題を解決し、PDF でpostMessageを次のように呼び出しました。
//this is the HTML I use to view my PDF
<object id="PDFObj" data="test.pdf" type="application/pdf"/>
...
//this actionscript lives in my air app
var pdfObj:Object = htmlLoader.window.document.getElementById("PDFObj");
pdfObj.postMessage([message]);
私はJavaScriptでもこれを試しました.Adobeが忍び込んで私を助けていないことを確認するためです...
var obj = document.getElementById("PDFObj");
obj.postMessage([message]);
JavaScript と ActionScript でうまく機能します。
MDCが postMessage について何と言っているか調べてみましたが、window.postMessage しか見つかりませんでした。
これで、コードは魔法のように機能し、postMessage は魔法のようにメッセージを PDF に埋め込まれた JavaScript に送信します。ただし、これをどのように行っているかはまだわかりません。
Adobe がこの方法について話しているのを見つけましたが、実際には説明していません。
HTML-PDF 通信の基本
HTML ページ内の JavaScript は、PDF コンテンツを表す DOM オブジェクトの postMessage() メソッドを呼び出すことによって、PDF コンテンツ内の JavaScript にメッセージを送信できます。
これがどのように達成されるかについてのアイデアはありますか?