[英]getting image from a picturebox
如何獲得在畫框上繪制的圖像? 在我的應用程序中,我用手繪圖創建了一個表單。但是我無法將繪制的圖像保存為文件,但出現錯誤消息“對象引用未設置為對象的實例”。我正在使用碼
me.picturebox1.image.save(filename,sysytem.....jpeg)
任何人都知道請幫助我...謝謝
我將假定您從不分配PictureBox
的Image
屬性,而是直接在從PictureBox控件檢索的Graphics
對象上執行繪圖命令。 在這種情況下,執行繪圖時, Image
屬性將保持Nothing
/ null
。 若要解決此問題,請在初始化PictureBox
控件時將一個空圖像分配給Image
屬性:
myPictureBox.Image = New Bitmap(myPictureBox.ClientSize.Width, _
myPictureBox.ClientSize.Height)
然后,當您要執行一些繪圖時,請使用Image
的Graphics
對象而不是PictureBox
:
Using g As Graphics = Graphics.FromImage(myPictureBox.Image)
' do the drawing '
End Using
使用這種方法,您只需在PictureBox.Image
對象上調用Save
就可以像在當前代碼中一樣保存圖像。
您的代碼似乎沒有本質上的錯誤(除非問題出在參數之一)。 PictureBox.Image.Save()
確實有效!
PictureBox可能會顯示圖像,但是它所引用的Image
對象已經被釋放。 您可以通過首先實現對可空性的檢查來擺脫對象引用錯誤:
If picturebox1.Image isnot Nothing Then
...
End If
另外,您應該檢查繪制Image的代碼...它是否按預期方式處理了引用?
我嘗試了類似的操作。
pictureBox1.Image.Save("C:\\tempStack.jpg", ImageFormat.Jpeg);
原因可能是未設置pictureBox1(非常不可能)或pictureBox1.Image。
采用
pictureBox1.Load("")
在嘗試保存之前加載圖像。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.