मैं (यहाँ शामिल है इंजन नहीं प्रस्तुत करना exept शुद्ध क्यूटी एक ...) एक QPixmap
में सीधे drawRoundedRect
विधि के साथ एक दौर आयत बनाने के लिए प्रयास करते हैं, मैं दोगुना मेरी पिक्समैप के आकार की तुलना में आयत के आकार की जांच:क्यूटी दौर आयत, क्यों कोनों अलग हैं?
Pixmap : QSize(50, 73)
Rectangle: QRect(0,0 48x11)
पर्याप्त जगह देखें ...
संपादित करें: कुछ कोड
pixmap = QPixmap(50,73); //example size that match my case
QRectF rect(0,0,48,11);
QPainter painter(&pixmap);
painter.setRenderHint(QPainter::TextAntialiasing);
painter.setWorldMatrixEnabled(false);
painter.setPen(QPen()); //no pen
painter.setBrush(QBrush(color));
painter.drawRoundedRect(rect, 2.0, 2.0);
- मैं विकलांग दुनिया परिवर्तन ...
- मैं एकता के लिए परिवर्तन सेट सेट ...
- मैं कई त्रिज्या (1.0,2.0,3.0,4.0) की कोशिश की ...
- मैं कलम चौड़ाई, ब्रश रंग बदलने ...
लेकिन यह हमेशा 4 अलग कोनों के साथ एक rectamgle के साथ समाप्त होता है! कि जैसा:
मैं सीधे ouptut एक फाइल करने के लिए पिक्समैप यकीन है कि मैं प्रदर्शन ... एक ही आकार के दौरान यह स्क्रैप नहीं किया गया हो।
कोई भी छोटे त्रिज्या के साथ क्यूटी दौर आयताकार के बारे में जानता है? मैंने बहुत समय पहले इसके बारे में कुछ देखा लेकिन मुझे याद नहीं है कि इससे कैसे निपटें!
मैंने सामान खींचने के लिए अन्य तरीकों को एंटीअलाइजिंग के साथ खेला (ड्रवा पथ, आर्क ...)। इस तरह की छोटी चीजों के साथ Antialiasing इसे लायक बनाओ! और मेरा सबसे अच्छा शॉट ~ 0.5 हर जगह जोड़ रहा था जहां कताई अजीब व्यवहार पैदा कर सकती है ... तो मैं संख्या ** विधि के साथ ** खेल स्वीकार करूंगा! – vrince
एक ही समस्या थी। 'QPainter पी (यह) का उपयोग करना; p.setRenderHint (QPainter :: एंटीएलियासिंग); पी.सेट रेन्डरहिंट (क्यूपेन्टर :: हाईक्यूविटीएन्टियालाइजिंग); 'मेरे लिए चाल थी। –
बदलते पेन चौड़ाई जादू करता है !! – Ashish