چگونگی پرینت محتوای آبجکت html browser

شروع موضوع توسط dalirnet ‏29 مارس 2014 در انجمن Flash builder / flex

کلمات کلیدی:
  1. dalirnet

    dalirnet New Member

    ارسال‌ها:
    1
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    سلام خدمت تمامی عزیزان / وقت بخیر

    اول:
    برای پرینت گرفتن از محتوای یک صفحه html چه راههایی هست؟
    دوم:
    اگر قرار باشه از دستور
    [JSS]window.print();[/JSS]
    ولی به دلایلی این دستور کار نکنه >> اون وقت باید چیکار کرد؟

    اصل سوال

    تو ایر / فلش بیلدر از آبجکت html browser استفاده کردم و تا اینجای کار مشکل حادی باهاش نداشتم الا اینکه دستوراتی از قبیل دانلود و پرینت در این بروزر اجرا نمیشه
    یعنی دیالوگ پرینت و دیالوگ دانلود باز نمیشه / مطلقا

    پس از تحقیقات زیادی که کردم متوجه شدم که دستور print جاوا اسکریپت رو باید براش قابل فهم کرد، این کار رو براش انجام دادم طبق نمونه زیر :
    اضافه کردن کتابخانه خود ایر تو پروژه و ساخت یه دستور مساوی با پرینت :

    فایل نمونه :
    [HTMLS]<html>
    <head>
    <title>AIR Print Test</title>
    <script src="AIRAliases.js" type="text/javascript"></script>
    <script src="printing-air.js" type="text/javascript">
    </script>
    </head>
    <body style="border: 5px double grey;margin:20px 20px 20px 20px;background-color:#333;color:#fff;">
    <div style="margin: 20px 20px 20px 20px;">
    <h1> AIR - Printing from HTML / Javascript </h1>
    <p>Sample Text: The Sprite class is a basic display list building block:
    a display list node that can display graphics and can also
    contain children.</p>
    <p style="text-align:center;">
    <!-- point to any png here -->
    <img src="deskworld.png" />
    </p>

    <input type="button" value="Print" onClick="window.print()"/>
    <input type="button" value="Exit" onClick="window.nativeWindow.close()"/>
    </div>
    </body>
    </html>[/HTMLS]
    [HR][/HR]فایل دستور مساوی با پرینت :
    [JSS]function doPrintAir()
    {
    var pjob = new window.runtime.flash.printing.PrintJob;
    if ( pjob.start() )
    {
    var poptions = new window.runtime.flash.printing.PrintJobOptions;
    poptions.printAsBitmap = false;
    pjob.selectPaperSize('A4');
    try
    {
    pjob.addPage(window.htmlLoader, null, poptions);
    pjob.send();
    }
    catch (err)
    {
    alert("exception: " + err);
    }
    }
    else
    {
    alert("PrintJob couldn't start");
    }
    }
    //comment the line below if you do not want to mess with existing
    //window.print
    window.print = doPrintAir;[/JSS]
    [HR][/HR]تا اینجایه کار همه چی خوب بود / با این روش دیالوگ پرینت باز میشه و به روش printjob که به نظرم خیلی مسخره هستش کار میکنه
    اما یه مشکل داره و اونم اینه که این روش فقط تو لوکال پروژه جواب میده یعنی این فایلها باید درون خود پروژه فلکس باشه ، در صورتی که بنده قصد دارم تو صفحه اینترنتی که این بروزر باز میکنه دستور پرینت بدم!!!!؟؟؟؟؟

    امید وارم درست تونسته باشم سوالم رو منتقل کنم
    در غیر این صورت بفرماید تا دقیق تر توضیح بدم.

    دوستان عذر خواهم ولی خواهشن نظریه ندین
    ممنون از تمام دوستان
     
    آخرین ویرایش: ‏29 مارس 2014
    نوشته شده توسط dalirnet در ‏29 مارس 2014

به اشتراک بگذارید