Flaggen
Flaggen
Das Paket enthält 256 SVG-Länderflaggen, minifiziert und als Strings eingebettet. Flaggen sind nach ISO 3166-1 Alpha-2-Ländercodes indiziert.
SVG-Flaggen
Eine Flagge nach Ländercode abrufen
svg, ok := intl.GetFlag("US")
if ok {
fmt.Println(len(svg)) // SVG-Markup-Länge
}
// Oder direkt auf die Map zugreifen
svg = intl.Flags["US"]SVG-Flaggen rendern
Die SVG-Strings können direkt in Ihrer Anwendung verwendet werden:
// In ein HTML-Template schreiben
fmt.Fprintf(w, `<div class="flag">%s</div>`, intl.Flags["NO"])
// In eine Datei speichern
os.WriteFile("flag.svg", []byte(intl.Flags["NO"]), 0644)Emoji-Flaggen
Emoji-Flaggen werden aus Ländercodes mithilfe regionaler Indikatorsymbole generiert.
code := intl.CountryUS
fmt.Println(code.EmojiFlag())
code = intl.CountryNO
fmt.Println(code.EmojiFlag())Sprachflaggen
Sprachen können über ihren defaultFlagCode eine repräsentative Flagge haben.
lang, ok := intl.LanguageByCode("fr")
if ok && lang.DefaultFlagCode != "" {
flag, flagOk := intl.GetFlag(lang.DefaultFlagCode)
if flagOk {
// Die französische Flagge als SVG verwenden
}
}Alle verfügbaren Flaggen
Über alle verfügbaren Flaggen iterieren:
for code, svg := range intl.Flags {
fmt.Printf("%s: %d bytes\n", code, len(svg))
}