[サンプルコード]
/*******************************************************************
サーバ"printserver"から"/xxx"にあるBiz/PrintServerや
PrintStream Coreのスプールファイルをダウンロードして
プレビューする例
********************************************************************/
/* httpDownloadを使いPrintServerのスプールファイルをダウンロード */
PrintStreamDocument PrintStreamDocument1 {
if ( !$DESIGNTIME ) {
var down = new httpDownload("http://printserver");
append (down, "httpDownload1");
/* httpDownloadのイベントをその親であるPrintStreamDocumentで処理。
この処理が終了するまでダウンロードは一時停止 */
Function OnAsyncDownload(e) {
/* ダウンロードが成功したら
そのレスポンスをExtractの引数にする */
if ( e.response.status == 200 ) {
var rc = Extract(e.response);
/* スプールファイルの最後のファイルをExtractしたら
ダウンロードを終了 */
if ( rc.status == 0 ) {
httpDownload1.Stop();
/* PreviewFormにこれ以上のページ追加は無いことを通知 */
^.Button1.Active = true;
^.PreviewForm1.EndPage();
} else {
var from = rc.from;
if ( rc.from == 0 ) {
/* プレビューを開始 */
^.PreviewForm1.StartPage(this);
from++;
}
for ( var i = from; i <= rc.to; i++ ) {
/* 表示するページを指定 */
^.PreviewForm1.AddPage(i);
}
}
} else {
/* エラーの場合はダウンロードを終了 */
httpDownload1.Stop();
^.Button1.Active = true;
}
}
}
}
Button Button1 {
X = 0;
Y = 0;
Width = 80;
Height = 30;
Title = "ダウンロード";
active = true;
Function OnTouch(e) {
/* ダウンロードするファイル数がわかっている場合はtoも指定 */
^.PrintStreamDocument1.httpDownload1.AddURL("/xxx/00000[001-].pss");
/* ダウンロードをスタート */
^.PrintStreamDocument1.httpDownload1.Start();
active = false;
}
}
/* PreviewFormでプレビュー */
PreviewForm PreviewForm1 {
}
CRSファイル形式のサンプルを
「PSSプレビューサンプル(Psp_003.zip)」
よりご利用いただけます。
また、上記とは別のサンプルもご利用いただけます。
実装方法の案としてご参考ください。
●PrintStreamDocumentクラスのExtractPageイベントが発生するタイミングで
AddPageメソッドを実行し、プレビューするサンプル
「PSSプレビュー ExtractPage利用サンプル(Psp_003_A.zip)」
●PrintStreamDocumentクラスのPrintDocumentメソッドにてプレビューウィンドウを
起動してプレビューするサンプル
「PSSプレビュー PrintDocument利用サンプル(Psp_003_B.zip)」
|