Menyahkod Imej Berkod Base64 dalam Go
Apabila bekerja dengan kanvas, adalah mungkin untuk mendapatkan URL data imej base64. Walau bagaimanapun, apabila cuba menyahkod imej ini menggunakan imej.DecodeConfig(), anda mungkin menghadapi ralat "Format imej tidak diketahui."
Isu ini timbul kerana URL data mengandungi maklumat tambahan di luar data imej yang dikodkan base64. Untuk menyahkod imej dengan betul, anda perlu mengalih keluar awalan:
// Remove the data URL prefix input := strings.Replace(req.PostFormValue("dataurl"), "data:image/png;base64,", "", 1)
Selain itu, anda perlu mendaftar pengendali format imej PNG sebelum memanggil imej.DecodeConfig(). Ini boleh dicapai menggunakan:
import _ "image/png"
Sebagai alternatif, anda boleh terus menggunakan png.DecodeConfig() jika anda mengetahui format imej yang tepat.
Contoh:
import _ "image/png" reader := base64.NewDecoder(base64.StdEncoding, strings.NewReader(input)) imageConfig, _, err := image.DecodeConfig(reader) if err != nil { log.Fatal(err) }
Dengan mengikuti langkah-langkah ini, anda boleh berjaya menyahkod imej berkod base64 dan memperoleh lebar dan ketinggian.
Atas ialah kandungan terperinci Bagaimana untuk Menyahkod Imej Berkod Base64 dengan Betul dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!