有没有办法获取My.Resources.myImg.GetFilePath
类型的文件路径?
类似的东西:
GetFilePath(My.Resources.myImg)
或
0x08
显然我上面的例子不存在。我只是表明我的意图。
答案 0 :(得分:0)
我不确定资源是否有路径,我认为它们已经嵌入到应用程序中,然后读入内存(我可能错了)。< / p>
如果您希望他们拥有路径,您必须将其保存到文件中。这会将图像保存在Local Application Data文件夹中:
Dim MyImgPath As String = IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "myImg.bmp")
My.Resources.myImg.Save(MyImgPath, Imaging.ImageFormat.Bmp)
如果要将图像保存在与应用程序相同的文件夹中:
Dim MyImgPath As String = IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory(), "myImg.bmp")
答案 1 :(得分:0)
您可能想要创建自己的对象:
Public Class MyBitmap
Inherits Bitmap
Private _FilePath As String
'------------------------'
Public Property FilePath as String
Get
Return _FilePath
End Get
' etc...
您可以设置路径并稍后从属性
获取答案 2 :(得分:0)
很明白这是不可能的,因为有很多方法可以初始化System.Drawing.Bitmap(例如:Stream,Uri,另一个图像对象),这个Bitmap是一个非常通用的对象。
根据您使用的技术,可能会有更专业的图像类型,最好使用。例如,如果您正在使用WPF,请查看 BitmapImage ,它将文件路径存储为属性 UriSource 。
如果您确实需要使用System.Drawing.Bitmaps,我建议您创建一个包含位图和文件路径的模型。像这样:
{
public Bitmap MyImage {get; set; }
public string FilePath {get; set; }
}