پرینت یک externl swf بدون لود swf

moonch

Member
سلام به همه
من یک فایل فلش دارم که در اون دکمه گذاشتم که با کلیک کردنش قراره از یک swf بیرونی پرینت بگیره. بدون اینکه اون swf لود بشه. یعنی بعد فشردن دکمه تنها چیزی که می بینیم فقط پنجره پرینت هست. مشکل من اینه که نمی دونم چرا با اینکه swf من چند صفحه هست فقط صفحه اولش پرینت گرفته می شه؟این موضوع می تونه مربوط به نرم افزاری باشه که باهاش pdf رو به swf تبدیل کردم؟


کدهای بکار برده شده اینها هستن:


[CSS]

stop();
var loader:Loader;
loader = new Loader();
btn.addEventListener(MouseEvent.CLICK, go1);
trace(loader.width)
function go1(e:Event):void
{


loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);
loader.load(new URLRequest("6-1.swf"));

//addChild(loader);



function onLoaded(e:Event):void
{
var pj:printJob = new PrintJob();
if(pj.start()) {
var sprite:Sprite = new Sprite();
sprite.addChild(loader);
pj.addPage(sprite);
pj.send();
}
}

}



[/CSS]
 

Arash-zr

Member
علتش اینه که اکشن اون رو بصورت یک اسپرایت در نظر میگیره و بعد ازش خروجی میگیره
شما باید تعیین کنید که بعد از دول شدن به فلان فریم خاص بره و بعد دستور پرینت رو بهش بدید
یا اینکه برای هر صفحه یک فایل swf در نظر بگیرید ،که البته این زیاد اصولی نیست!
 

moonch

Member
کاری که گفتین رو انجام دادم. تو فریم یک این کدها رو گذاشتم
[CSS]

stop();
var loader:Loader;
loader = new Loader();

//addChild(loader);
btn.addEventListener(MouseEvent.CLICK, go1);

function go1(e:Event):void
{


loader.load(new URLRequest("6-1.swf"));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);

gotoAndStop(2);



}


[/CSS]

فریم 2 هم اینها رو

[CSS]

function onLoaded(e:Event):void
{

//var pageCount:Number = 0;
var pj:printJob = new PrintJob();


if(pj.start()) {
var sprite:Sprite = new Sprite();
sprite.addChild(loader);
pj.addPage(sprite);
pj.send();
}
}
[/CSS]



اما بازهم از صفحه اول پرینت می گیره
 
آخرین ویرایش:

Arash-zr

Member
کد:
if (MovieClip(loader).currentFrame==2) {
    if (pj.start()) {
        var sprite:Sprite = new Sprite();
        sprite.addChild(loader);
        pj.addPage(sprite);
        pj.send();
    }
} else {
    loader.gotoAndStop(2);
}

فک میکنم این کد مشکل شما رو حل کنه ، البته خودم امتحان نکردم
اینجا یک شرط براش گذاشتم که اگه فایلی که لود شده در فریم مثلا 2 بود بعد پرینت رو انجام بده

امیدوارم کار کنه
 

جدیدترین ارسال ها

بالا