আমি যদি কোনও চিত্রকে (jpg বা png) বেস 64 এ রূপান্তর করি তবে এটি কি আরও বড় হবে, না এর আকারও একই হবে? আর কত বড় হবে?
আমার ওয়েবসাইটে বেস 64 এনকোডযুক্ত চিত্রগুলি ব্যবহার করার পরামর্শ দেওয়া হচ্ছে?
আমি যদি কোনও চিত্রকে (jpg বা png) বেস 64 এ রূপান্তর করি তবে এটি কি আরও বড় হবে, না এর আকারও একই হবে? আর কত বড় হবে?
আমার ওয়েবসাইটে বেস 64 এনকোডযুক্ত চিত্রগুলি ব্যবহার করার পরামর্শ দেওয়া হচ্ছে?
উত্তর:
এটি প্রায় 37% বড় হবে:
খুব মোটামুটিভাবে, বেস64-এনকোডেড বাইনারি ডেটার চূড়ান্ত আকারটি মূল ডেটার আকারের 1.37 গুনের সমান
কখন 6464 এনকোড করতে হবে এবং কখন ডেভিড ক্যালহাউনের কাছে নয় সে সম্পর্কে একটি সত্যিকারের সহায়ক ওভারভিউ ।
বুনিয়াদি উত্তর = জিজেপড বেস 64 এনকোডযুক্ত ফাইলগুলি ফাইলের আকারের সাথে প্রায়শ স্ট্যান্ডার্ড বাইনারি (jpg / png) এর সাথে তুলনাযোগ্য। Gzip'd বাইনারি ফাইলগুলির একটি ছোট ফাইল আকার থাকবে।
রেষ্টুরেন্ট এবং মোবাইল = আছে এনকোডিং এবং আপনার ইউআই আইকন gzipping, ইত্যাদি কিছু সুবিধা, কিন্তু অপরিণামদর্শী বড় ইমেজ জন্য এই কাজ করতে।
এটি বেস 64 এ আরও বড় হবে।
বেস 64 ডেটা এনকোড করতে বাইট প্রতি 6 বিট ব্যবহার করে, বাইনারি প্রতি বাইটে 8 বিট ব্যবহার করে। এছাড়াও, বেস 64 এর সাথে সামান্য প্যাডিং ওভারহেড রয়েছে। সমস্ত বিট বেস 64 এর সাথে ব্যবহার করা হয় না কারণ এটি সিস্টেমে বাইনারি ডেটা এনকোড করার জন্য প্রথম স্থানে তৈরি হয়েছিল যা কেবলমাত্র বাইনারি-ডেটা সঠিকভাবে প্রক্রিয়া করতে পারে।
এর অর্থ হ'ল এনকোডযুক্ত চিত্রটি প্রায় 25% বড়, প্যাডিংয়ের জন্য ধ্রুবক ওভারহেড হবে।
বেস 64 এ কোনও চিত্র এনকোডিং করা এটি প্রায় 30% বড় করে তুলবে।
ডেটা ইউআরআই স্কিম সম্পর্কে উইকিপিডিয়া নিবন্ধে বিশদটি দেখুন , যেখানে এটি উল্লেখ করেছে:
বেস 64-এনকোডড ডেটা ইউআরআইগুলি তাদের বাইনারি সমতুল্যের চেয়ে আকারে 1/3 বড়। (তবে, যদি এইচটিটিপি সার্ভার জিজিপ ব্যবহার করে প্রতিক্রিয়াটি সংকুচিত করে তবে এই ওভারহেডটি কমিয়ে ২-৩% করা হয়েছে)
উত্তরটি: এটি নির্ভর করে।
যদিও বেস 64-চিত্রগুলি বৃহত্তর, সেখানে কয়েকটি শর্ত যেখানে বেস 64 আরও ভাল পছন্দ।
বেস 64-চিত্রের আকার
বেস 64 64 টি বিভিন্ন অক্ষর ব্যবহার করে এবং এটি 2 ^ 6। সুতরাং বেস64 8 বিট অক্ষর প্রতি 6 বিট সঞ্চয় করে। সুতরাং অনুপাতটি রূপান্তরিত ডেটা থেকে বেস 64 এর ডেটাতে 6/8। এটি কোনও সঠিক গণনা নয়, তবে মোটামুটি অনুমান।
উদাহরণ:
একটি 48kb চিত্রের প্রায় 64kb বেস 64 রূপান্তরিত চিত্র হিসাবে প্রয়োজন।
গণনা: (48/6) * 8 = 64
লিনাক্স সিস্টেমে সাধারণ সিএলআই ক্যালকুলেটর:
$ cat /dev/urandom|head -c 48000|base64|wc -c
64843
বা একটি ছবি ব্যবহার:
$ cat my.png|base64|wc -c
বেস 64-চিত্র এবং ওয়েবসাইট
এই প্রশ্নের উত্তর দেওয়া আরও অনেক কঠিন। সাধারণভাবে বলতে গেলে, বেস 64 ব্যবহার করে ইমেজটি যত কম তত কম। তবে নিম্নলিখিত বিষয়গুলি বিবেচনা করুন:
যদি আপনি বেস 64 এনকোডড চিত্র ব্যবহার করতে চান তবে এটি অবশ্যই আপনার আরও স্থান এবং ব্যান্ডউইথের জন্য ব্যয় করবে। তবে আপনার সাইটে যদি অনেক ছোট চিত্র থাকে তবে আপনি আপনার চিত্রগুলি বেস 64 এ এনকোড করে এবং এইচটিএমএল এ রেখে পৃষ্ঠা লোডিং সময়টি হ্রাস করতে পারবেন। এইভাবে, ক্লায়েন্ট ব্রাউজারটি চিত্রগুলির সাথে প্রচুর সংযোগ স্থাপন করতে চাইবে না, তবে সেগুলি এইচটিএমএলে থাকবে।