10

将图像文件标记为嵌入式资源非常容易,但是此后如何访问图像。请问我可以有一些示例代码吗?

4

5 回答 5

12

最直接的方法:

YourProjectsBaseNamespace.Properties.Resources.YourImageResourceName
于 2008-09-30T18:15:38.987 回答
6

1)添加和编辑资源 (Visual C#)

System.Drawing.Bitmap bitmap1 = myProject.Properties.Resources.Image01; 

2)使用 GetManifestResourceStream 访问嵌入式资源

Assembly _assembly = Assembly.GetExecutingAssembly();

Stream _imageStream = 
    _assembly.GetManifestResourceStream(
    "ThumbnailPictureViewer.resources.Image1.bmp");
Bitmap theDefaultImage = new Bitmap(_imageStream);
于 2008-09-30T18:15:56.397 回答
1

查看位于http://msdn.microsoft.com/en-us/library/aa309403(VS.71).aspx的第三个代码片段

于 2008-09-30T18:14:22.563 回答
0
//Get the names of the embedded resource files;

List<string> resources = new List<string>(AssemblyBuilder.GetExecutingAssembly().GetManifestResourceNames());

//Get the stream

StreamReader sr = new StreamReader(
                AssemblyBuilder.GetExecutingAssembly().GetManifestResourceStream(
                    resources.Find(target => target.ToLower().Contains("insert name here"))

您可以从流中的位图转换。Bitmap 类有一个方法可以做到这一点。LoadFromStream 如果我没记错的话。

于 2008-09-30T18:18:17.577 回答
0

您可以尝试使用https://www.nuget.org/packages/EmbeddedResourceBrowser/库,项目页面上有代码示例(https://andrei15193.github.io/EmbeddedResourceBrowser/)。它只是为了帮助访问 .NET 应用程序中的嵌入式资源。您可以Stream阅读内容,它使浏览资源更加容易。

于 2021-07-11T11:44:53.390 回答