1

我需要将 jpeg 图像导入带有相关元数据的 WP7/XNA 应用程序。管理这些图像的程序导出到带有 jpg 文件的编码字节 [] 的 XML 文件。

我编写了一个自定义导入器/处理器,它成功地将重新序列化的对象导入到我的 XNA 项目中。

我的问题是,鉴于 jpg 的字节 [],将其转换回 Texture2D 的最佳方法是什么。

// 'Standard' method for importing image
Texture2D texture1 = Content.Load<Texture2D>("artwork"); // Uses the standard Content processor "Texture - XNA Framework" to import an image.

// 'Custom' method
var myCustomObject = Content.Load<CompiledBNBImage>("gamedata"); // Uses my custom content Processor to return POCO "CompiledBNBImage"
byte[] myJPEGByteArray = myCustomObject.Image; // byte[] of jpeg
Texture2D texture2 = ???? // What is the best way to convert myJPEGByteArray to a Texture2D?

非常感谢您的帮助。:-)

DS

4

1 回答 1

1

要回答您问题的第一部分,您将创建一个 Texture2D 实例,然后通过 SetData() 方法用颜色信息填充它。只要确保构造函数中的尺寸正确。

Texture2D tex = new Texture2D(graphics, 100, 100);
tex.SetData(byteArray);

第二部分和潜在的棘手部分是确保字节数组的格式适合 SetData() 方法,尽管试一试;它可能只以当前格式工作。:)

于 2012-04-01T21:55:08.280 回答