私は AS3 と AIR でプレゼンテーションに取り組んでおり、個々のスライド (最終的には複数のスライド) を印刷できるようにする必要があります。私はまったくプログラマーではありません。過去に AS2 で少しやったことがありますが、今は AS3 からやり直しています。
私はこのコードから始めました:
print_btn.addEventListener(MouseEvent.CLICK,printContent);
function printContent(evt:MouseEvent) {
var printJob:PrintJob = new PrintJob();
if (printJob.start()) {
if (content_mc.width>printJob.pageWidth) {
content_mc.width=printJob.pageWidth;
content_mc.scaleY=content_mc.scaleX;
}
printJob.addPage(content_mc);
printJob.send();
}
}
これは機能しますが、少し機能不全であり、クリップをリセットしません。
次に、ここに投稿された最終的なコードを試しました: AS3 using PrintJob to print a MovieClip
これをタイムラインにドロップして、いくつかのことを変更するだけで、はるかにうまく機能しました. 少なくとも、印刷ダイアログの起動、サイズ変更、印刷、「クリップのリセット」などに関しては、唯一欠けているのは、印刷されたページの配置が少し改善されることです...そして、マウスイベントを適切に機能させるのに問題があります。この投稿のコードにできるだけ近い設定を試みました。次のようになります。
printSlide12_btn.addEventListener(MouseEvent.CLICK, printMovieClip);
}
function printMovieClip(clip:MovieClip):void {
しかし、これまたは他の何かを機能させることができませんでした。ここではおそらく完全に間違ったことをしているだけだと思いますが、役立つ例が見つからないようです。