Microsoft Office icons are copyrighted by Microsoft and this prevents us from using them in non-Microsoft applications due to their licence terms.
I\'m trying to find so
I like going to gnome-look.org and searching through the icon themes. These icon collections tend to be covered by the GPL and frequently include icons for common mimetypes (such as word and excel).
Unfortunately I've been unable to find anything that is similar to the Office icons, while being safe enough to not infinge Microsoft Copyright. There were some very good ones on DevianArt, however they looked like they'd almost been ripped off from the MS ones so we decided not to use them.
Should any come up I'll update this answer :)
Fatcow hosting has some OK ones, amongst other fantastic icons. You should include a link to their page in your credits. Not sure what "your credits" has to be but I guess the whole thing is a social & SEO ploy, if your app is on the public internet then you'll need to put it somewhere that people and search engines can find it.
For a private business app not on the public internet I guess you could bury the link fairly far down with a good conscience.
Visual studio comes with an image library containing a lot of icons that are in a similar style to Office. These are for use in any application. I am unsure of the exact copyright on them so you might want to google it.
You can find the image library zip at:
C:\program files\Microsoft Visual Studio 9.0\Common7\VS2008ImageLibrary\1033
I'm guessing you mean file icons, not the applications. As long as office is installed you can use code to load the icons at runtime e.g. GetFileIcon("doc", SHGFI_ICONSIZE_LARGE)
const uint SHGFI_ICON = 0x100;
const uint SHGFI_USEFILEATTRIBUTES = 0x10; // Use file extension not name
const uint SHGFI_ICONSIZE_SMALL = 1;
const uint SHGFI_ICONSIZE_LARGE = 0;
const uint FILE_ATTRIBUTE_NORMAL = 0;
const uint FILE_ATTRIBUTE_DIRECTORY = 16;
[StructLayout(LayoutKind.Sequential)]
struct SHFILEINFO
{
public IntPtr hIcon;
public IntPtr iIcon;
public uint dwAttributes;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)]
public string szDisplayName;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 80)]
public string szTypeName;
}
[DllImport("shell32.dll")]
private static extern IntPtr SHGetFileInfo(string pszPath, uint dwFileAttributes, ref SHFILEINFO psfi, uint cbSizeFileInfo, uint uFlags);
static System.Drawing.Icon GetFileIcon(string extension, uint size)
{
IntPtr hImgResult; //the handle to the system image list
SHFILEINFO shinfo = new SHFILEINFO();
if (string.Compare(extension,"folder",true)==0)
{
hImgResult = SHGetFileInfo("", FILE_ATTRIBUTE_DIRECTORY, ref shinfo,
(uint)Marshal.SizeOf(shinfo),
SHGFI_ICON | size);
}
else
{
hImgResult = SHGetFileInfo(extension, FILE_ATTRIBUTE_NORMAL, ref shinfo,
(uint)Marshal.SizeOf(shinfo),
SHGFI_ICON | SHGFI_USEFILEATTRIBUTES | size);
}
return System.Drawing.Icon.FromHandle(shinfo.hIcon);
}
How about the Tango Icon Library then? Also looks nice and have a wide variety of icons. They are also in png (which I believe is the best really...) but also in svg. And the pngs are in 16x16, 22x22 and 32x32 sizes.