私は自分のアプリケーションでWinJSを使用し、いくつかのコンテンツを印刷しようとしています。このチュートリアルのhttps://dzone.com/articles/windows-8-print-contract-%E2%80%93に従ってプリンタクラスを作成しました。WinJSのカスタムカスタムオブジェクトから印刷機能
function registerForPrintContract(participiantData) {
var printManager = Windows.Graphics.Printing.PrintManager.getForCurrentView();
printManager.addEventListener("printtaskrequested", onPrintTaskRequested, false);
}
function onPrintTaskRequested(printEvent) {
var printTask = printEvent.request.createPrintTask("Print Example", function (args) {
printCurrentPage(args);
printTask.oncompleted = onPrintTaskCompleted;
});
}
function printCurrentPage(args) {
var docHtml = document.createDocumentFragment();
docHtml.appendChild(createDocumentContent());
args.setSource(MSApp.getHtmlPrintDocumentSource(docHtml));
}
function createDocumentContent() {
var container = document.createElement("div");
container.innerHTML = "<h2>" + firstname + " " + lastname + "</h2>" +
"<h4>" + emailaddress1 + "<h4>";
return container;
}
function showPrintUI() {
Windows.Graphics.Printing.PrintManager.showPrintUIAsync();
}
私の問題は、オブジェクトデータをcreateDocumentContent()関数に転送する方法がわかりません。この例では、私はファーストネーム、ラストネーム、およびEメールを入れました。それらのデータ私はhtmlページから得ることができない私はそれらを印刷ボタンをクリックして送信する必要があります。
私が見たすべての例は、現在のページを印刷するか、またはDOMを照会してHTMLページから取得できるデータから新しいコンテンツを作成することです。カスタムオブジェクトを送信できる例はありません。 これを行う最善の方法は何ですか?