एसवीजी और व्यूबॉक्स मान


14

अगर किसी को पता है कि viewBoxमूल्यों (अर्थात viewBox="a b c d") का निर्धारण कैसे किया जाता है तो मैं बस उत्सुक हूं ।

मैं, इंकस्केप की एसवीजी कार्यक्षमता को समझने के लिए कोशिश कर रहा हूँ तो क्या मेरे द्वारा की गई इंकस्केप में एक दस्तावेज है कि बनाई गई है 100pxएक्स 100px, व्यूपोर्ट के बाईं ओर से एक रेखा खींची (यानी 0दाईं ओर क्षैतिज मूल्य) (यानी 100क्षैतिज मूल्य) ।

अजीब है, तथापि, जब मैं एक सादा एसवीजी फ़ाइल के रूप में इस दस्तावेज़ को बचाने, और फिर एक पाठ संपादक में फ़ाइल खोलने, viewBoxमूल्यों की तैयारी में हैं viewBox="0 0 26.458333 26.458334"के बजाय, कहते हैं, viewBox="0 0 100 100"

क्या किसी को पता है कि इन मूल्यों ( 0 0 26.458333 26.458334) का निर्धारण कैसे किया जाता है, और क्यों उनके और व्यूपोर्ट आयामों के बीच कोई संबंध नहीं है?

पीएस मुझे पता है कि आप viewBoxदस्तावेज़ विकल्पों में मैन्युअल रूप से संपत्ति को संपादित कर सकते हैं, लेकिन मैं अभी भी उत्सुक हूं कि इंकस्केप उन्हें फंकी मूल्यों के लिए क्यों सेट करता है।

जवाबों:


19

इंकस्केप आपके दस्तावेज़ के लिए डिफ़ॉल्ट प्रदर्शन-इकाई या उपयोगकर्ता-इकाई के रूप में मिमी का उपयोग करता है । उपयोगकर्ता-इकाइयों का उपयोग SVG फ़ाइल में मानों को संग्रहीत करने के लिए किया जाता है।

<svg width="100" height="100" viewBox="0 0 26.458333 26.458333">

यह टैग एक आरेखण आकार का वर्णन करता है 100px x 100px। व्यूबॉक्स विशेषता को परिभाषित करता है जो 100px x 100pxइसके बराबर है 26.458333 x 26.458333 user units

एसवीजी स्केल फैक्टर होगा 1px / 0.2645 user-unit, जिसका उपयोग एसवीजी रेंडरर द्वारा उन सभी मूल्यों को परिवर्तित करने के लिए किया जा सकता है जो उपयोगकर्ता-इकाइयों में वास्तविक दुनिया के ड्राइंग आयामों में संग्रहीत हैं ।


इस मामले में इंकस्केप मूल्यों को संग्रहीत करना चाहता है mm, इसलिए यह जानना होगा कि इसका pxसंबंध किस प्रकार है mmसीएसएस विनिर्देश का वर्णन करता है कि पूर्ण लंबाई इकाइयों एक दूसरे के संबंध में निर्धारित किया जाता है:96px = 1in

इसका मतलब है की 100px = 1.041666667in = 2.645833333cm = 26.45833333mm

तो वहीं से 26.45833333आता है।


यदि आप चाहते हैं कि Inkscape आपके सभी मूल्यों को संग्रहीत करे px, तो आप दस्तावेज़ गुणों में डिफ़ॉल्ट प्रदर्शन इकाइयों या उपयोगकर्ता-इकाइयों को बदल सकते हैं px(फ़ाइल> दस्तावेज़ गुण> टैब: पृष्ठ> सामान्य> प्रदर्शन इकाइयाँ)

  1. डिफ़ॉल्ट, मिमी:

दस्तावेज़ गुण मिमी

  1. परिवर्तित: px:

दस्तावेज़ गुण px

उसी दस्तावेज को निर्यात करने से निम्नलिखित एसवीजी टैग का परिणाम होगा:

<svg width="100" height="100" viewBox="0 0 100 100">

अब SVG स्केल फैक्टर है 1px / 1 user-unit

यदि आप इस विषय के बारे में अधिक जानना चाहते हैं, तो इंकस्केप विकी में अधिक विस्तृत विवरण है

टिप्पणियों:

  • Inkscape v0.92 96px/in, Inkscape v0.91 के संबंध का उपयोग करता है , और पहले इसका उपयोग करता था90px/in

वाह। बहुत ही रोचक। तो वहाँ एक कविता और कारण था। अपने ज्ञान को साझा करने के लिए बहुत बहुत धन्यवाद!
ओल्डबॉय

मैं आपके द्वारा उपयोग की जाने वाली व्हाइटआउट तकनीक को याद करने जा रहा हूं। मैं सामान्य रूप से स्क्रीनशॉट के महत्वपूर्ण हिस्से के चारों ओर लाल वर्गों में कहें, तुम्हारा है तो बहुत अच्छा।
आआआआआआआ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.