স্কোয়ার এসভিজিকে কী আকারে সব আকারের আইসিওতে রূপান্তর করবেন?


24

আমি ইনকস্কেপে একটি আইকন এঁকেছি এবং এটি একটি আইসিও ফাইলে রফতানি করতে চাই যাতে সমস্ত যুক্তিসঙ্গত রেজোলিউশনের (16x16, 32x32, ... 256x256 ইত্যাদি) স্প্রিটস অন্তর্ভুক্ত থাকে। কীভাবে এটি করা যায় (ফটোশপ, কোরিলড্রা ইত্যাদি ইত্যাদি বিশাল এবং ব্যয়বহুল সফ্টওয়্যার ব্যবহার না করে)?


2
একটি দ্রুত অনুসন্ধান আমাকে জানায় যে ইনকস্ক্যাপের বাইরে একটি আইসিও রপ্তানি করার কোনও উপায় নেই, তবে জিম্পের মতো অতিরিক্ত মুক্ত - সফটওয়্যার দিয়ে কীভাবে এটি করা যায় সে সম্পর্কে প্রচুর পরামর্শ রয়েছে। আপনি কি এই বিকল্পগুলি পরীক্ষা করেছেন? যদি তারা আপনার পক্ষে কাজ না করে তবে আপনি বলতে পারবেন কেন নয়?
usr2564301

@ র্যাডলেক্সাস আমি যা চেষ্টা করেছি তা হ'ল একাধিক অনলাইন সরঞ্জাম এবং সেগুলি সমস্ত, যতদূর আমি বুঝতে পারি, মানে একক আকারের আইকনস তৈরি করা।
ইভান

5
সুতরাং আপনি কীভাবে একাধিক আকারের আইসিওগুলি তৈরি করবেন তা জানতে চান? এই স্ট্যাক ওভারফ্লো উত্তরের বিকল্পগুলি ব্যবহার করে দেখুন : stackoverflow.com/questions/4354617/… (আবার, একটি সাধারণ গুগল ক্যোয়ারী দ্বারা পাওয়া ...)।
usr2564301

1
এখানে একটি ইনস্কেপ এক্সটেনশন রয়েছে যা আইকো ফাইল হিসাবে রফতানি করে বলে মনে হচ্ছে , তবে কাজ করে কিনা তা চেষ্টা করার জন্য আমার এই মুহূর্তে সময় নেই।
পাওলো গিবলিনি

যদি আপনার প্রশ্নের উত্তর দেওয়ার জন্য নীচের কোনওটি পাওয়া যায় তবে দয়া করে এটি গ্রহণযোগ্য উত্তর হিসাবে চিহ্নিত করুন।
DᴀʀᴛʜVᴀᴅᴇʀ

উত্তর:


24

আপনি এখনই ইমেজম্যাগিক ব্যবহার করতে পারেন :

convert -density 384 icon.svg -define icon:auto-resize icon.ico

3
কেন সেই ঘনত্ব?
nnot101

1
আমি জানি না, আমি এটিকে অন্য কোথাও কপি-পেস্ট করেছি।
হেলটনবাইকার

@ ননট ১০১১ এখানে ঘনত্বের পতাকাটির জন্য ডকুমেন্টেশন রয়েছে - যদিও মনে হয় এটি একটি অপ্রয়োজনীয় পদক্ষেপ না হলে আপনি চিত্রের আকার, ডিপিআই এবং এর মধ্যবর্তী চিত্রের রাস্টারাইজেশন দিয়ে খুব নির্দিষ্ট কিছু না করে থাকেন। imagemagick.org/script/command-line-options.php#density
ক্রিয়েশন

7
convert -background none icon.svg -define icon:auto-resize icon.icoস্বচ্ছ পটভূমি রাখতে ব্যবহার করুন ।
রবার্ট হিউম

2
magick convert -background none icon.svg -define icon:auto-resize icon.icoআমার জন্য কাজ।
ইন্টোটেচো

15

একটি কমান্ড লাইন সমাধান:

1) আপনার এসভিজি পিএনজিতে ইনকস্কেপ দিয়ে রফতানি করুন

2) ইমেজম্যাগিকের সাহায্যে এই পিএনজি চিত্রটি আপনার মাপের আকারে পরিবর্তন করুন:

magick convert master.png -resize 16x16 16.png
magick convert master.png -resize 32x32 32.png
magick convert master.png -resize 48x48 48.png

3) পিএনজি চিত্রগুলি আইসিওতে রূপান্তর করুন:

magick convert 16.png 32.png 48.png icon.ico

4) আপনার আইসিওতে সমস্ত কিছু রয়েছে তা নিশ্চিত করুন:

identify icon.ico
icon.ico[1] ICO 16x16 16x16+0+0 32-bit sRGB 21.2KB 0.000u 0:00.000
icon.ico[0] ICO 32x32 32x32+0+0 32-bit sRGB 21.2KB 0.000u 0:00.000
icon.ico[0] ICO 48x48 48x48+0+0 32-bit sRGB 21.2KB 0.000u 0:00.000

কাজটি সহজ করার জন্য আপনি একটি সাধারণ ব্যাচ বা শেল ফাইলও ব্যবহার করতে পারেন।
পাওলো গিবেলিনী

3
ইতিমধ্যে রাস্টারাইজড পিএনজিগুলির আকার বদলে সরাসরি এসভিজি থেকে বহু পিএনজি আকার রফতানি করা কি আরও ভাল (কিছুটা জটিল হলেও) ভাল হবে না?
হেলটনবাইকার

1
অন্য কারও কৌতূহল বোধ করার ক্ষেত্রে, "..." আক্ষরিক নয়। এটি ফেভিকন.ইকো ফাইলটিতে ক্র্যাম করার জন্য অন্যান্য পিএনজি ফাইলের আকারকে উপস্থাপন করে।
নস্টালজি.ও

@ নস্টালগ.ওও ভাল মন্তব্য, ধন্যবাদ! আমি উত্তর সম্পাদনা করেছি।
ফিলিপ_বি

5

বাশ সংস্করণ ...

#!/bin/bash

set -ex

svg=$1

size=(16 32 24 48 72 96 144 152 192 196)

echo Making bitmaps from your svg...

for i in ${size[@]}; do
  inkscape $svg --export-png="favicon-$i.png" -w$i -h$i --without-gui
done

echo Compressing...

## Replace with your favorite (e.g. pngquant)
# optipng -o7 favicon-*.png
pngquant -f --ext .png favicon-*.png --posterize 4 --speed 1

echo Converting to favicon.ico...

convert $(ls -v favicon-*.png) favicon.ico

## Clean-up maybe?
# rm favicon-*.png

echo Done

ব্যবহার: ./favicon.sh your-square-svg-file.svg

প্রয়োজনীয়: আপনার প্যাকেজ ম্যানেজার থেকে ইনস্কেপ ইমেজম্যাগিক অপটিপং (alচ্ছিক)।

উইন 10 এবং ইনস্কেপ একসাথে না আসায় বাশ শেলের জন্য এটি পুনরায় তৈরি করা আমার পক্ষে আরও সহজ হয়েছে। এটি লিনাক্সের জন্য উইন্ডোজ সাবসিস্টেমের মধ্যে পরীক্ষা করা হয়েছিল তবে এটি ম্যাকের ক্ষেত্রেও কাজ করা উচিত।

আমার যত্ন করা মাপগুলি চয়ন করতে এই রেফারেন্সটি ব্যবহার করুন: https://github.com/audreyr/favicon-cheat-sheetsizeআপনার নির্দিষ্ট প্রয়োজনের সাথে অ্যারে সামঞ্জস্য করুন ।


4

আমি এই পদ্ধতির পরামর্শ দেব:

1) কোনও প্রয়োজনীয় আকারে এসভিজি রফতানি করার জন্য একটি স্ক্রিপ্ট তৈরি করুন। একটি অ্যান্ড্রয়েড আইকন তৈরি করতে আমাকে সহায়তা করতে আমি এই .bat স্ক্রিপ্টটি কোড করেছি

@echo off
set file="%~f1"
set path=%~dp1
set inkscape="C:\Program Files\Inkscape\inkscape.exe"

echo Le icone saranno salvate in %path%
echo Produzione icone applicative

echo %file% --export-png="%path%/ic32.png" -w32 -h32 > %~dp1/commands.txt
echo %file% --export-png="%path%/ic48.png" -w48 -h48 > %~dp1/commands.txt
echo %file% --export-png="%path%/ic72.png" -w72 -h72 > %~dp1/commands.txt
echo %file% --export-png="%path%/ic96.png" -w96 -h96 > %~dp1/commands.txt
echo %file% --export-png="%path%/ic144.png" -w144 -h144 > %~dp1/commands.txt
echo %file% --export-png="%path%/ic192.png" -w192 -h192 > %~dp1/commands.txt
echo %file% --export-png="%path%/ic512.png" -w512 -h512 > %~dp1/commands.txt
%inkscape% --shell < %~dp1/commands.txt
erase "%~dp1/commands.txt"

echo Procedura terminata

দ্রষ্টব্য :

  • সংজ্ঞায়িত % inkscape% var আপনার ইঙ্কস্কেপ ইনস্টলনের জন্য পর্যাপ্ত হতে হবে
  • স্ক্রিপ্টটি সমস্ত রফতানি কমান্ডগুলিকে ইম্পস্কেপ প্রক্রিয়াটির আরও ভাল পরিচালনার জন্য একটি অস্থায়ী ফাইলে প্রতিধ্বনি দেয়। "শেল" ক্লিপ প্যারাম কমান্ড অনুযায়ী একটি উদাহরণ উত্সাহিত করার পরিবর্তে একটি একক উদাহরণ ব্যবহার করে আরও কমান্ড গ্রহণ করে।

এই পরামিতিটির সাহায্যে, ইনস্কেপ একটি ইন্টারেক্টিভ কমান্ড লাইন শেল মোডে প্রবেশ করবে। এই মোডে, আপনি প্রম্পটে কমান্ডগুলি টাইপ করেন এবং প্রতিটি কমান্ডের জন্য আপনাকে ইনসক্যাপের একটি নতুন অনুলিপি চালিত না করেই ইনকস্কেপ সেগুলি কার্যকর করে। এই বৈশিষ্ট্যটি স্ক্রিপ্টিং এবং সার্ভারের ব্যবহারগুলির জন্য বেশিরভাগ ক্ষেত্রে কার্যকর: এটি কোনও নতুন ক্ষমতা যুক্ত করে না তবে আপনাকে যে কোনও স্ক্রিপ্টের গতি এবং মেমরির প্রয়োজনীয়তা উন্নত করতে দেয় যা বারবার ইনকস্কেপকে কমান্ড লাইন কার্য সম্পাদন করতে কল করে (যেমন রফতানি বা রূপান্তর)। শেল মোডে প্রতিটি কমান্ড অবশ্যই একটি সম্পূর্ণ বৈধ ইনকস্কেপ কমান্ড লাইন হতে পারে তবে ইনস্কেপ প্রোগ্রামের নাম ব্যতীত উদাহরণস্বরূপ "file.svg --export-pdf = file.pdf"। ( ইনস্কেপ ম্যানুয়াল দেখুন )

২) উপরের স্ক্রিপ্টে ফিলিপ-বি উত্তরে বর্ণিত রূপান্তর সিনট্যাক্স যুক্ত করুন যা সমস্ত উত্পন্ন পিএনজিগুলিকে একক আইসিও ফাইলে একীভূত করে

3) allyচ্ছিকভাবে, সমস্ত রফতানি করা পিএনজিগুলি অপসারণ করুন কারণ তাদের আর প্রয়োজন নেই


1

এই ওয়েবসাইটটি ফেভিকন প্রজন্মের জন্য আমার চলতে চলতে হিসাবে এটি সবচেয়ে ডিভাইস (উইন্ডোস, MacOS, অ্যান্ড্রয়েড, iOS) এর জন্য হোম স্ক্রীনে যোগ করার জন্য আইকন অন্তর্ভুক্ত https://realfavicongenerator.net/

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.