Icon Collection.
A collection of Microsoft Icons.
Meta Data
Column Name |
Data |
Description |
Name |
Icon Collection |
Name of the Pack |
Shortcode |
icon-collection |
Shortcode of the pack used for filtering |
Github Link |
https://github.com/benc-uk/icon-collection |
Github Repository Link |
Total |
|
Total Number of Icons |
Author |
Ben Coleman |
Author of the Icon Pack |
Author Link |
https://github.com/benc-uk |
Link to the Author |
Icon SVG |
|
SVG for the Pack Logo, or |
Logo |
use favicon.png |
PNG or JPG for the Pack Logo |
Icons CSV |
|
CSV FIle of the Icons |
Has Categories |
Yes |
Are categories used to group icons within a pack. |
Transformations
Name |
Transform From |
Transform To |
|
|
|
PowerShell Script to create the csv from the repository.
$counter = 1
$file = "D:iconcollection-20250429.csv"
write-host "Saving Icon Collection Icons"
$setName = "icon-collection"
$path = "D:icon-collectionzure-cds*.svg"
$icons = get-childitem -File $path -recurse
ForEach($icon in $icons){
[string]$svg = Get-Content $icon.FullName;
[string]$path = $icon.Name.Split('-')[0]
$TextInfo = (Get-Culture).TextInfo
$string = $icon.Name.Replace(".svg","").Replace("-"," ").Replace($path,"")
# Capitalize the first letter of each word
$name = $TextInfo.ToTitleCase($string.ToLower())
$objResults = New-Object PSObject -Property @{
pp_id = $counter;
pp_name = $name.Trim()
pp_svg = $svg.Replace("""","'");
pp_pack = $setName
pp_size = "18"
pp_category = $path
}
$counter++
$objResults | Export-CSV $file -Append -NoTypeInformation -force
}
# Azure Docs
$path = "D:icon-collectionzure-docs*.svg"
$icons = get-childitem -File $path -recurse
ForEach($icon in $icons){
[string]$svg = Get-Content $icon.FullName;
$path = $icon.DirectoryName.Split('')[-1]
$TextInfo = (Get-Culture).TextInfo
$string = $icon.Name.Replace(".svg","").Replace("-"," ")
# Capitalize the first letter of each word
$name = $TextInfo.ToTitleCase($string.ToLower())
$objResults = New-Object PSObject -Property @{
pp_id = $counter;
pp_name = $name.Trim()
pp_svg = $svg.Replace("""","'");
pp_pack = $setName
pp_size = "18"
pp_category = $path
}
$counter++
$objResults | Export-CSV $file -Append -NoTypeInformation -force
}
# Azure Docs
$path = "D:AppzIconManagerPacksicon-collectionzure-icons*.svg"
$icons = get-childitem -File $path -recurse
ForEach($icon in $icons){
[string]$svg = Get-Content $icon.FullName;
$path = $icon.DirectoryName.Split('')[-1]
$TextInfo = (Get-Culture).TextInfo
$string = $icon.Name.Replace(".svg","").Replace("-"," ")
# Capitalize the first letter of each word
$name = $TextInfo.ToTitleCase($string.ToLower())
$objResults = New-Object PSObject -Property @{
pp_id = $counter;
pp_name = $name.Trim()
pp_svg = $svg.Replace("""","'");
pp_pack = $setName
pp_size = "18"
pp_category = $path
}
$counter++
$objResults | Export-CSV $file -Append -NoTypeInformation -force
}
# Azure Patterns
$path = "D:icon-collectionzure-patterns*.svg"
$icons = get-childitem -File $path -recurse
ForEach($icon in $icons){
[string]$svg = Get-Content $icon.FullName;
$path = $icon.DirectoryName.Split('')[-1]
$TextInfo = (Get-Culture).TextInfo
$string = $icon.Name.Replace(".svg","").Replace("-"," ")
# Capitalize the first letter of each word
$name = $TextInfo.ToTitleCase($string.ToLower())
$objResults = New-Object PSObject -Property @{
pp_id = $counter;
pp_name = $name.Trim()
pp_svg = $svg.Replace("""","'");
pp_pack = $setName
pp_size = "18"
pp_category = $path
}
$counter++
$objResults | Export-CSV $file -Append -NoTypeInformation -force
}
# Logos
$path = "D:icon-collectionlogos*.svg"
$icons = get-childitem -File $path -recurse
ForEach($icon in $icons){
[string]$svg = Get-Content $icon.FullName;
$path = $icon.DirectoryName.Split('')[-1]
$TextInfo = (Get-Culture).TextInfo
$string = $icon.Name.Replace(".svg","").Replace("-"," ")
# Capitalize the first letter of each word
$name = $TextInfo.ToTitleCase($string.ToLower())
$objResults = New-Object PSObject -Property @{
pp_id = $counter;
pp_name = $name.Trim()
pp_svg = $svg.Replace("""","'");
pp_pack = $setName
pp_size = "18"
pp_category = $path
}
$counter++
$objResults | Export-CSV $file -Append -NoTypeInformation -force
}
# Logos
$path = "D:icon-collectionother*.svg"
$icons = get-childitem -File $path -recurse
ForEach($icon in $icons){
[string]$svg = Get-Content $icon.FullName;
$path = $icon.DirectoryName.Split('')[-1]
$TextInfo = (Get-Culture).TextInfo
$string = $icon.Name.Replace(".svg","").Replace("-"," ")
# Capitalize the first letter of each word
$name = $TextInfo.ToTitleCase($string.ToLower())
$objResults = New-Object PSObject -Property @{
pp_id = $counter;
pp_name = $name.Trim()
pp_svg = $svg.Replace("""","'");
pp_pack = $setName
pp_size = "18"
pp_category = $path
}
$counter++
$objResults | Export-CSV $file -Append -NoTypeInformation -force
}
write-host "Finished"