さらに掘り下げて(そしてLOTを調査して)、私はそれを理解しました:
画像サムネラについて:Nautilusはlibgnome-desktop
サムネイル管理に使用libgdk-pixbuf
し、後者はに外部ハンドラを持たないファイルタイプを処理するために使用するようです/usr/share/thumbnailers
。したがって、「基本」イメージタイプは、最終的にGnomeDesktopThumbnailFactoryおよびGdkPixbufによって処理されます(Ubuntu 12.04に同梱されているバージョンの参照が表示されています)。そして、それが処理するフォーマットは、gdk-pixbuf-query-loaders
ツールを使用して検査できます。私のシステムでは、これは次のことを意味します:
The GdkPixdata format
['gdkp']
['image/x-gdkpixdata']
The Sun raster image format
['ras']
['image/x-cmu-raster', 'image/x-sun-raster']
The PNG image format
['png']
['image/png']
The WBMP image format
['wbmp']
['image/vnd.wap.wbmp']
The JPEG image format
['jpeg', 'jpe', 'jpg']
['image/jpeg']
The ANI image format
['ani']
['application/x-navi-animation']
The TIFF image format
['tiff', 'tif']
['image/tiff']
The XBM image format
['xbm']
['image/x-xbitmap']
The PCX image format
['pcx']
['image/x-pcx']
The Targa image format
['tga', 'targa']
['image/x-tga']
The PNM/PBM/PGM/PPM image format family
['pnm', 'pbm', 'pgm', 'ppm']
['image/x-portable-anymap', 'image/x-portable-bitmap',
'image/x-portable-graymap', 'image/x-portable-pixmap']
The JPEG 2000 image format
['jp2', 'jpc', 'jpx', 'j2k', 'jpf']
['image/jp2', 'image/jpeg2000', 'image/jpx']
The ICNS image format
['icns']
['image/x-icns']
The BMP image format
['bmp']
['image/bmp', 'image/x-bmp', 'image/x-MS-bmp']
Windows Metafile
['wmf', 'apm']
['image/x-wmf']
The QTIF image format
['qtif', 'qif']
['image/x-quicktime', 'image/qtif']
Scalable Vector Graphics
['svg', 'svgz', 'svg.gz']
['image/svg+xml', 'image/svg', 'image/svg-xml', 'image/vnd.adobe.svg+xml',
'text/xml-svg', 'image/svg+xml-compressed']
The ICO image format
['ico', 'cur']
['image/x-icon', 'image/x-ico', 'image/x-win-bitmap']
The XPM image format
['xpm']
['image/x-xpixmap']
The GIF image format
['gif']
['image/gif']
したがって、これらは「内部」サムネイル機能です。そして、それはxpm
ファイルを含みます。代わりに、特定のファイルに問題がありました。
実際、ファイルは標準ではなく、/* XPM *
ヘッダーの前に著作権情報が記載されていました。
// This file is part of BOINC.
// http://boinc.berkeley.edu
//
/* XPM */
static const char *atiicon_xpm[] = {
コメントが削除されると、サムネイルはファイルだけで生成されました。
「無効な」ヘッダーを使用しても、Gnomeのデフォルトの画像ビューア(「Gnomeの目」またはeog
)がファイルを表示できたのは奇妙です。したがって、どちらのファイルも実際には無効ではありませんeog
。とにかく、開くことも可能で、それをeog
使用しているgdk-pixbuf
ので、そのような非標準のファイルに対してサムネイルを生成するようにlibgnome-desktop
要求するバグを埋めましたxpm
。バグの宣伝にご協力いただければ幸いです。
また、私の研究についてのいくつかのメモ:
ThumbnailerSpecは、「外部サムネラ」の仕様としていくつかの場所で言及されています。しかし、これとは何の関係もありません!サムネラーの管理にD-Busを使用することについて話しているが、そのような仕様が実際にGnomeに実装されていることを示すものは何もない。
実は、私は見つけることができませんでしたいかなるの実装行動の公式スペック「保存.thumbnailer
したファイル[Thumbnailer Entry]
へとの.desktop風のフォーマットを/usr/share/thumbnailers
」。バグ636819はソースとして多く引用されていますが、Gnome2からGnome3への移行で動作が変更されたことのみを説明しており、外部サムネラのgconf
格納には使用していません。
スペックが全く無いようです。この廃止されたドキュメントは、たとえば、その意味についての唯一の公式リファレンス%i %o %u %s
です。
そして、からgconf
への変更を発表した唯一の「公式」の場所は/usr/share/thumbnailers
、それを行ったソースコードのコミットを追跡することを除いて、これは一見普通のバグレポートです。