2012-09-28 17 views
22

मुझे सी # में छवि स्केलिंग के साथ समस्या मिली।छवि चित्र बॉक्स की स्केलिंग

मेरे पास दिए गए आकार के साथ एक चित्र बॉक्स है: उदा। चौड़ाई = 800px ऊंचाई = 600px

मुझे लगता है कि तस्वीर बॉक्स में विभिन्न छवियों को लोड कर रहा हूँ, छोटे लोगों (400x400) और बड़े लोगों (800 x 600) अगर वे में फिट नहीं बैठते

मेरी छवियाँ आकार दिया जा रहा है डिब्बा। लेकिन वे हमेशा चित्र बॉक्स की अधिकतम चौड़ाई और ऊंचाई के आकार में हैं। तो पहलू अनुपात नष्ट हो गया है।

कोई भी समस्या को पहचानने/ठीक करने में मदद कर सकता है?

क्लास:

Form1.cs

ImageHandling.cs (बाहर टिप्पणी की)

ImageUtilities.cs

उदाहरण:

समस्या 1: मेरा संस्करण
enter image description here

बनाम मूल स्रोत enter image description here

समस्या 2:
मेरे संस्करण
enter image description here

बनाम मूल स्रोत
enter image description here

मैं इसे कैसे हैं:

समाधान
enter image description here

उत्तर

46
this.PictureBox1.SizeMode = PictureBoxSizeMode.Zoom; 

सेट है कि अपने PictureBox करने के लिए संपत्ति और छवि के आकार में वृद्धि या आकार अनुपात बनाए रखने PictureBox फिट करने के लिए की कमी हुई होगी।

अधिक जानकारी के लिए: http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.sizemode.aspx

+1

अब यह धन्यवाद काम करता है! मैंने अपनी आकार बदलने की विधि हटा दी और यह काम किया। लेकिन अगर वे चित्र बॉक्स से छोटे हैं तो मेरी तस्वीरें मूल आकार में नहीं हैं। कोई उपाय? – pila

+0

तो, आपको केवल छवि का आकार बदलने की आवश्यकता है यदि यह चित्र बॉक्स से बड़ा है? और यदि आकार छोटा है तो आकार रखें? –

+0

जब मैं जिस तस्वीर को लोड करना चाहता हूं वह मेरे चित्र बॉक्स से छोटा है, तो यह "ज़ूम" होता है जैसे कि आकारमोड कहता है, लेकिन मैं इसे ज़ूम नहीं करना चाहता हूं। मैं पहलू अनुपात को रखकर इसे मूल आकार में प्रदर्शित करना चाहता हूं। – pila

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