صفحه نخست
  • درباره من
  • نبی کرمعلی زاده
    • نام: نبي کرمعلي زاده
    • متولد: 1360/11/13
    • محل سکونت: اهواز
    • تحصيلات: مهندس آبياري
    • شغل: طراح وب و برنامه نويس
    • علايق: فقط کامپيوتر و دیگر هیچ !



  • آمار بازديد
    • تعداد آنلاین: 11
    • بازدید امروز: 445
    • بازدید دیروز: 382
    • بازدیـد کــل: 341844
    از تاريخ: 13 بهمن 1385



فورمت PNG پادشاه فورمت های تصویری در خلق صفحات وب
سه شنبه 6 آذر 1386 - 4:48:49 بعد از ظهر
PNG the king !

خیلی ها رو دیده بودم که به عنوان یک طراح وب سایت، جایگاه استفاده از فورمت های مختلف تصویری را در صفحات وب طراحی شده نمیدونستند و نمیدونستند که کجا از چه فورمتی باید استفاده کرد. همیشه میخواستم در این باره بنویسم اما فرصت نمیشد، تا اینکه در [اینجا] به مقاله ای با عنوان "مخفی کردن پس زمینه Transparent عکس های PNG در IE" از دوست خوبم آقا حسین برخورد کردم، و برخی دوستان موضع گرفتند که فورمت png اونقدر ارزش نداره که بخاطر اون دست به هک های IE بزنیم. این موضوع باعث شد که کمی در این باره صحبت کنیم...


به نظر من قابلیت بارز این فورمت یعنی PNG که مخصوصاً طراحان وب رو به سمت خودش جذب کرده ، شیوه ذخیره رنگها به صورت palette است. (دقیقاً مشابه فایلهای GIF با این تفاوت که طیف بیشتری از رنگها رو دربر میگیره)
فایلهای PNG بصورت PNG-8bit و PNG-24bit می باشن. فایلهای PNG-8bit از پالت 256 رنگی استفاده میکنند و قابلیت transparent رو ندارند(درست مثل فایلهای GIF) بر خلاف فورمت PNG-24bit که پالت اون تا 16.7 میلیون رنگ رو در خودش جای میده و همین دامنه وسیع باعث ساپورت اون از تصاویر transparent شده.
توجه داشته باشید که در اینجا transparent به مفهوم شفاف بودن بخشی از تصویر به طوری که زمینه و پشت تصویر نمایان باشد بکار رفته است(حالت شیشه ای) و به معنی حذف بخشی از تصویر و نمایان شدن زمینه بکار نرفته.
در واقع به عقیده من و بر حسب تجربه، هیچ تفاوتی به لحاظ کیفی بین GIF و PNG-8bit وجود نداره یا حداقل من ندیدم.
اما وقتی صحبت از PNG-24bit میشه، اونوقت قضیه خیلی متفاوت میشه. فکر نمیکنم جایگزین دیگه ای برای این فورمت روی وب وجود داشته باشه.
PNG-24bit به دلیل خواصی که عرض شد طبیعتاً حجم بالاتری به نسبت PNG-8bit داره و PNG-8bit هم به نسبت GIF در اغلب موارد حجم کمتری داره.
در واقع اگر خواصی مثل transparent مطرح باشه بهترین (شایدم تنها) گزینه برای وب، علارغم اینکه ممکنه حجم فایل خیلی بالا بره، استفاده از PNG-24bit است.

اجازه بدید کمی بریم به حاشیه...
وقتی از یه دید دیگه به قضیه نگاه کنیم. برای وب غالباً دو فورمت JPG و GIF متداول تر هستند و شاید همین دو فورمت نیاز طراحان وب رو برآورد کنند. اما میدونید که این دو فورمت کاملاً متفاوت هستند، JPG بیشتر برای مناظر ، طبیعت و تصاویری که با جابجایی پیکسل ها تغییر محسوسی که با چشم قابل رویت باشه در تصویر ظاهر نمیشه استفاده میشه. بر خلاف تصاویر GIF که به دلیل ماهیت پالتی بودن و طیف رنگی محدود و ثابت و مشخص، به هیچ عنوان پیکسل ها جابجا نمیشه ! و تنها ممکنه رنگ پیکسل ها عوض بشه. در نتیجه در مورد تصاویری که در اونها از متون، مخصوصاً متون ریز استفاده شده (درست مثل screen shot هایی که از صفحات ویندوز میگیریم) شاید بهترین فورمت GIF باشه. چون خوانایی نوشته ها با جابجایی پیکسل ها از بین نمیره و درواقع جهت کاهش کیفیت با کوچکتر کردن پالت رنگ به نوعی رنگ پیکسل های تصویر تعویض میشود؛ و بدترین فورمت برای اینگونه تصاویر، فورمت JPG باشه. چون برای کاهش حجم ناچاراً نظم برخی پیکسل ها باید بهم بخوره که موجب ناخوانایی نوشته های درون تصویر میشه! وقتی صحبت از تصاویر بر روی یک وب سایت میشه، از اونجایی که خوانایی متون(شامل خطوط و ... هم میشه) از دید یک کاربر عادی بسیار مهم است و نباید چشم اذیت شود، همچنین بایستی تصویر بالاترین کیفیت ممکن را داشته باشد پس اینجاست که فورمت JPG ذاتاً نمیتونه فورمت خوبی باشه، در این جور مواقع ناچاراً از GIF استفاده میشه.

نمونه تصویر JPG
با کاهش کیفیت تصویر JPG نوشته های درون تصویر به سختی خوانده میشوند.

نمونه تصویر GIF
حتی با به حدقل رساندن کیفیت تصویر GIF نوشته های درون تصویر کاملاً خوانا می باشند.

مقایسه فورمت های تصویری رایج وب
مقایسه فورمت های تصویری رایج وب

پاراگراف اخیر در مورد فورمت JPG و GIF بود، اما چه ربطی به بحث ما و PNG داشت؟! همه اینها رو گفتم که به این نقطه برسم که لزوم استفاده از فورمت GIF در جاهای خاص ثابت بشه (که در پاراگراف اخیر ثابت شد) اما گفتیم که فورمت GIF تنها قابلیت استفاده از 256 رنگ را دارد. پس اگر تصویر ما شامل رنگهای بیشتری بود تکلیف چیست؟! اینجاست که ویرایشگرهای تصویر با معادل سازی رنگها، سعی میکنند رنگهایی که به هم نزدیک هستند را در قالب یک رنگ در پالت ذخیره کنند. که طبعاً اینکار باعث میشود که توازن رنگ برهم بخورد و تصویر رنگ واقعی خود را از دست بدهد. (درست به همین سبب بود که عرض کردم برای کاهش کیفیت، رنگ پیکسل ها عوض میشود ولی پیکسلها جابجا نمیشوند.) خب راه حل چیست ؟! تصویر رنگ واقعی خود را از دست داده است، پس میشه به این نتیجه رسید که 256 رنگ برای هر تصویر کافی نیست و باید از فورمت دیگری که مشابه فورمت GIF بر مبنای palette باشد و پیکسل ها جابجا نشود استفاده و از همه مهمتر palette بیشتر از 256 رنگ در اختیار ما قرار دهد استفاده کنیم. اینجاست که فورمت PNG وارد گود میشود که علاوه بر اینکه تمام خواص ذکر شده را دارد و همچنین همونطور که عرض شد پالتی تا 16.7 میلیون رنگ را در اختیار ما میگذارد، بلکه امکان transparent هم در اختیار ما قرار میدهد و درست اینجاست که شاید با من هم عقیده میشوید که احساس میکنیم فورمت PNG پادشاه فورمت های تصویری برای خلق صفحات وب است !!!

این نکته مهم را در نظر داشته باشید که خاصیت transparent تصاویر با فورمت PNG-24bit یا همان شیشه ای بودن آن متاسفانه در Internet Explorer 6 پشتیبانی نمیشود! البته هک هایی برای این منظور وجود دارد که در [این مقاله] و [این مقاله] میتوانید مطالعه کنید.

کلیه مطالب بالا برداشت ها و تجربیات شخصی اینجانب بود و از هیچ منبعی اقتباس نشده است. انشالله که اشکالی در مطالب وجود نداشته باشد. در غیر این صورت در کامنت های همینجا بفرمائید تا تصحیح گردد.


» 14 نظر برای این مطلب ارسال شده است. [نظر خود را ارسال کنيد]
  1. tabib_m@yahoo.com  tabib_m
    سلام
    ممنون بابت مطلب مفیدت.
    سه شنبه 6 آذر 1386 - 5:40:53 بعد از ظهر
  2. http://itline.blogspot.com  زیر خط آی تی
    سلام دوست من خوشحالم از اینکه با یک همشری دیگر که در زمینه اینترنت فعال است آشنا میشم مطمئنا از این به بعد مطالب شما رو از طریق فید پیگیری خواهم کرد
    چهارشنبه 7 آذر 1386 - 12:12:55 بعد از ظهر
  3. araash2001@yahoo.com  آرش
    دوست عزيز ، وبلاگ فوق العاده اي داريد ، در صورت امكان ميخواستم در مورد اينكه آيا ميشه دوتا لپ تاپ رو بصورت بي سيم با هم شبكه كرد ازتون اطلاعاتي بگيرم ، ممنون ميشم اگه منو راهنمايي كنيد .
    جمعه 9 آذر 1386 - 8:39:43 قبل از ظهر
  4. takkrang@gmail.com http://takrang.wordpress.com  تك رنگ
    سلام!
    از مطالب بسيار آموزنده شما ، استفاده نمودم!
    سپاس!
    ضمناً شما را به لينك پيوندهايم افزودم(با اجازه)!
    شنبه 17 آذر 1386 - 2:41:57 بعد از ظهر
  5. http://oxygenws.com/  امید
    ممنون به خاطر مطلبت، فقط چند مورد و چند پیشنهاد :)
    ۱- PNG فقط دو روش برای ذخیره سازی نداره، بلکه ۵ روش داره، که تو سایت ویکیپدیا می تونی ببینی. و با PNG میشه تقریبا در هر دو حالتی که گفتی، رنگ شیشه ای داشت. یعنی جدا از مقادیر قرمز و سبز و آبی، یک مورد برای آلفا هم برای هر رنگ به طور مجزا تو فایل ذخیره میشه.
    اما در GIF هم شما قابلیت بلوری کردن دارید، ولی تفاوت اینجاست که در GIF می تونی بگی فقط فلان رنگ (مثلا) به جای اینکه سیاه باشه، باید بلوری باشه. یعنی به ازای هر رنگ، آلفا نداریم.

    ۲- شاید بهتر باشه در زمان نگارش مطالبت، یک سناریو داشته باشی و عنوان بندی کنی و سپس تحت عنوان ها، یا زیر عنوان ها، شروع به نوشتن کنی.

    موفق باشی
    يکشنبه 25 آذر 1386 - 2:39:30 قبل از ظهر
  6. nabikaz2001_se@yahoo.com http://weblog.nabi.ir  نبی
    آرش> البته که میشه ، ولی به نظرت جای این پرسش اینجا بود؟! در هر صورت شما میتونید از سایت persiannetworks.com کمک بگیرید.

    امید> 1-ممنون از توضیحات خوبت. فقط منظورت رو از حالت بلوری نفهمیدم.
    2- از دوران راهنمایی یه معلم انشاء داشتیم میگفت، انشاتون باید حتماً اول مقدمه داشته باشه، بعد متن و بعد نتیجه گیری، تا نمره بدم! در دوران دبیرستان یه معلم دیگه اومد گفت زیبایی نوشتار به اینه که به یک باره مثلاً از وسط ماجرا شروع بشه و طوری تموم بشه که نتیجه گیری رو خود شنونده انجام بده! من همیشه سبک دوم رو میپسندیدم و شاید به همین دلیل بود که هر هفته زنگ انشاء با وجود محدودیت زمان، همیشه جزو نفراتی بودم که برای خوندن انشاء انتخاب میشدم. همیشه دوست داشتم با یک مطلب جنجالی یکمرتبه نوشتار رو شروع کنم تا خواننده رو میخکوب کنه و به خوندن ادامه اون راغب بشه و به مرور و کم کم خواننده رو به اصل ماجرا بکشونم و نهایتاً با یک پرسش و یک جور ابهام که غالباً عنوان نوشتار رو هم در بر میگیره تمومش کنم! البته شاید این سبک نوشتار بیشتر مطلوب داستان و رمان ها باشه و برای مقالات آموزشی مناسب نباشه ولی خوب من این سبک رو میپسندم.

    از دیگر دوستان که نظر دادند متشکرم
    يکشنبه 25 آذر 1386 - 9:56:22 بعد از ظهر
  7. http://oxygenws.com/  امید
    ۱- منظورم transparent بود. توی PNG هر رنگ توی پالت رنگی، یک مقدار ۲۵۵ تایی برای transparency داره ولی GIF می تونه فقط بگه «فلان رنگ» توی پالت، transparent است و تمام.

    ۲- منظور من دقیقا مقدمه نبود. منظورم عنوان بندی بود. مثلا بنویسی:
    » PNG چیست؟
    » تفاوت های PNG و GIF
    » ...
    یا هر چیز دیگه... و بعدش شروع کنی در اون مورد حرف بزنی. الان اگر یک دور مجدد مطلبت رو بخونی، می بینی که (تقریبا) تو برخی پاراگراف، یه بحث رو مجدد تکرار کردی. مثلا اولای مقاله در مورد transparency حرف زدی، آخر هم مجددا اومدی یه لگدی زدی و رفتی!! چرا این مباحث یک جا نیستند؟؟ (به نظر من دقیقا به این دلیل که ذهن آشفته ات رو با تیتر ها منظم نکردی.)

    موفق باشی.
    شنبه 8 دی 1386 - 6:25:12 قبل از ظهر
  8. http://oxygenws.com/  امید
    میشه ایمیل من رو تو پست قبلی مخفی کنی؟؟
    ممنون.
    شنبه 8 دی 1386 - 6:28:50 قبل از ظهر
  9. nabikaz2001_se@yahoo.com http://weblog.nabi.ir  نبی
    امید>
    در مورد png هم که فرمودید در هر حالت حتی png 256 color برخلاف gif میشه براش آلفا تعریف کرد. من در فتوشاپ خیلی سعی کردم اینکار رو بکنم ولی گزینه ای ندیدم. یعنی فقط مثل gif حالت Transparency یا به قول شما بلوری رو به صورت مطلق میشد تعریف کرد بدون تغییر آلفا. حالا یا فتوشاپ ناتوانه یا بنده! که احتمالاً حالت دوم است!

    اما در حاشیه...
    اگر نمیگی چقدر یه دندس باید بگم که به نظرم انتخاب عنوان جنجالی خواننده رو بیشتر کنجکاو میکنه برای دنبال کردن مقاله، درست مثل تیتر روزنامه ها... البته باز هم با وجود اینگونه تیترهای شاید جنجالی، هیچ اجبار و تاکیدی برای خواندن یا نخواندن وجود نداره، اما حداقلش اینه که کاربر رو کنجکاو به کلیک کردن میکنه.

    در مورد آشفتگی بات موفقم، اینجاست که باید اعتراف کرد، خلق یک مقاله بسیار دشواره، من موضوعات زیادی رو در حد یک جمله یادداشت کردم که درمورد همه اونها بنویسم و حرفهای زیادی هم دارم ولی جمع آوری همه مطالب از هر گوشه یک ذهن آشفته و کنار هم قراردادن اونها با نظمی که شما آموزش دادید بسیار دشواره یا حداقل زمان زیادی رو میطلبه و این دلیلیه که باعث میشه کمتر بنویسم.
    شاید برای هر کدوم از این مقالات پراکنده یک روز وقت صرف شده !

    ایمیل شما هم پنهان شد.
    بازم تشکر از نظرات و انتقادات سازندتون.
    پنجشنبه 13 دی 1386 - 5:14:17 قبل از ظهر
  10. http://oxygenws.com/  امید
    اوپس، خیلی وقت بود اینجا نیومده بودم.

    منظور من دقیقا عنوان موضوعت نبود :) عنوان بندی مطلبت. تیتر گزاری روی مطالبت و پاراگراف هات، این عنوان گذاشتن خیلی به منظم شدن فکرت و هدفمند شدن مطلبت کمک می کنه.

    موفق باشی.
    جمعه 12 بهمن 1386 - 2:11:07 بعد از ظهر
  11. darush_aslani@yahoo.com  dariush
    من تازه شروع کردم و امیدوارم روزی به پای شما برسم
    پنجشنبه 7 شهریور 1387 - 3:45:25 قبل از ظهر
  12. H_T1366@YAHOO.COM  H_T1366
    خوب بود از شما نیز برای کمک کردن ممنونم
    جمعه 17 آبان 1387 - 7:14:13 بعد از ظهر
  13.  تينا
    سلام خدمت شما من سوالي در رابطه با فتوشاپ دارم :اگر بخواهيم از رنگي از تصوير به اندازه ميانگين 3*3 پيكسل نمونه برداري كنيم چه جوري بايد انجام داد اميداورم جوابم را بديد
    لطفا
    جمعه 17 مهر 1388 - 4:23:11 بعد از ظهر
  14. h_naghdi@yahoo.com  نقدي
    با تشكر از مطالب حالب
    مي خواهم بدانم چگونه مي توانم از فتوشاپ يك تصوير با فورمت png , 24bit
    save كنم
    دوشنبه 3 اسفند 1388 - 2:43:47 بعد از ظهر
ارسال نظر
نام:
ایمیل:
وب سایت:
نظر شما:
کد امنيتي:
  کد امنيتي را وارد نمائيد