我为Windows和macOS编写了一个应用程序,我正在将它移植到Linux上。我的应用程序有一个文件浏览器实现,可以显示缩略图或文件图标的文件。
在Windows上,我可以通过shell扩展访问文件缩略图(如果没有缩略图支持,可以访问文档图标)。
在MacOS上,我可以通过QuickLook生成缩略图(或文档图标)。
在Linux上,该怎么做.
1...生成一个缩略图,例如用于JPEG,PNG 2.如果没有缩略图可用,可以提取文件的文档图标吗?
谢谢!
发布于 2022-06-11 12:00:02
您需要像塔布勒这样的大拇指钉守护进程。
它是一个守护进程,因此独立于您的程序运行,并为您的文件生成缩略图。您的程序可以使用DBus连接到它,然后可以向守护进程发送请求以生成新的thumnails。已经生成的缩略图可以在“缩略图管理DBus规范”标准指定的路径中找到。我不知道基于QT的环境是否遵循相同的标准,还是有自己的机制。
对于“回退”,您应该使用图标查找的免费标准和免费的mime数据库来模拟猜测文件。根据您使用的语言,通常可以找到一个为您实现这些标准的库,xgd-utils中也有一个命令行工具作为这些标准的参考实现。遗憾的是,存储用户首选图标主题名称的方法根本没有标准化,每个DE都有不同的解决方案。
很抱歉,这是谷歌搜索的第一个结果。
发布于 2021-06-12 15:22:41
1...生成缩略图,例如用于JPEG、PNG
我想不出Linux的任何API都可以用于这个目的。GTK/Qt/FLTK/启蒙运动有着广泛不同的图像库。理论上,您可以将libpng/libjpeg-turbo/libtiff和其他类似的库用于其他格式,然后使用自己的算法调整大小。
2...如果没有缩略图可用,可以提取文件的文档图标吗?
对不起,我不明白这个问题。
https://unix.stackexchange.com/questions/653974
复制相似问题