Hangi ek küçük resimler kullanılabilir ve bunları nasıl yüklerim?


9

Soru :

Ubuntu'nun dosya yöneticisi, Nautilusdosya önizlemeleri için geniş bir destekle birlikte gelir. Bu küçük resimler, küçük resimler olarak adlandırılan yardımcı programlar tarafından işlenir.

Ubuntu ile önceden yüklenmiş olarak gelen küçük resim görüntüleyicilerin sayısı sınırlıdır ve bu nedenle bazı egzotik dosya türleri varsayılan olarak görüntülenmez.

Bu durumlarda önizlemeleri etkinleştirmek için hangi ek küçük resimleri yükleyebilirim?


İlgili Sorular ve Cevaplar :

Nautilus'a küçük resimler hazırlaması için nasıl talimat verebilirim?


Not :

Topluluk wiki yanıtını düzenleyerek bu listeye katkıda bulunmaktan çekinmeyin. Bunu yaparsanız, lütfen bu Meta tartışmasındaki yönergeleri izleyin ve yanıtı tutarlı tutmak için önceden var olan kalıbı kullanın.

Yanıtlar:


11

Genel kurulum talimatları


Depolardaki ve PPA'lardaki küçük resimler

Bazı küçük resimler önceden paketlenmiştir ve yazılım merkezinden veya komut satırından kolayca kurulabilir. Bu küçük resimler ek bir yapılandırma gerektirmez ve nautilus yeniden başlatıldıktan hemen sonra çalışmalıdır. Bunu aşağıdakilerle yapabilirsiniz:

nautilus -q 

Bir PPA'dan herhangi bir şey yüklemeden önce lütfen bu Soru ve Cevapları okumayı düşünün:

PPA nedir ve nasıl kullanılır?

PPA'ları sistemime eklemek güvenli midir ve dikkat edilmesi gereken bazı "kırmızı bayraklar" nelerdir?

Ubuntu 11.04 ve sonraki sürümlerde özel küçük resim komut dosyaları

Depolarda bulunmayan özel küçük resimlerin el ile yüklenmesi gerekir. Bunları yüklemek için atmanız gereken adımlar şunlardır:

Komut dosyasında listelenen herhangi bir bağımlılık olup olmadığını kontrol edin. Varsa, önce takın.

Komut dosyasını indirin ve Nautilus ile chmod a+x filethumbnailerveya Nautilus üzerinden yürütülebilir yapın

Gelecekteki tüm küçük resimler için dosya sisteminizde bir klasör atayın ve komut dosyasını buraya taşıyın, örn.

mkdir $HOME/.scripts/thumbnailers && mv filethumbnailer $HOME/.scripts/thumbnailers

Sonra betiğinizi Nautilus'a kaydetmeniz gerekecek . Bunu yapmak için içinde bir küçük resim girişi oluşturun /usr/share/thumbnailers. Giriş adlandırma düzeni izlemelidir seçtiğiniz (burada bir ifadesidir ):foo.thumbnailerfoofile

gksudo gedit /usr/share/thumbnailers/file.thumbnailer

Küçük resim özellikleri şu şemayı takip eder:

[Thumbnailer Entry]
Exec=$HOME/.scripts/thumbnailers/file.thumbnailer %i %o %s
MimeType=application/file;

ExecEntry sizin thumbnailer komut noktaları ise MimeTypetarla ilgili Mimetypes belirler. Olası değişkenler:

%i Input file path
%u Input file URI
%o Output file path
%s Thumbnail size (vertical)

Özellikler ve değişkenler her komut dosyasına göre değişir. İlgili metin kutusunun içeriğini kopyalayıp dosyaya yapıştırmanız ve kaydetmeniz yeterlidir.

Küçük resimler, nautilus ( nautilus -q) yeniden başlatıldıktan sonra çalışır durumda olmalıdır .

Ubuntu 11.04 ve önceki sürümlerde özel küçük resim komut dosyaları

Ubuntu'nun önceki sürümleri, küçük resim ilişkilendirmeleri için GConf'a güveniyordu. Daha fazla bilgi için buraya bakın .


Kaynaklar :

https://live.gnome.org/ThumbnailerSpec

https://bugzilla.redhat.com/show_bug.cgi?id=636819#c29

https://bugs.launchpad.net/ubuntu/+source/gnome-exe-thumbnailer/+bug/752578

http://ubuntuforums.org/showthread.php?t=1881360



Dosya türüne göre küçük resimler


CHM dosyaları

genel bakış

Açıklama : Bu komut dosyası ile nautilus dosya yöneticisinde chm dosyalarınızın küçük resimlerini alırsınız. Komut dosyası, küçük resmi oluşturmak için chm dosyasının ana sayfasından en büyük resmi kullanır, genellikle bu ön kapağın bir görüntüsü olacaktır.

Oluşturan : monraaf ( http://ubuntuforums.org/showthread.php?t=1159569 )

Bağımlılıklar :sudo apt-get install python-beautifulsoup python-chm imagemagick

Küçük resim girişi

[Thumbnailer Entry]
Exec=$HOME/.scripts/thumbnailers/chmthumbnailer %i %o %s
MimeType=application/vnd.ms-htmlhelp;application/x-chm;

Senaryo

#!/usr/bin/env python

import sys, os
from chm import chm
from BeautifulSoup import BeautifulSoup

class ChmThumbNailer(object):
    def __init__(self):
        self.chm = chm.CHMFile()

    def thumbnail(self, ifile, ofile, sz):

        if self.chm.LoadCHM(ifile) == 0:
            return 1

        bestname    = None
        bestsize    = 0
        base        = self.chm.home.rpartition('/')[0] + '/'
        size, data  = self.getfile(self.chm.home)

        if size > 0:
            if self.chm.home.endswith(('jpg','gif','bmp')):
                self.write(ofile, sz, data)
            else:
                soup = BeautifulSoup(data)
                imgs = soup.findAll('img')
                for img in imgs:
                    name = base + img.get("src","")
                    size, data = self.getfile(name)
                    if size > bestsize:
                        bestsize = size
                        bestname = name
                if bestname != None:
                    size, data = self.getfile(bestname)
                    if size > 0:
                        self.write(ofile, sz, data)
        self.chm.CloseCHM()

    def write(self, ofile, sz, data):
        fd = os.popen('convert - -resize %sx%s "%s"' % (sz, sz, ofile), "w")
        fd.write(data)
        fd.close()

    def getfile(self,name):
        (ret, ui) = self.chm.ResolveObject(name)
        if ret == 1:
            return (0, '')
        return self.chm.RetrieveObject(ui)

if len(sys.argv) > 3:
    chm = ChmThumbNailer()
    chm.thumbnail(sys.argv[1], sys.argv[2], sys.argv[3])

EPUB dosyaları

genel bakış

Açıklama : epub-thumbnailer, bir epub dosyasında bir kapak bulmaya çalışan ve bunun için bir küçük resim oluşturan basit bir komut dosyasıdır.

Oluşturan : Mariano Simone ( https://github.com/marianosimone/epub-thumbnailer )

Bağımlılıklar : listelenen yok, hemen iyi çalıştı

Küçük Resim Girişi

[Thumbnailer Entry]
Exec=$HOME/.scripts/thumbnailers/epubthumbnailer %i %o %s
MimeType=application/epub+zip;

Senaryo

#!/usr/bin/python

#  This program is free software: you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation, either version 3 of the License, or
#  (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program.  If not, see <http://www.gnu.org/licenses/>.

# Author: Mariano Simone (marianosimone@gmail.com)
# Version: 1.0
# Name: epub-thumbnailer
# Description: An implementation of a cover thumbnailer for epub files
# Installation: see README

import zipfile
import sys
import Image
import os
import re
from xml.dom import minidom
from StringIO import StringIO

def get_cover_from_manifest(epub):
    img_ext_regex = re.compile("^.*\.(jpg|jpeg|png)$")

    # open the main container
    container = epub.open("META-INF/container.xml")
    container_root = minidom.parseString(container.read())

    # locate the rootfile
    elem = container_root.getElementsByTagName("rootfile")[0]
    rootfile_path = elem.getAttribute("full-path")

    # open the rootfile
    rootfile = epub.open(rootfile_path)
    rootfile_root = minidom.parseString(rootfile.read())

    # find the manifest element
    manifest = rootfile_root.getElementsByTagName("manifest")[0]
    for item in manifest.getElementsByTagName("item"):
        item_id = item.getAttribute("id")
        item_href = item.getAttribute("href")
        if "cover" in item_id and img_ext_regex.match(item_href.lower()):
            cover_path = os.path.join(os.path.dirname(rootfile_path), 
                                      item_href)
            return cover_path

    return None

def get_cover_by_filename(epub):
    cover_regex = re.compile(".*cover.*\.(jpg|jpeg|png)")

    for fileinfo in epub.filelist:
        if cover_regex.match(os.path.basename(fileinfo.filename).lower()):
            return fileinfo.filename

    return None

def extract_cover(cover_path):
    if cover_path:
        cover = epub.open(cover_path)
        im = Image.open(StringIO(cover.read()))
        im.thumbnail((size, size), Image.ANTIALIAS)
        im.save(output_file, "PNG")
        return True
    return False

# Which file are we working with?
input_file = sys.argv[1]
# Where do does the file have to be saved?
output_file = sys.argv[2]
# Required size?
size = int(sys.argv[3])

# An epub is just a zip
epub = zipfile.ZipFile(input_file, "r")

extraction_strategies = [get_cover_from_manifest, get_cover_by_filename]

for strategy in extraction_strategies:
    try:
        cover_path = strategy(epub)
        if extract_cover(cover_path):
            exit(0)
    except Exception as ex:
        print "Error getting cover using %s: " % strategy.__name__, ex

exit(1)

EXE dosyaları

genel bakış

Açıklama : gnome-exe-thumbnailer, Gnome için Windows .exe dosyalarına gömülü simgelerine ve genel "Şarap programı" simgesine dayalı bir simge verecek bir küçük resimdir. Programın normal yürütme izinleri varsa, standart katıştırılmış simgesi gösterilir. Bu küçük resim ayrıca .jar, .py ve benzeri yürütülebilir programlar için küçük resim simgesi de verecektir.

Kullanılabilirlik : resmi depolar

Kurulum

sudo apt-get install gnome-exe-thumbnailer

ODP / ODS / ODT ve diğer LibreOffice ve Open Office dosyaları

genel bakış

Açıklama: ooo-thumbnailer, Nautilus tarafından belgeleriniz, e-tablolarınız, sunularınız ve çizimleriniz için küçük resimler oluşturmak üzere kullanılabilen bir LibreOffice, OpenOffice.org ve Microsoft Office belgesi küçük resmidir.

Kullanılabilirlik : geliştiricinin PPA'sı (Ubuntu 12.04 ve sonraki sürümlerinde LibreOffice ile uyumlu en son sürüm)

Kurulum

sudo add-apt-repository ppa:flimm/ooo-thumbnailer && apt-get update && apt-get install ooo-thumbnailer

.xpmGörüntüler ne olacak ? Onlar gibi "standart" olduğunu kabul png, jpgve bmpfakat Nautilus onlar için önizleme oluşturmaz.
MestreLion

XPM görüntü dosyaları Nautilus 3.4'te benim için iyi işliyor
Glutanimate

1
nevermind, ben onları iyi görüntüler /* XPM */bile başlıktan önce yorum ile dosyaları işleyemez eog
öğrendim

Sanırım dosyanın mime türünü bulabilirsinfile -i FILE
Wilf

1

ICNS dosyaları (Mac OSX Simgeleri)

genel bakış

Nautilus, bazı hatalar nedeniyle Mac OSX simgeleri için küçük resimler oluşturmaz , ancak destek yerleşiktir GdkPixbuf.

Senaryo

Bu .icnsdosyalar için küçük resimler oluşturmak için temel bir komut dosyasıdır . Daha sağlam bir sürümü https://github.com/MestreLion/icns-thumbnailer adresinde bulabilirsiniz.

#!/usr/bin/env python
import sys
from gi.repository import GdkPixbuf
inputname, outputname, size = sys.argv[1:]
pixbuf = GdkPixbuf.Pixbuf.new_from_file(inputname)
scaled = GdkPixbuf.Pixbuf.scale_simple(pixbuf, int(size), int(size),
                                       GdkPixbuf.InterpType.BILINEAR)
scaled.savev(outputname, 'png', [], [])

Yüklemek

Bir kurulum komut dosyası, .thumbnailerNautilus dosyasıyla birlikte , icns-thumbnailer proje deposunda mevcuttur

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.