ゲーム開発部 (⸝⸝ >ヮ<) !

使用 Deskop Entry 扩展 KDE6 的 Dolphin 右键菜单

#Linux #桌面

基础 Desktop Entry 文件

用于存放菜单的路径为~/.local/share/kio/servicemenus/usr/share/kio/servicemenus,文件扩展名为.desktop

touch ~/.local/share/kio/servicemenus/pdf2png.desktop

向文件中写入以下内容:

[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/pdf;
Actions=convertToImage;

[Desktop Action convertToImage]
Name=Convert PDF to Image
Exec=sh -c 'convert -density 300 "%f" "$(basename "%f" .pdf)-%03d.png"'
Icon=applications-graphics

[Desktop Entry]

[Desktop Action]

关于上面的Exec案例

convert -density 300 "%f" "$(basename "%f" .pdf)-%03d.png"
  1. $(basename "%f" .pdf):这是一个子命令,用于提取文件名,并去掉扩展名。它会执行以下步骤:

    • basename 命令用于获取文件的基本名称(即去掉路径和扩展名的文件名)。
    • "%f" 表示文件路径或文件名。
    • .pdf 指定去除文件的扩展名 .pdf,所以如果文件名是 document.pdf,则 $(basename "%f" .pdf) 会输出 document
  2. -%03d:这是用于格式化数字的占位符,%03d 表示一个三位数的整数,不足三位会用0填充。例如,第一张图片的编号会是 001,第二张是 002,以此类推。

综合起来,这个表达式的输出形式会是:文件名-编号.png。如果输入的 PDF 文件名是 document.pdf,第一张输出的 PNG 文件会是 document-001.png,第二张是 document-002.png,以此类推。