{"id":38716854,"url":"https://github.com/orcastor/fico","last_synced_at":"2026-01-17T11:04:15.812Z","repository":{"id":222167491,"uuid":"756233505","full_name":"orcastor/fico","owner":"orcastor","description":"🔬【FileICOn】从文件提取图标（支持图片[bmp/gif/jpg/jpeg/jp2/jpeg2000/png/tiff]、图标[ico/icns]、Windows可执行文件[exe/dll]、资源文件[mui/mun]、Linux可执行文件[*.desktop{*.AppImage/*.run}]、手机应用安装包[apk/ipa]、Windows文件夹图标[autorun.inf/desktop.ini]、MacOSX程序[*.app]）Extract icon from file or directory.","archived":false,"fork":false,"pushed_at":"2024-11-17T15:04:09.000Z","size":325,"stargazers_count":13,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-22T06:37:04.327Z","etag":null,"topics":["dll","exe","icns","ico","icon","icon-extractor","image","pe","png","zip"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/orcastor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-02-12T08:51:44.000Z","updated_at":"2025-02-14T06:05:36.000Z","dependencies_parsed_at":"2025-04-29T19:37:22.625Z","dependency_job_id":"8a7a6ef8-4a27-41e8-90d8-ee579dd02526","html_url":"https://github.com/orcastor/fico","commit_stats":{"total_commits":35,"total_committers":1,"mean_commits":35.0,"dds":0.0,"last_synced_commit":"24cd61a770afa0434c1f18d31b0b8a17b603f0e8"},"previous_names":["orcastor/f2ico","orcastor/fico"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/orcastor/fico","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orcastor%2Ffico","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orcastor%2Ffico/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orcastor%2Ffico/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orcastor%2Ffico/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/orcastor","download_url":"https://codeload.github.com/orcastor/fico/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orcastor%2Ffico/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28506593,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T10:25:30.148Z","status":"ssl_error","status_checked_at":"2026-01-17T10:25:29.718Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dll","exe","icns","ico","icon","icon-extractor","image","pe","png","zip"],"created_at":"2026-01-17T11:04:15.723Z","updated_at":"2026-01-17T11:04:15.788Z","avatar_url":"https://github.com/orcastor.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://orcastor.github.io/doc/\"\u003e\n    \u003cimg src=\"https://orcastor.github.io/doc/logo.svg\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003e\u003cstrong\u003e🔬 FileICOn\u003c/strong\u003e \u003ca href=\"https://github.com/orcastor/addon-previewer\"\u003e@orcastor-previewer\u003c/a\u003e\u003c/h1\u003e\n\n### 支持文件\n\n- 图片（bmp、gif、jpg、jpeg、jp2、jpeg2000、png、tiff）\n- 图标（![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/WIN.png) ico、![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/MAC.png) icns）\n- ![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/WIN.png) Windows可执行文件（exe、dll）、资源文件（mui、mun）\n- ![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/LIN.png) Linux可执行文件（\\*.desktop【\\*.AppImage、\\*.run】）\n- 📱 手机应用安装包（![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/AND.png) apk包、![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/IOS.png) ipa包）\n- ![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/WIN.png) 文件夹图标（autorun.inf、desktop.ini）\n- ![](https://raw.githubusercontent.com/drag-and-publish/operating-system-logos/master/src/16x16/MAC.png) MacOSX程序（\\*.app）\n\n### 特性列表\n\n- [x] 特性：获取信息和图标方法剥离\n  - [x] 支持desktop.ini中IconResource的配置\n- [x] 特性：支持获取png格式的图标\n- [x] 特性：PE文件无图标的默认图标逻辑\n- [x] 特性：PE文件获取图标的index逻辑\n  - [x] 支持index为负数是资源id的逻辑\n- [x] 特性：支持icns转换ico逻辑\n- [x] 特性：指定尺寸缩放逻辑\n- [x] 特性：指定尺寸图标匹配逻辑\n- [x] 特性：支持应用图标获取（参考：[fabu-dev/fabu](https://github.com/fabu-dev/fabu/blob/46befc46011d9cb9683ea467a9db126ba591004b/api/pkg/parser/parser.go#L88)）\n  - [x] 混淆后的apk获取图标\n  - [x] ipa获取图标逻辑\n- [x] 修复：dll加载不到图标问题\n  \u003e 答: 在早期的 Windows 版本中，图标资源文件嵌入到目录中的某些 DLL 中C:\\Windows\\System32。自 Windows 10 版本 1903 起，它们已重新定位到： C:\\Windows\\SystemResources. 现在这些文件有一个新的扩展名，.mun而不是.mui （仍然存在于system32和syswow64子文件夹中。\n  - **目前需要手动转成指定mun、mui资源文件获取图标**\n- [x] 修复：低于256宽度图标格式转换为PNG的支持（先转换为32位位图）（参考：[获取exe *.ico文件中所有size的图片](https://stackoverflow.com/questions/16330403/get-hbitmaps-for-all-sizes-and-depths-of-a-file-type-icon-c)）\n- [x] 修复：获取准确的高度（BITMAPINFOHEADER中2倍高度掩码数据）\n- [x] 修复：裁剪掉透明边缘（48x48的位图，实际只有32x32是不透明的）\n- [x] 修复：默认图标获取其中的一个尺寸\n- [x] 修复：RGBQUAD的Alpha通道为保留数据\n- [x] 修复：类似150x160这种非长宽相等的图标\n\n### 如果要更新assets下的默认图标\n\n#### 安装 go-bindata 工具：\n\u003e go install -u github.com/go-bindata/go-bindata/...\n\n#### 使用 go-bindata 将资源文件转换为 Go 代码：\n\u003e go-bindata -o assets.go -pkg fico assets/...","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forcastor%2Ffico","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Forcastor%2Ffico","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forcastor%2Ffico/lists"}