개요
Linux परिवेश में काम करते हुए वेक्टर ग्राफ़िक्स (SVG) को PNG या PDF जैसे लोकप्रिय रैस्टर प्रारूपों में एक्सपोर्ट करने के लिए cairosvg एक अत्यंत तेज़ और संसाधन-सक्षम कमांड-लाइन यूटिलिटी है। इस व्यावहारिक गाइड में हम Ubuntu पर इसके सेटअप, बुनियादी कन्वर्ज़न तकनीकों, कस्टम रिज़ॉल्यूशन एवं डायमेंशन प्रबंधन से लेकर शेल स्क्रिप्ट की मदद से बल्क ऑटोमेशन की पूरी प्रक्रिया को विस्तार से समझेंगे।
1. cairosvg इंस्टॉलेशन और टेस्टिंग के लिए सैंपल SVG फ़ाइल तैयार करना
Ubuntu सिस्टम पर इस टूल की कार्यप्रणाली का परीक्षण करने के लिए सबसे पहले आधिकारिक रिपॉजिटरी से आवश्यक पैकेज इंस्टॉल करना होगा। टर्मिनल में sudo apt-get update -qq && sudo apt-get install -y python3-cairosvg कमांड चलाकर इंस्टॉलेशन संपन्न करें।

तकनीकी रूप से cairosvg, Cairo 2D वेक्टर ग्राफिक्स इंजन पर आधारित एक परिष्कृत CLI टूल है, जो स्केलेबल वेक्टर फ़ाइलों को बिना किसी जटिलता के PNG, PDF अथवा PostScript प्रारूप में रेंडर कर देता है।
सिस्टम में इसकी सफल मौजूदगी और चालू वर्ज़न की जांच हेतु cairosvg --version कमांड निष्पादित करें।
⚙️ [प्रमुख कमांड ऑप्शन्स]
-f, --format : आउटपुट फ़ाइल का इच्छित फॉर्मेट (png, pdf, ps, svg) निर्धारित करता है।-o, --output : जनरेट होने वाली आउटपुट फ़ाइल का पाथ और नाम तय करता है।-w, --width : आउटपुट इमेज की चौड़ाई पिक्सेल में सेट करता है।-h, --height : आउटपुट इमेज की ऊंचाई पिक्सेल में सेट करता है।-s, --scale : मूल आयामों के अनुपात में स्केलिंग अनुपात (ज़ूम फ़ैक्टर) लागू करता है।-d, --dpi : रैस्टराइज़ेशन प्रक्रिया के दौरान रिज़ॉल्यूशन डेंसिटी (DPI) कॉन्फ़िगर करता है।-b, --background : डिफ़ॉल्ट पारदर्शी बैकग्राउंड के स्थान पर कस्टम रंग लागू करता है।

रूपांतरण का व्यावहारिक परीक्षण करने के लिए एक टेस्ट ग्राफ़िक की आवश्यकता होगी। Bash के Here Document सिंटैक्स और cat कमांड का उपयोग करके कुछ बुनियादी ज्यामितीय आकृतियों वाली sample.svg फ़ाइल तैयार करें:

निर्मित फ़ाइल का आकार और अनुमतियां सत्यापित करने के लिए ls -lh sample.svg कमांड चलाएं।

2. SVG को PNG और PDF प्रारूप में बुनियादी तौर पर कन्वर्ट करना
वेक्टर आर्टवर्क को मानक रैस्टर PNG इमेज में बदलने के लिए टर्मिनल पर cairosvg sample.svg -o sample.png कमांड निष्पादित करें।
टूल -o पैरामीटर में दिए गए .png एक्सटेंशन को स्वतः पहचान लेता है, इसलिए किसी अतिरिक्त फॉर्मेट फ़्लैग की आवश्यकता नहीं पड़ती।

नव-निर्मित sample.png के सटीक विनिर्देशों, बिट डेप्थ और डायमेंशन की पुष्टि हेतु file sample.png कमांड का सहारा लें।

वेक्टर शार्पनेस को सुरक्षित रखते हुए प्रिंटेबल डॉक्यूमेंट तैयार करने के लिए cairosvg sample.svg -o sample.pdf कमांड चलाएं।
यह प्रक्रिया ग्राफ़िक तत्वों की स्पष्टता बनाए रखते हुए एक स्टैंडअलोन PDF फ़ाइल जनरेट करती है।

तैयार PDF फ़ाइल के संरचनात्मक प्रारूप और विनिर्देशों की पुष्टि file sample.pdf कमांड द्वारा की जा सकती है।

3. रिज़ॉल्यूशन (DPI) और कस्टम आयाम (Width, Height, Scale) सेट करना
आउटपुट इमेज के सटीक पिक्सेल आयाम निर्धारित करने के लिए -W और -H फ्लैग्स का प्रयोग किया जाता है। 800×800 पिक्सेल की निश्चित इमेज रेंडर करने के लिए cairosvg sample.svg -o sample_800px.png -W 800 -H 800 कमांड चलाएं।

फ़ाइल के ऑस्पेक्ट रेशियो को विकृत किए बिना आकार को दोगुना करने के लिए -s स्केलिंग फ़्लैग का इस्तेमाल करें। cairosvg sample.svg -o sample_scale2x.png -s 2.0 कमांड निष्पादित करने पर बिना किसी पिक्सलेशन के 2x आकार की PNG प्राप्त होती है।

व्यावसायिक प्रिंटिंग और अल्ट्रा-शार्प डिस्प्ले हेतु हाई-डेंसिटी रेंडरिंग के लिए -d फ्लैग द्वारा DPI मान सेट करें। cairosvg sample.svg -o sample_300dpi.png -d 300 कमांड 300 DPI गुणवत्ता पर क्रिस्प PNG आउटपुट तैयार करती है।

विभिन्न कॉन्फ़िगरेशन्स (कस्टम साइज़, स्केलिंग, हाई DPI) के परिणामस्वरूप बने आउटपुट फ़ाइलों के डिस्क साइज़ की तुलना करने के लिए ls -lh sample*.png चलाएं।

4. शेल लूप के ज़रिए कई SVG फ़ाइलों का ऑटोमेटेड बैच कन्वर्ज़न
बल्क प्रोसेसिंग वर्कफ़्लो का अनुकरण करने हेतु एक पृथक डायरेक्टरी बनाएं और उसमें परीक्षण के लिए कई SVG फ़ाइलें तैयार करें। इसके लिए mkdir -p svg_batch && cp sample.svg svg_batch/icon1.svg && cp sample.svg svg_batch/icon2.svg कमांड चलाएं।
![]()
Bash के for लूप और स्ट्रिंग मैनिपुलेशन सिंटैक्स (${f%.svg}.png) का उपयोग करके फोल्डर की सभी SVG फ़ाइलों को स्वतः PNG में बदलने के लिए for f in svg_batch/*.svg; do cairosvg "$f" -o "${f%.svg}.png"; done कमांड निष्पादित करें।
यह लूप बिना किसी मैन्युअल हस्तक्षेप के प्रत्येक फ़ाइल का नामकरण संभालते हुए बैच रेंडरिंग पूरी करता है।

बैच ऑपरेशन के सफल समापन की पुष्टि हेतु ls -lh svg_batch/ कमांड चलाकर डायरेक्टरी का मुआयना करें।
प्रत्येक इनपुट SVG के समकक्ष समरूपी PNG फ़ाइल स्वतः बन चुकी होगी।

इस ट्यूटोरियल में हमने देखा कि Linux टर्मिनल पर cairosvg का प्रभावी उपयोग करके वेक्टर फ़ाइलों को तीव्र गति से PNG और PDF में कैसे ढाला जाता है। चाहे वेब एसेट पाइपलाइन तैयार करनी हो या डॉक्युमेंट जनरेशन को ऑटोमेट करना हो, यह टूल हर परिदृश्य में असाधारण दक्षता प्रदान करता है।