PerfectVector
लेखक: Irene Kim9 मिनट का पठन

LaTeX में SVG: आकार रखें, फ़िगर लेबल टाइपसेट करें

SVG चित्र के लिए PDF या PDF तथा LaTeX कार्यप्रवाह चुनें। लेबल संपादन योग्य रखें, Inkscape निर्भरताएँ समझें और अंतिम दस्तावेज़ PDF जाँचें।

इस पेज पर

LaTeX में SVG चित्र उपयोग करने के लिए चुनें कि उसके लेबल कौन रेंडर करेगा। चित्र की मौजूदा टाइपोग्राफ़ी उपयुक्त हो तो सामान्य PDF निर्यात करें। दस्तावेज़ टेक्स्ट के साथ LaTeX को लेबल टाइपसेट करना हो तो PDF तथा LaTeX कार्यप्रवाह लें।

svg पैकेज Inkscape से निर्यात स्वचालित करके बनी फ़ाइलें शामिल कर सकता है। वह रूपांतरण हटाता नहीं; आपके लिए चरण संभालता है। CTAN का पैकेज अवलोकन निर्यात ग्राफ़िक्स और LaTeX रेंडर टेक्स्ट के बीच विभाजन बताता है।

तैयार चित्र के लिए उपयोगी प्रश्न है कि अगले संशोधन में आकार और शब्द सुरक्षित रहेंगे या नहीं। SVG मूल रखें, लेबल संभालने का तरीका तय करें और इच्छित आकार पर संयुक्त दस्तावेज़ देखें। दस्तावेज़ Python में बनता हो तो ReportLab PDF में SVG चित्र रखने का अलग कार्यप्रवाह अपनाएँ, स्पष्ट आकार और तैयार फ़ाइल जाँच सहित।

दस्तावेज़ में उपयोग होने वाली फ़ाइलें चुनें

आवश्यकतावितरण विकल्पक्या बनाए रखें
चित्र का मौजूदा रूप रखनासामान्य PDF निर्यात कर graphicx लेंSVG मूल और निर्यात PDF
LaTeX से फ़िगर लेबल टाइपसेट करानाPDF तथा LaTeX निर्यातSVG मूल और मेल खाती PDF/LaTeX जोड़ी
दस्तावेज़ कंपाइलेशन में निर्यात ताज़ा करनाInkscape के साथ svg पैकेज लेंSVG स्रोत और कंपाइलेशन वातावरण

उदाहरण के लिए कार्ड के पास लेंस का छोटा चित्र सोचें। उसके दो लेबल बस “Lens” और “Card” हैं। उदाहरण में आयाम, मापी किरणें या प्लॉट परिणाम नहीं हैं।

समीक्षक “Card” को “Target card” करने को कहता है। चित्र दोबारा बनाने की आवश्यकता नहीं, लेकिन लंबे लेबल को जगह चाहिए। यह उपयोगी संशोधन परीक्षण है: क्या अक्षर आकार ट्रेस किए बिना शब्द बदल सकते हैं और नया लेबल अब भी समाता है?

लेंस और कार्ड का चित्र ग्राफ़िक्स तथा टेक्स्ट लेबल में अलग करके फिर लेबल वाले फ़िगर में जोड़ा गया है
PDF तथा LaTeX विभाजन का चित्रण: ड्रॉइंग ज्यामिति और लेबल टेक्स्ट एक संयुक्त फ़िगर के अलग इनपुट हैं। टाइपसेट करने के बाद भी लेबल स्थान जाँचना आवश्यक है।

विकल्प 1: सामान्य PDF निर्यात करें

लेबल पहले से सही दिखें और दस्तावेज़ की टाइपोग्राफ़ी अपनाने की आवश्यकता न हो तो यह विकल्प लें।

Inkscape की PDF निर्यात मार्गदर्शिका File → Save a Copy, PDF चयन और टेक्स्ट परिणाम विकल्प बताती है। मूल SVG रखें। सामान्य खोजने योग्य टेक्स्ट के लिए फ़ॉन्ट एम्बेडिंग देखें; अक्षर आउटलाइन करने से आकार तय होते हैं लेकिन संपादन योग्य टेक्स्ट की भूमिका हटती है।

यह उदाहरण मुख्य .tex फ़ाइल के पास lens-card.pdf नाम से सहेजें। PDF बनाने वाले LaTeX प्रोजेक्ट में मूल समावेशन तरीका है:

\documentclass{article}
\usepackage{graphicx}
\begin{document}
\includegraphics[width=0.7\linewidth]{lens-card.pdf}
\end{document}

graphicx पैकेज और \includegraphics, Overleaf छवि मार्गदर्शिका का बताया छवि समावेशन विकल्प हैं। यहाँ चौड़ाई लेआउट उदाहरण है, आवश्यक फ़िगर आकार नहीं।

दस्तावेज़ में जोड़ने से पहले निर्यात PDF खोलें। पुष्टि करें कि दोनों ऑब्जेक्ट और लेबल हैं। कंपाइल करने के बाद फ़िगर फिर देखें: पूरे पृष्ठ चित्र में पठनीय लेबल संकरे कॉलम में बहुत छोटा हो सकता है।

SVG में लेबल बदलें तो PDF फिर निर्यात करें। नाम स्पष्ट रखें ताकि दस्तावेज़ पुरानी वितरण प्रति उपयोग करता न रहे।

विकल्प 2: ग्राफ़िक्स और LaTeX टेक्स्ट साथ निर्यात करें

फ़िगर लेबल LaTeX से टाइपसेट होने चाहिए तो यह विकल्प लें। PDF तथा LaTeX अवलोकन बताता है कि ड्रॉइंग और टेक्स्ट अलग संभाले जाते हैं ताकि फ़िगर टेक्स्ट दस्तावेज़ की टाइपोग्राफ़ी ले सके।

Inkscape PDF निर्यात संवाद में Omit text in PDF and create LaTeX file चुनें, जैसा निर्यात मार्गदर्शिका बताती है। बने lens-card.pdf और lens-card.pdf_tex साथ रखें। केवल PDF खोलने पर छोड़े लेबल नहीं दिखेंगे।

svg पैकेज की मैनुअल, खंड 2.5 पहले से Inkscape द्वारा निर्यात फ़ाइलों के लिए \includeinkscape बताती है। जोड़ी मुख्य .tex फ़ाइल के पास हो तो समावेशन तरीका है:

\documentclass{article}
\usepackage{svg}
\begin{document}
\includeinkscape[width=0.7\linewidth]{lens-card.pdf_tex}
\end{document}

यह दस्तावेज़ बिल्ड से SVG निर्यात करवाने के बजाय तैयार जोड़ी लेता है। प्रोजेक्ट खिसकाते समय दोनों फ़ाइलें रखें।

लेंस और कार्ड उदाहरण में संयुक्त फ़िगर में लेबल के स्थान की चित्र के मूल संस्करण से तुलना करें। अधिक चौड़ा दस्तावेज़ फ़ॉन्ट “Target card” को लेंस की ओर धकेल सकता है, भले निर्यात ज्यामिति न बदली हो। लेबल के आसपास पर्याप्त जगह रखें और लेआउट पूरा करने से पहले अधिक लंबे लेबल पाठ को आज़माकर देखें।

अक्षर पहले से पाथ बने हों तो वे चित्र ज्यामिति हैं। LaTeX से टाइपसेट करवाना हो तो संपादन योग्य मूल में इच्छित लेबल वास्तविक टेक्स्ट के रूप में रखें या दोबारा बनाएँ। SVG फ़ॉन्ट मार्गदर्शिका संपादन योग्य टेक्स्ट और आउटलाइन अक्षर अलग करना बताती है।

विकल्प 3: कंपाइलेशन में svg पैकेज को निर्यात करने दें

बार-बार चित्र संपादन में स्वचालित विकल्प सुविधाजनक हो सकता है:

\documentclass{article}
\usepackage{svg}
\begin{document}
\includesvg[width=0.7\linewidth]{lens-card}
\end{document}

यहाँ स्रोत lens-card.svg है। पैकेज मैनुअल स्वचालित निर्यात के लिए काम करने वाला Inkscape executable माँगती है और उसे बुलाने के लिए shell escape बताती है। भरोसेमंद स्थानीय प्रोजेक्ट के लिए बताया कमांड है:

pdflatex --shell-escape main.tex

Shell escape बाहरी कमांड चलाने की अनुमति देता है; इसे केवल भरोसेमंद प्रोजेक्ट स्रोतों के लिए उपयोग करें। वातावरण अनुमति न दे तो बिल्ड के बाहर निर्यात तैयार करें और पिछले विकल्पों में से कोई लें।

पैकेज की inkscapelatex=true सेटिंग LaTeX रेंडरिंग के लिए टेक्स्ट अलग करती है और डिफ़ॉल्ट है। Inkscape का निर्यात टेक्स्ट चाहिए तो \includesvg पर inkscapelatex=false दें। लेबल आकार बदलने से पहले व्यवहार जानबूझकर चुनें।

ये दस्तावेज़ में बताए समावेशन तरीके हैं। लंबे दस्तावेज़ या साझा टेम्पलेट पर लगाने से पहले अपने प्रोजेक्ट की छोटी प्रति में चुना विकल्प जाँचें।

फ़ॉर्मेट बदलने से पहले गायब हिस्से का निदान करें

क्या दिखता हैपहले क्या जाँचें
SVG है लेकिन बनी PDF गायब हैनिर्यात चला या नहीं, Inkscape उपलब्ध है और परिणाम पाथ सही है या नहीं
चित्र दिखता है लेकिन लेबल नहींPDF/LaTeX जोड़ी में केवल PDF शामिल किया या नहीं
लेबल ओवरलैप करते हैं या दूरी अनपेक्षित हैचुना टेक्स्ट कार्यप्रवाह, दस्तावेज़ फ़ॉन्ट और उपलब्ध लेबल जगह
PDF टेक्स्ट जैसी त्रुटियाँ देती हैछवि समावेशन कमांड के बजाय \input को दी गई या नहीं
फ़िगर में अनपेक्षित खाली जगह या क्लिपिंग हैनिर्यात क्षेत्र और चित्र की पृष्ठ सीमाएँ

एक साथ कई सेटिंग बदलने से पहले पहली संबंधित कंपाइलर त्रुटि के आधार पर समस्या जाँचें। गायब निर्यात फ़ाइल के लिए डिस्क पर वह फ़ाइल देखें। गलत जगह लेबल के लिए संयुक्त फ़िगर देखें। ये जाँचें कार्यप्रवाह के अलग हिस्सों से जुड़ी हैं।

Overleaf प्रोजेक्ट में चुने विकल्प की आवश्यक फ़ाइलें अपलोड करें। तैयार PDF या मेल खाती निर्यात जोड़ी कंपाइलेशन में SVG निर्यात की आवश्यकता से बचाती है। यह न मानें कि स्थानीय स्थापना, स्वयं होस्ट सर्वर और होस्ट प्रोजेक्ट में समान बाहरी टूल उपलब्ध हैं।

केवल ज़रूरी चित्र पुनर्प्राप्त करें

संपादन योग्य SVG पहले से हो तो वही लें। स्रोत संख्यात्मक प्लॉट हो तो डेटा और स्रोत कोड से फ़िगर फिर बनाएँ। समीकरण और वैज्ञानिक लेबल टेक्स्ट रखें; उनके पिक्सेल ट्रेस करने से अर्थ वापस नहीं मिलता। Python फ़िगर के लिए Matplotlib प्लॉट और SVG चित्र संयोजन कार्यप्रवाह अपनाएँ ताकि दस्तावेज़ निर्यात से पहले अलग लोगो पाथ बना रहे।

वेक्टराइज़ेशन अधिक सीमित स्थिति में उपयोगी है: मूल ड्रॉइंग गायब है और सरल चित्रण ऑब्जेक्ट की केवल रास्टर प्रति है। प्रति को चित्र तक काटें और लेबल तथा डेटा ट्रेस से बाहर रखें। PerfectVector के वैज्ञानिक चित्र वेक्टराइज़र से वेक्टर आकारों का पूर्वावलोकन करें और पतली आउटलाइन, खाली खुले भाग तथा अनचाही पृष्ठभूमि क्षेत्र देखें। SVG डाउनलोड करें, संपादक में मूल लेबल अलग जोड़ें और चुना LaTeX वितरण विकल्प लें।

लेंस और कार्ड उदाहरण में पुनर्प्राप्ति चित्र में बने लेंस या कार्ड की आउटलाइन तक सीमित होगी। शब्द लेबल स्रोत के हैं। PDF निर्यात और दस्तावेज़ समावेशन के बाद भी वेक्टर के संभावित संस्करण की जाँच करनी चाहिए; वह मापी ज्यामिति या प्रकाशन नीति की स्वीकृति नहीं देता।

रेखा चित्र तैयारी मार्गदर्शिका रास्टर स्रोत सफ़ाई बताती है। केवल PDF बचा हो तो PDF से SVG मार्गदर्शिका ट्रेस करने से पहले मौजूदा वेक्टर सामग्री और स्कैन पृष्ठ अलग पहचानने में मदद करती है। व्यापक स्रोत चुनाव के लिए छवि वेक्टराइज़ेशन क्या वापस लाता है देखें।

संयुक्त दस्तावेज़ जाँचें, फिर स्रोत रखें

प्रति में केवल लेबल संशोधन परीक्षण करें। “Card” को “Target card” करें, ज़रूरत हो तो निर्यात ताज़ा करें और दस्तावेज़ कंपाइल करें। अंतिम फ़िगर चौड़ाई पर टेक्स्ट की वर्तनी और स्थान जाँचें। बाद में इच्छित शब्द वापस रखें।

ड्रॉइंग के खुले भाग, पतली रेखाएँ और निर्यात सीमाएँ भी देखें। Inkscape की PDF निर्यात मार्गदर्शिका बताती है कि फ़िल्टर प्रभाव रास्टर हो सकते हैं, इसलिए केवल PDF नाम से हर दृश्य हिस्सा वेक्टर ज्यामिति होना सिद्ध नहीं होता।

संपादन योग्य SVG और दस्तावेज़ में प्रयुक्त फ़ाइलें साथ रखें। PDF/LaTeX जोड़ी हो तो दोनों दें। साझा करने वाली उसी प्रोजेक्ट प्रति को फिर खोलें और वहाँ फ़िगर जाँच दोहराएँ।

अक्सर पूछे जाने वाले प्रश्न

क्या SVG सीधे includegraphics में रख सकता हूँ? यहाँ के कार्यप्रवाहों में पहले PDF जैसी समर्थित ग्राफ़िक्स फ़ाइल निर्यात करें या Inkscape निर्यात संभालने के लिए svg पैकेज लें। पैकेज अब भी निर्यात ग्राफ़िक्स शामिल करता है।

मेरे निर्यात PDF में लेबल क्यों नहीं हैं? PDF तथा LaTeX निर्यात PDF से लेबल टेक्स्ट छोड़ता है। पूरा फ़िगर बनाने के लिए मेल खाता LaTeX कंपोनेंट शामिल करें या एक स्वयंपूर्ण छवि चाहिए तो सामान्य PDF निर्यात करें।

क्या हर दस्तावेज़ बिल्ड में Inkscape चाहिए? स्वचालित SVG निर्यात के लिए बिल्ड वातावरण में चाहिए। पहले से निर्यात PDF या PDF/LaTeX जोड़ी कंपाइलेशन में निर्यात चलाए बिना शामिल की जा सकती है।

क्या LaTeX के लिए ग्राफ़ स्क्रीनशॉट ट्रेस करूँ? संख्यात्मक प्लॉट डेटा और प्लॉटिंग स्रोत से फिर बनाएँ। केवल उपयुक्त चित्रण में संपादन योग्य स्रोत गायब हो तो ट्रेस करें और लेबल अलग रखें।

स्रोत

  1. CTAN — SVG पैकेज — स्वचालित Inkscape निर्यात और अलग LaTeX रेंडर टेक्स्ट।
  2. Inkscape — PDF फ़ाइल निर्यात — PDF प्रतियाँ, टेक्स्ट परिणाम चुनाव, फ़िल्टर प्रभाव और निर्यात क्षेत्र।
  3. Overleaf — छवियाँ शामिल करने का LaTeX कोड — graphicx पैकेज और ग्राफ़िक्स समावेशन कमांड।
  4. CTAN — SVG तथा Inkscape कार्यप्रवाह अवलोकन — दस्तावेज़ टाइपोग्राफ़ी के लिए PDF तथा LaTeX तरीका।
  5. Falk Hanisch और Philip Ilten — svg पैकेज मैनुअल — पहले निर्यात फ़ाइल समावेशन, स्वचालित निर्यात आवश्यकताएँ और टेक्स्ट रेंडरिंग विकल्प।

लेबल टाइपसेट करने का तरीका चुनें, फिर दस्तावेज़ में एक पूरा फ़िगर सत्यापित करें। केवल रास्टर चित्र बचे तो वेक्टर चित्र का संभावित संस्करण तैयार करें, आकार देखें, लेबल अलग वापस रखें और संयुक्त PDF जाँचें।

Blog से और

ऐसे साफ़ SVG से शुरुआत करें
जिसे एडिट करना आसान हो