2009-12-17 12 views
6

में ड्राइंग एसवीजी छवियों को मुझे SVG छवियों को खींचने में सक्षम होना चाहिए (स्केल करने की क्षमता के साथ, और 90,180 और 270 डिग्री से छवियों को घुमाएं)।WxWidgets

मैं छवियों को एक बिटमैप (उदाहरण के लिए प्रदर्शित करने के लिए) को प्रतिपादित करने की बजाय, एक नई एसवीजी छवि (एसवीजी को "दस्तावेज़" निर्यात करने में सक्षम होने के लिए) की क्षमता भी चाहता हूं।

wxwidgets में एसवीजी क्षमताओं में कोई भी अंतर्निहित प्रतीत नहीं होता है, इसलिए मुझे यकीन नहीं है कि ऐसी कार्यक्षमता जोड़ने पर कैसे आगे बढ़ना है।

+0

छोटा नोट। एसवीजी की सीमाओं को जानें। मैंने एक बार बड़े पैमाने पर बाउंस आरेख बनाने के लिए एक कार्यक्रम लिखा था जिसमें सिमुलेशन लॉग फ़ाइल को पार्स करने के आधार पर दर्जनों एजेंट एक दूसरे से बात कर रहे थे, केवल यह पता लगाने के लिए कि जब आप बड़ी एसवीजी फाइलें बनाते हैं तो एसवीजी फ़ायरफ़ॉक्स और आईई में बहुत धीमी है। मैं एक क्यूटी कैनवास पर अपनी सामग्री खींचने के लिए बदल गया, और यह कोई समस्या के साथ भाग गया। (मुझे एहसास है कि QT/wxWidgets ब्राउज़र में एम्बेड नहीं होता है, इसलिए यह आपके मामले के लिए काम नहीं कर सकता है।) –

+3

मैं एक डेस्कटॉप एप्लिकेशन लिख रहा हूं, हालांकि आप एक वैकल्पिक वेक्टर ग्राफिक्स प्रारूप के बारे में जानते हैं जिसे मैं wxwidgets में उपयोग कर सकता हूं और इसका अच्छा समर्थन है छवि संपादन सॉफ्टवेयर में सुझावों के लिए खुला है। –

+0

+1 * एसवीजी * को समझाने के लिए एक लिंक शामिल करने के लिए। –

उत्तर

0

आप wxSVGFileDC (http://docs.wxwidgets.org/trunk/classwx_s_v_g_file_d_c.html) का उपयोग कर एसवीजी प्रारूप में एक फ़ाइल में प्रदान कर सकते हैं लेकिन SVG चित्र खींचने के लिए कोई समर्थन नहीं है, तो आप लायब्रेरी प्रतिपादन एक एसवीजी का उपयोग करें और wx के साथ एकीकृत करने की आवश्यकता होगी (कैसे करना है इस platform- है है निर्भर)।

ध्यान दें कि wxSVGFileDC contrib में है, यानी एक अतिरिक्त लाइब्रेरी जिसे wx 2.8 में स्वतंत्र रूप से बनाया जाना चाहिए, लेकिन मुख्य लाइब्रेरी में 2.9 में है।

0

मुझे यकीन नहीं है कि यह समाधान कितना व्यावहारिक है, लेकिन आपके विचार में wxWebKit एम्बेड करना और फिर WebKit's SVG support पर भरोसा करना आपके लिए प्रतिपादन करने के लिए भरोसा कर सकता है।

4

cairo library websiteexampleslibrsvg का उपयोग कर एसवीजी ड्राइंग पर examples है।

दोनों काहिरा और librsvg पुस्तकालयों पर्याप्त है कि तुम क्या जरूरत है ऐसा करने के लिए पार मंच होना चाहिए, और wxcairo साथ यह उनके wxWidgets पर डॉक करने के लिए संभव हो जाना चाहिए।

यह पहला विचार है जब मैं wxwidgets में एसवीजी ड्राइंग के कार्य का सामना करते समय अनुसंधान करता हूं।

इसके अलावा, काहिरा साथ SVG फ़ाइलें करने के लिए ड्राइंग काफी आसान होता है जब आप काहिरा के साथ अपने सभी ड्राइंग कर रहे हैं वैसे भी, और ड्राइंग मॉडल काहिरा का उपयोग करता है काफी एसवीजी के समान है।

संबंधित मुद्दे