我可以在我的应用程序中使用Microsoft Office图标的替代方法吗?

时间:2009-06-04 09:24:19

标签: icons

Microsoft Office图标的版权归Microsoft所有,但由于其许可条款限制,我们无法在非Microsoft应用程序中使用它们。

我正在尝试找到一些替代Microsoft Office图标,其许可证允许在商业应用程序中使用。关于图标的一个重要事项是,任何看到它们的人都应该能够立即识别它们所代表的内容(例如Excel)。

有没有人知道任何替代图标并且有链接到它们?

9 个答案:

答案 0 :(得分:6)

当然,不要像办公室图标一样 ,如果他们这样做,他们将成为受版权保护的办公室图标,而不是替代,但我个人喜欢Silk Icon集。它是免费的,包含许多漂亮且有用的图标。

这是所有图标中的preview

对于代表excel文档等的图标,您可以使用page_white_excel图标。认为那里应该有一些更通用的电子表格图标,但现在找不到它......

答案 1 :(得分:1)

Visual Studio附带了一个图像库,其中包含许多与Office类似的图标。这些适用于任何应用程序。我不确定它们的确切版权,所以你可能想谷歌。

您可以在以下网址找到图片库:

C:\ program files \ Microsoft Visual Studio 9.0 \ Common7 \ VS2008ImageLibrary \ 1033

答案 2 :(得分:1)

你可以看看Deviant Art:

Office icons

但是,那里提出的建议可能已经打破了微软的许可证。

答案 3 :(得分:1)

我猜你的意思是文件图标,而不是应用程序。只要安装了office,您就可以使用代码在运行时加载图标,例如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);
    }

答案 4 :(得分:1)

那么Tango Icon Library怎么样?看起来也不错,有各种各样的图标。他们也在png(我相信这是最好的...),但也在svg。 png的尺寸分别为16x16,22x22和32x32。

答案 5 :(得分:0)

答案 6 :(得分:0)

不幸的是,我一直无法找到任何类似于Office图标的内容,同时又足够安全,不会侵犯Microsoft版权。 DevianArt上有一些非常好的,但看起来他们几乎被从MS中扯掉了所以我们决定不使用它们。

如果有任何问题我会更新这个答案:)

答案 7 :(得分:0)

Fatcow hosting有一些好的,还有其他精彩的图标。您应该在学分中包含指向其页面的链接。不确定“你的学分”是什么,但我想整个事情是社交和SEO策略,如果你的应用程序在公共互联网上,那么你需要把它放在人们和搜索引擎可以找到它的地方。

对于不在公共互联网上的私人商业应用程序,我猜你可以用良心将这个链接埋得相当远。

答案 8 :(得分:0)

我喜欢前往gnome-look.org并搜索图标主题。这些图标集合往往由GPL涵盖,并且经常包含常见mimetypes的图标(例如word和excel)。