এখানে গৃহীত উত্তর দ্বারা রব ডব্লিউ একাধিকবার আকার (16, 32, ইত্যাদি) টাইপ করতে থাকার এড়িয়ে যেতে একটি তুচ্ছ অভিযোজন সঙ্গে:
#!/bin/bash
files=()
for size in 16 32 48 128 256; do
inkscape -z -e "$size.png" -w "$size" -h "$size" logo.svg > /dev/null 2> /dev/null
files+=("$size.png")
done
convert "${files[@]}" -colors 256 favicon.ico
unlink "${files[@]}"
এখানে logo.svg
ইনপুট (উৎস) ইমেজ, যা থেকে আমরা কাঙ্ক্ষিত আকার (ছোট ফাইল তৈরি প্রতিনিধিত্ব করে 16.png
, 32.png
,, ইত্যাদি) যা আমরা তারপর আউটপুট (রিজাল্ট) আইকন ফাইলটি একত্রিত favicon.ico
। আপনি লাইন 3-তে মাপের তালিকাটি "16 24 32 48 64 72 72 128" এ পরিবর্তন করতে পারবেন এবং convert
কমান্ডটি স্বয়ংক্রিয়ভাবে সেই অনুসারে অভিযোজিত হবে, কারণ এই লিপিটি তৈরির জন্য এখানে তার উত্তরে জি-ম্যান দ্বারা বর্ণিত কৌশলটি ব্যবহার করে ফাইলের নামগুলি। এবং পরিশেষে আমরা আবার ফাইলের অ্যারের ব্যবহার করে লাইন 4-এ তৈরি করা পিএনজি ফাইলগুলি লিঙ্কমুক্ত (সরান) করি।
আমি লক্ষ্য করেছি যে আদেশ:
convert logo.svg -define icon:auto-resize=16,48,256 -compress zip favicon.ico
(ব্যবহারকারী ৪০০00747 এর উত্তরে উপস্থাপিত সমতুল্য ) আসলে স্কেলড বিটম্যাপ চিত্র (হারানো গুণমান) এবং স্তরগুলির পটভূমি স্বচ্ছতা হারিয়েছে।
convert
যতবার এটি দেখছি তখন আমি ইমেজম্যাগিকের ব্যবহারের জন্য একটি নতুন উপায় শিখি । উত্তরের জন্য ধন্যবাদ!