Mencipta Bitmap daripada Byte Array dalam C#
Soalan ini telah ditanya berkali-kali sebelum ini, tetapi berikut ialah jawapan yang komprehensif untuk pemula:
Anda mempunyai imageData tatasusunan bait yang mengandungi data imej dan dimensi yang ditentukan oleh fWidth dan fHeight. Untuk menukar tatasusunan bait ini kepada imej peta bit, ikuti langkah berikut:
Cipta MemoryStream: Untuk bekerja dengan tatasusunan bait sebagai aliran data, cipta MemoryStream menggunakan ruang nama System.IO. Mulakan ia dengan tatasusunan imageData:
using System.IO; Bitmap bmp; using (var ms = new MemoryStream(imageData)) { // ... }
Instantiate a Bitmap: Gunakan lebihan pembina Bitmap(Stream stream) untuk mencipta objek Bitmap daripada MemoryStream. Ini akan memuatkan data imej ke dalam peta bit:
bmp = new Bitmap(ms);
Kini anda mempunyai Peta Bit bernama bmp yang mengandungi imej yang diwakili oleh tatasusunan bait. Anda boleh memanipulasi lagi atau menyimpan peta bit ini mengikut keperluan.
Nota:
Perlu diingat bahawa menghantar strim kosong atau tidak sah (mis., satu yang mengandungi data bukan imej ) akan membawa kepada ArgumentException dilemparkan. Pastikan data dalam tatasusunan bait mematuhi format imej yang diiktiraf oleh kelas Bitmap (seperti JPEG atau PNG).
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Bitmap daripada Array Byte dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!