★개발자 노트/ActionScript 3.0

현제 화면을 프린트 해보자

abst 2014. 2. 6. 15:08
반응형

플생사모에


======================================================

제가 화면에 보이는 플래시화면을 인쇄하려고 합니다,

 

화면에 보이는 한 프레임 모두를 바로 인쇄하는 명령이 있나요?

==========================================================


질문이 올라왔내요?


방식은 간단합니다. 먼저 화면을 켑쳐하고 프린트 겍체로 사이즈를 정해서 프린트 해달라고 전달만 하면 됩니다.


PrintJob

BitmapData


print.fla



위에 두곳을 참고 하시면 더욱 자세한 설명이 들어가 있습니다.



var bitM:Bitmap;

var bitMD:BitmapData;

var mtx :Matrix = new Matrix();

var myPrint:PrintJob = new PrintJob();    //프린트 객체 생성

var printMC:MovieClip = new MovieClip;


bitMD = new BitmapData(this.width,this.height);

bitM = new Bitmap(bitMD);

bitMD.draw(this,mtx);



printMC.addChild(bitM);

//printSpr = ;


if(myPrint.start())

{  

//가로세로 비율 조절하기

var tp_ratio:Number = (myPrint.pageWidth/bitMD.width < myPrint.pageHeight/bitMD.height) ? myPrint.pageWidth/bitMD.width : myPrint.pageHeight/bitMD.height; 

printMC.width = bitMD.width * tp_ratio;

printMC.height = bitMD.height * tp_ratio;

 

myPrint.addPage(Sprite(printMC));     //출력할 대상 지정하고

myPrint.send();           //출력해 주세요.라고 알리네요. ^^

 }

 else

 {

new Error("프린터가 준비되지 않았습니다.");

 }



소스 코드를 살펴 보게 되면 미트멥을 만들고 현제 자신을 켑쳐 해서 무비클립 객체에 붙여주고

프린트에게 화면을 출력하도록 전달합니다.



반응형