लगभग हर बार जब मैं Graphics.DrawRectangle
या Graphics.FillRectangle
(int
संस्करण) का उपयोग करता हूं) मुझे लगता है कि आयत की दाईं और निचली सीमा पर पिक्सेल याद आती है।FillRectangle और DrawRectangle के पिक्सेल व्यवहार
सटीक परिभाषा
Graphics.FillRectangle(brush,x,y,width,height)
और
Graphics.DrawRectangle(pen,x,y,width,height) // pen is one pixel width, i.e. width=0f
द्वारा भरा हो पिक्सल और इसके लिए एक तार्किक व्याख्या है जिनमें से क्या है? (तो मैं अंत में व्यवहार याद कर सकते हैं :) ...)
संपादित:
:
ओलेग ज़्हुक- के अद्भुत Try GDI+ आवेदन का उपयोग करना, मैं FillRectangle
और DrawRectangle
के बीच एक जिज्ञासु अंतर मिल पा रहा था FillRectangle(brush,0,0,1,1)
एक बिंदु पर (0,0) खींचता है जो किसी भी तरह समझ में आता है (यह चौड़ाई और ऊंचाई के साथ एक आयताकार है)।
DrawRectangle(pen,0,0,1,1)
दूसरी तरफ 2 से 2 पिक्सेल आयताकार खींचता है।
समान व्यवहार अन्य चौड़ाई/ऊंचाई संयोजन के लिए दिखाया गया है, DrawRectangle
हमेशा बाईं और नीचे (जो एक छोटे से परेशान जैसे है जब ClientRectangle
संपत्ति का उपयोग कर एक नियंत्रण के चारों ओर एक फ्रेम आकर्षित करने के लिए)
मेरा पहला प्रश्न हल किया गया (कैसे वे व्यवहार करते हैं ...) अभी भी दूसरा है: क्यों क्या वे इस तरह से व्यवहार करते हैं?
मेरे हटाए गए उत्तर के बारे में खेद है - यह देर हो चुकी थी (मेरे शरीर की घड़ी से) और मैं ठीक से नहीं पढ़ रहा था, बस निष्कर्ष पर कूद रहा था। – Steve314