یک فایل SVG پیکسلی ندارد، پس این تبدیل نیست، رندر است
تمام مبدلهای دیگر این سایت فقط پیکسلهایی را جابجا میکنند که از قبل وجود دارند. اما این ابزار کار متفاوتی انجام میدهد و همین تفاوت دلیل ارزشمند بودن این صفحه است. یک فایل SVG اصلاً تصویر نگه نمیدارد، بلکه فقط دستورالعملها را ذخیره میکند: اینجا یک دایره بکش، این مسیر را با آن گرادیان پر کن، متن را در این مختصات قرار بده. تبدیل آن به PNG یعنی اجرای این دستورها در ابعادی که شما انتخاب میکنید. هیچ چیز کشیده یا حدس زده نمیشود، چون اصلاً شبکه پیکسلی اولیهای وجود ندارد که بخواهد کشیده یا حدس زده شود.
چرا احتمالاً اصلاً به PNG نیاز دارید
فرمت SVG عالی است اما تقریباً هیچ جا پذیرفته نمیشود. کلاینتهای ایمیل SVG را نمایش نمیدهند. نرمافزار آفیس هنگام درج آن مشکل ایجاد میکند. شبکههای اجتماعی و اکثر فرمهای بارگذاری آن را بهطور کامل رد میکنند و نرمافزارهای خارج از دنیای طراحی معمولاً آن را به عنوان یک فایل متنی میشناسند، چون از نظر فنی همین است. PNG نسخهای است که همه قبول میکنند.
ابعاد بزرگ اینجا هیچ هزینهای ندارد
بزرگنمایی یک عکس پیکسلهایی را اختراع میکند که هرگز ثبت نشدهاند، به همین دلیل در بزرگنمایی 2 برابر نرم و در 10 برابر کاملاً بیکیفیت میشود. اما رندر یک وکتور چنین محدودیتی ندارد. یک آیکون ۲۴ پیکسلی که در ابعاد ۱۰۲۴ رندر شود، یک آیکون ۲۴ پیکسلی بزرگشده نیست؛ بلکه همان طرح دوباره در ابعاد ۱۰۲۴ اجرا شده، با هر منحنی و لبهای که برای آن اندازه محاسبه شده است. دقیقاً همین را تست کردیم: یک آیکون ۲۴ در ۲۴ به صورت ۱۰۲۴ در ۱۰۲۴ بازگشت، با رنگهایی کاملاً یکسان با منبع، بایت به بایت، و لبههایی صاف و آنتیالیاسشده به جای پلهپله.
توصیه عملی همین است: در بزرگترین ابعادی که واقعاً نیاز دارید رندر بگیرید، نه کوچکترین، چون PNG که دریافت میکنید از آن لحظه یک شبکه پیکسلی ثابت است. بزرگتر گرفتن فقط چند میلیثانیه زمان بیشتر میبرد و هیچ هزینه دیگری ندارد.
شما اندازه را انتخاب میکنید، یا خود فایل
یک عرض وارد کنید و طرح با حفظ تناسبات به آن اندازه فیت میشود. مثلاً اگر لوگوی ۲:۱ را ۴۰۰ در ۴۰۰ بخواهید، یک تصویر شفاف ۴۰۰ در ۲۰۰ میگیرید، نه یک مربع فشردهشده. پریستهای یککلیکی برای ۲۵۶، ۵۱۲، ۱۰۲۴ و ۲۰۴۸ وجود دارد و گزینه Original هم هست که در ابعادی که خود SVG تعریف کرده رندر میگیرد. مثلاً فایلی که ۲۰۰ در ۱۰۰ تعریف کرده، گزینه Original دقیقاً همان ۲۰۰ در ۱۰۰ را بازمیگرداند. سقف ابعاد ۱۶٬۳۸۴ پیکسل در هر ضلع و ۶۴ مگاپیکسل کل است، که رندر ۸۰۰۰ در ۸۰۰۰ را هم پوشش میدهد.
شفافیت، حتی از نوع نیمهشفاف
PNG یک کانال آلفای واقعی دارد، پس لوگویی با پسزمینه شفاف، با همان پسزمینه شفاف برمیگردد و آماده قرار گرفتن روی اسلاید یا صفحه محصول بدون جعبه سفید دورش است. تفاوت یک رندرر خوب با یک رندرر بیدقت در شفافیت جزئی است: سایههای نرم، لبههای محو، یا هر چیزی با شفافیت نصف. مثلاً شکلی که با شفافیت ۵۰٪ تعریف شده بود، در خروجی مقدار آلفای ۱۲۸ داشت که دقیقاً نصف است. هر رندر به صورت تصویر RGBA واقعی بازمیگردد. اگر ترجیح میدهید شفافیت حذف شود، پسزمینه را روی یک رنگ ثابت بگذارید و دقیقاً همان رنگ دلخواه را از انتخابگر رنگ انتخاب کنید.
متن و گرادیانها، دو چیزی که معمولاً خراب میشوند
رندر سمت سرور SVG معمولاً در دو جای قابل پیشبینی شکست میخورد. فونتها پیدا نمیشوند، پس متن ناپدید میشود یا با فونت اشتباه نمایش داده میشود. همچنین گرادیانهایی که یک بار تعریف و با id ارجاع داده شدهاند، حل نمیشوند و اشکال به صورت تخت یا سیاه بازمیگردند. هر دو مورد را بررسی کردیم: متن با لبههای تمیز و آنتیالیاسشده رندر شد و یک گرادیان خطی که با url() ارجاع داده شده بود، بهدرستی از یک رنگ به رنگ دیگر تبدیل شد. اگر فایلی فونتی را درخواست کند که سرور ندارد، یک جایگزین استفاده میشود و نتیجه هم به شما اعلام میشود، نه اینکه بعداً خودتان متوجه شوید.
بارگذاری SVG دیگران اینجا امن است
یک فایل SVG میتواند بهطور قانونی جاوااسکریپت داشته باشد و به منابع دیگر در اینترنت اشاره کند. به همین دلیل ارائهدهندگان ایمیل این فرمت را مسدود میکنند و این واقعاً دلیل خوبی برای احتیاط با فایلهای ناشناس است. رندر اینجا با یک موتور وکتور اختصاصی انجام میشود، نه مرورگر: اسکریپتی اجرا نمیشود و هیچ ارجاع خارجی دریافت نمیشود. هیچ چیزی داخل فایل نمیتواند اجرا شود، به جایی وصل شود یا چیزی بخواند. خروجی شما حالت ایستای واقعی طرح است، به همین دلیل انیمیشنها فقط اولین فریم را رندر میکنند و حرکت نمیکنند.
سریع و قابل تکرار
ببر معروف Ghostscript با حجم ۹۴.۵ کیلوبایت و مسیرهای بزیه پیچیده، که معمولاً تست شکنجه رندررهای SVG است، در ۵۳ میلیثانیه به PNG ۵۱۲ پیکسلی رندر شد. رندر یک فایل دوبار، خروجی بایت به بایت یکسان تولید میکند، پس نتیجه کاملاً قابل بازتولید است نه تقریبی. فایلهای فشرده .svgz مستقیماً خوانده میشوند و فرمت از روی بایتهای خود فایل تشخیص داده میشود، پس حتی اگر فایل تغییر نام داده یا پسوند نداشته باشد هم رندر میشود.
یک مجموعه آیکون را یکجا رندر کنید
چندین فایل با تنظیمات یکسان رندر میشوند و به صورت یک فایل ZIP با نام اصلیشان بازمیگردند. سه فایل مختلف با نام icon.svg به صورت icon.png، icon_1.png و icon_2.png بازمیگردند، نه اینکه دو تای آنها بیصدا حذف شوند. اگر فایلی خراب یا غیر SVG در مجموعه باشد، رد میشود و نامش در نتیجه ذکر میشود، به جای اینکه کل عملیات را خراب کند.
چه چیزی دریافت میکنید
- یک فایل PNG که در ابعاد انتخابی شما رندر شده، نه یک نسخه بزرگشده از یک تصویر کوچک
- تناسبات قفلشده، پس هیچ چیزی کشیده یا فشرده برنمیگردد
- آلفای کامل، شامل اشکال نیمهشفاف و سایههای نرم، یا هر رنگ پسزمینهای که انتخاب کنید
- متن و گرادیانها رندر میشوند، نه حذف، و جایگزینی فونتها هم گزارش میشود
- هیچ اسکریپتی اجرا نمیشود و هیچ ارجاع خارجی دریافت نمیشود، پس بارگذاری SVG ناشناس امن است
- بدون حساب کاربری، بدون واترمارک، و فایلها یک ساعت بعد از سرور حذف میشوند
گام بعدی چیست؟
یک رندر ۴۰۰۰ پیکسلی فایل بزرگی است، پس فشردهسازی PNG معمولاً گام بعدی پیش از قرار دادن آن در صفحه است و تبدیل PNG به WebP آن را برای وب بهینهتر میکند. اگر وکتور را هم نگه میدارید، فشردهسازی SVG اضافات ویرایشگر را از آن حذف میکند.