Penukaran antara imej dan tatasusunan bait
Soalan: Bagaimana untuk menukar imej kepada tatasusunan bait, dan bagaimana untuk menukar tatasusunan bait kembali kepada imej?
Jawapan:
Untuk menukar imej kepada tatasusunan bait, anda boleh menggunakan kod contoh berikut:
<code class="language-csharp">public byte[] ImageToByteArray(System.Drawing.Image imageIn) { using (var ms = new MemoryStream()) { imageIn.Save(ms, imageIn.RawFormat); return ms.ToArray(); } }</code>
Kod ini menggunakan MemoryStream
untuk menyimpan imej dan kemudian menukarnya kepada tatasusunan bait.
Untuk menukar tatasusunan bait kembali kepada imej, anda juga boleh menggunakan kelas seperti ini:
<code class="language-csharp">public class ImageConverter { public ImageConverter() { } public Image ByteToImage(byte[] byteArrayIn) { using (var ms = new MemoryStream(byteArrayIn)) { Image returnImage = Image.FromStream(ms); return returnImage; } } public byte[] ImageToByte(Image imageIn) { using (var ms = new MemoryStream()) { imageIn.Save(ms, ImageFormat.Png); // 指定保存格式为PNG return ms.ToArray(); } } }</code>
Kod ini menyediakan cara yang lebih berstruktur untuk melakukan penukaran antara imej dan tatasusunan bait dan secara eksplisit menyatakan format imej disimpan sebagai PNG. Anda boleh mengubah suai ImageFormat
untuk memilih format lain, seperti JPEG atau GIF, jika perlu.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Imej kepada Tatasusunan Byte dan Kembali?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!