aliamel
کاربر فعال
بررسی و تشخیص وضعیت نصب آدوب ریدر
با سلام خدمت دوستان عزیز
آموزشی که در ادامه مطالعه خواهید کرد در خصوص کار با اسناد PDF می باشد . در این آموزش به یک سری نکات که می بایست قبل از بارگذاری سند PDF رعایت شود اشاره می گردد .
امید است خواننده گرامی با بهره گیری از این آموزش هر چند کوتاه بتواند عملیات پیشرفته و متنوعی را با این قبیل اسناد انجام دهد .
مقدمه :
بسیاری اوقات که مشغول انجام پروژه ای با نرم افزار فلش هستیم این مورد در ذهنمان تداعی می شود :
چگونه این پروژه را حرفه ای تر و بهینه تر انجام دهم ؟ اکثر فلش کاران حرفه ای جهت تضمین امنیت فایل هایی که می سازند و نیز به دلیل افزایش کارایی پروژه اقدام به بار گذاری دینامیک این اسناد (SWF) می کنند .
از طرف دیگر برخی از فلش کاران نیز ایده های جدیدی در ذهن خود دارند . برای مثال ممکن است با خود بگویند : حالا که می توان اسناد SWF را در برنامه بارگذاری کرد آیا امکان دارد که بتوان اسنادی با فرمت های دیگر هم چون PDF و HTML و ... را نیز بارگذاری نمود ؟
پاسخ سوال فوق آری است . به لطف Adobe Flash API’s امکان بار گذاری اسنادی چون PDF و HTML و MP3 و ... مقدور می باشد .
در آموزشی که تدارک دیده ام به ضروریات ونکات مهم در خصوص بارگذاری سند PDF در AIR می پردازم .
هنگامی که بخواهیم سند PDF مورد نظری را در برنامه لود کنیم حتما باید پلاگین Adobe Reader را روی سیستم خود نصب کرده باشیم. علت این امر آن است که پلاگین Adobe Reader در موتور Webkit موجود در AIR تعبیه نشده است و بنابراین شرط لازم جهت ترجمه (Render )این قبیل اسناد ٬نصب بودن Adobe Reader است .
کلاسی که جهت این مهم استفاده می شود کلاسی ست به نام HTMLLoader . با استفاده از پراپرتی pdfcapability از کلاس فوق می توان بررسی کرد که آیا اپلیکشن قادر است اسناد PDF را به درستی ترجمه کند یا خیر ؟
مقدار برگشتی پراپرتی مذکور یک مقدار عددی می باشد . در صورتی که اپلیکشن نتواند از اسناد PDF استفاده کند خطایی را تولید خواهد نمود .
هم چنین کلاس HTMLPDFCapability ثابت هایی را به منظور امکان سنجی مقدار ممکن از پراپرتی pdfCapability تعریف می کند . این ثابت ها به قرار زیر هستند :
STATUS_OK:
بدین معناست که پلاگین Adobe Reader نصب می باشد و شی ای از نوع HTMLLoader قادر است PDF را لود کند.
ERROR_INSTALLED_READER_NOT_FOUND:
بدین مفهوم است که پلاگین Adobe Reader نصب نبوده و بنابراین امکان بارگذاری اسناد PDF در برنامه مقدور نمی باشد.
ERROR_INSTALLED_READER_TOO_OLD:
این پراپرتی به معنی آن است که نسخه نصب شده Adobe Reader قدیمی بوده (پایین تر از 8) و بنابراین برنامه قادر نیست تا سند PDF را لود نماید .
ERROR_PREFERRED_READER_TOO_OLD:
چند نسخه از Adobe Reader در سیستم نصب شده است و چون نسخه پیش فرض جهت باز کردن اسناد PDF نسخه ای پایین تر از 8 است بنابراین امکان لود سند ممکن نیست .
اکنون جهت واضح تر شدن مطالب فوق به ذکر یک مثال می پردازم .
1- یک سند فلش (AIR) در ابعاد 70*300 پیکسل ایجاد کرده و یک Label به همراه یک TextInput برروی استیج قرار دهید .
2- مقدار لیبل کامپوننت Label را “PDF Status” و نام TextInput را با lbl_status مقدار دهی کنید .
3- میزان پهنای lbl_status را 300 و ارتفاع آن را 25 در نظر گرفته و رنگ پس زمینه استیج را به دلخواه تنظیم کنید .
4- سند را در پوشه مورد نظر ذخیره نمایید .
5- یک سند اکشن اسکریپت با نام pdf_status ایجاد و آنرا در مکانی که سند فلش واقع شده ذخیره کنید .
6- کد زیر را در سند .as درج کنید .
7- جهت برقراری ارتباط دو سندی که ایجاد کردید٬ به سند فلش بازگشته و در کادر Class از پانل Properties عبارت " pdf_status" را وارد کنید .
8- مجددا هر دو سند را ذخیره (Save) کرده و خروجی AIR را ایجاد کنید. (File >Adobe AIR2 Settings)
در انتها خروجی AIR ایجاد شده را نصب نمایید .
در زیر به توضیح مختصر بعضی از قسمت های مهم کد می پردازم:
کلاس HTMLLoader :
کلاسی که یک نوع DisplayObject را به منظور نگه داری اطلاعات HTML تعریف می کند . این کلاس هم چنین بر اطلاعاتی که نیاز دارید تا از صفحات وب بارگذاری کنید مدیریت می کند .به طور ساده تر می توان گفت جهت نمایش صفحات وب ٬ اسناد PDF و نظایر آن در اپلیکشن از این کلاس استفاده می گردد .
در کانسترکتور (سازنده) برنامه بایستی جهت تفکیک حالات 4 گانه وضعیت نصب AdobeReader ٬ از دستور شرطی Switch استفاده کنیم :
اکنون بررسی می کنیم که مقدار عددی برگشتی چه مفهومی دارد . مفهوم این عدد را توسط پراپرتی های موجود در HTMLPDFCapability در قالب Case های جداگانه بررسی می کنیم (توجه داشته باشید پراپرتی های HTMLPDFCapability مقدار Int بر می گردانند) :
و در نهایت با توجه به هر حالت مقدار lbl_status را متناسب با آن تنظیم می کنیم .
تذکر : برنامه را در محیط فلش اجرا نکنید . زیرا پیغام نادرستی را در خروجی نشان خواهد داد . بهتر است خروجی AIR را نصب و اجرا نمایید.
با سلام خدمت دوستان عزیز
آموزشی که در ادامه مطالعه خواهید کرد در خصوص کار با اسناد PDF می باشد . در این آموزش به یک سری نکات که می بایست قبل از بارگذاری سند PDF رعایت شود اشاره می گردد .
امید است خواننده گرامی با بهره گیری از این آموزش هر چند کوتاه بتواند عملیات پیشرفته و متنوعی را با این قبیل اسناد انجام دهد .
مقدمه :
بسیاری اوقات که مشغول انجام پروژه ای با نرم افزار فلش هستیم این مورد در ذهنمان تداعی می شود :
چگونه این پروژه را حرفه ای تر و بهینه تر انجام دهم ؟ اکثر فلش کاران حرفه ای جهت تضمین امنیت فایل هایی که می سازند و نیز به دلیل افزایش کارایی پروژه اقدام به بار گذاری دینامیک این اسناد (SWF) می کنند .
از طرف دیگر برخی از فلش کاران نیز ایده های جدیدی در ذهن خود دارند . برای مثال ممکن است با خود بگویند : حالا که می توان اسناد SWF را در برنامه بارگذاری کرد آیا امکان دارد که بتوان اسنادی با فرمت های دیگر هم چون PDF و HTML و ... را نیز بارگذاری نمود ؟
پاسخ سوال فوق آری است . به لطف Adobe Flash API’s امکان بار گذاری اسنادی چون PDF و HTML و MP3 و ... مقدور می باشد .
در آموزشی که تدارک دیده ام به ضروریات ونکات مهم در خصوص بارگذاری سند PDF در AIR می پردازم .
هنگامی که بخواهیم سند PDF مورد نظری را در برنامه لود کنیم حتما باید پلاگین Adobe Reader را روی سیستم خود نصب کرده باشیم. علت این امر آن است که پلاگین Adobe Reader در موتور Webkit موجود در AIR تعبیه نشده است و بنابراین شرط لازم جهت ترجمه (Render )این قبیل اسناد ٬نصب بودن Adobe Reader است .
کلاسی که جهت این مهم استفاده می شود کلاسی ست به نام HTMLLoader . با استفاده از پراپرتی pdfcapability از کلاس فوق می توان بررسی کرد که آیا اپلیکشن قادر است اسناد PDF را به درستی ترجمه کند یا خیر ؟
مقدار برگشتی پراپرتی مذکور یک مقدار عددی می باشد . در صورتی که اپلیکشن نتواند از اسناد PDF استفاده کند خطایی را تولید خواهد نمود .
هم چنین کلاس HTMLPDFCapability ثابت هایی را به منظور امکان سنجی مقدار ممکن از پراپرتی pdfCapability تعریف می کند . این ثابت ها به قرار زیر هستند :
STATUS_OK:
بدین معناست که پلاگین Adobe Reader نصب می باشد و شی ای از نوع HTMLLoader قادر است PDF را لود کند.
ERROR_INSTALLED_READER_NOT_FOUND:
بدین مفهوم است که پلاگین Adobe Reader نصب نبوده و بنابراین امکان بارگذاری اسناد PDF در برنامه مقدور نمی باشد.
ERROR_INSTALLED_READER_TOO_OLD:
این پراپرتی به معنی آن است که نسخه نصب شده Adobe Reader قدیمی بوده (پایین تر از 8) و بنابراین برنامه قادر نیست تا سند PDF را لود نماید .
ERROR_PREFERRED_READER_TOO_OLD:
چند نسخه از Adobe Reader در سیستم نصب شده است و چون نسخه پیش فرض جهت باز کردن اسناد PDF نسخه ای پایین تر از 8 است بنابراین امکان لود سند ممکن نیست .
اکنون جهت واضح تر شدن مطالب فوق به ذکر یک مثال می پردازم .
1- یک سند فلش (AIR) در ابعاد 70*300 پیکسل ایجاد کرده و یک Label به همراه یک TextInput برروی استیج قرار دهید .
2- مقدار لیبل کامپوننت Label را “PDF Status” و نام TextInput را با lbl_status مقدار دهی کنید .
3- میزان پهنای lbl_status را 300 و ارتفاع آن را 25 در نظر گرفته و رنگ پس زمینه استیج را به دلخواه تنظیم کنید .
4- سند را در پوشه مورد نظر ذخیره نمایید .
5- یک سند اکشن اسکریپت با نام pdf_status ایجاد و آنرا در مکانی که سند فلش واقع شده ذخیره کنید .
6- کد زیر را در سند .as درج کنید .
7- جهت برقراری ارتباط دو سندی که ایجاد کردید٬ به سند فلش بازگشته و در کادر Class از پانل Properties عبارت " pdf_status" را وارد کنید .
8- مجددا هر دو سند را ذخیره (Save) کرده و خروجی AIR را ایجاد کنید. (File >Adobe AIR2 Settings)
در انتها خروجی AIR ایجاد شده را نصب نمایید .
در زیر به توضیح مختصر بعضی از قسمت های مهم کد می پردازم:
کلاس HTMLLoader :
کلاسی که یک نوع DisplayObject را به منظور نگه داری اطلاعات HTML تعریف می کند . این کلاس هم چنین بر اطلاعاتی که نیاز دارید تا از صفحات وب بارگذاری کنید مدیریت می کند .به طور ساده تر می توان گفت جهت نمایش صفحات وب ٬ اسناد PDF و نظایر آن در اپلیکشن از این کلاس استفاده می گردد .
در کانسترکتور (سازنده) برنامه بایستی جهت تفکیک حالات 4 گانه وضعیت نصب AdobeReader ٬ از دستور شرطی Switch استفاده کنیم :
PHP:
switch (HTMLLoader.pdfCapability)
که مقدار برگشتی آن از نوع Int می باشد .
اکنون بررسی می کنیم که مقدار عددی برگشتی چه مفهومی دارد . مفهوم این عدد را توسط پراپرتی های موجود در HTMLPDFCapability در قالب Case های جداگانه بررسی می کنیم (توجه داشته باشید پراپرتی های HTMLPDFCapability مقدار Int بر می گردانند) :
PHP:
case HTMLPDFCapability.STATUS_OK:
و در نهایت با توجه به هر حالت مقدار lbl_status را متناسب با آن تنظیم می کنیم .
تذکر : برنامه را در محیط فلش اجرا نکنید . زیرا پیغام نادرستی را در خروجی نشان خواهد داد . بهتر است خروجی AIR را نصب و اجرا نمایید.
مطالب فوق همان طور که پیش تر نیز اشاره شد مقدمه ای بود جهت انجام عملیات مختلف برروی اسناد PDF (از جمله نمایش سند در برنامه و ... که نمونه های متنوعی را در وب می توان ایافت) .سایر این عملیات را بر عهده خواننده می گذارم . امیدوارم این آموزش مفید واقع شده باشد.
موفق و پیروز باشید !