Một số phương pháp để xem trước hình ảnh JPEG-2000 hoạt động trên Nautilus, Nemo và Caja.
Cách 1: Sử dụng opj_decompress
Cài đặt công cụ libopenjp2
sudo apt cài đặt công cụ libopenjp2
Gói này đi kèm với các công cụ và codec cần thiết để chuyển đổi hình ảnh JP2 và J2K thành hình thu nhỏ PNG, cụ thể là opj_decompress
, opj_dump
, và libopenjp2-7
.
Ghi chú:
Nhận được loại kịch câm của hình ảnh JP2 và J2K
- Nhấp chuột phải vào hình ảnh JP2 hoặc J2K, chọn Tính chất.
- trên Căn bản tab, hãy lưu ý những gì trong ngoặc đơn cho Loại cánh đồng. Trong trường hợp của tôi (Ubuntu 20.04), đó là
hình ảnh/jp2
đối với hình ảnh JP2 và hình ảnh/x-jp2-dòng mã
đối với hình ảnh J2K và J2C.
Ngoài ra, bạn có thể sử dụng xdg-mime
để có được những loại kịch câm này. Ví dụ, nếu bạn có ví dụ.jp2
và ví dụ.j2k
Trong ~/Hình ảnh
, đưa ra các lệnh sau:
kiểu tệp truy vấn xdg-mime ~/Pictures/example.jp2
loại tệp truy vấn xdg-mime ~/Pictures/example.j2k
Tạo một tập lệnh thu nhỏ đối với hình ảnh JP2 và J2K
- Tạo một tệp có tên
jp2-thumbnailer-bin
Trong /usr/local/bin
:
Sudo nano /usr/local/bin/jp2-thumbnailer-bin
- Sao chép tập lệnh sau (dựa trên phương thức từ cái này) vào tệp (sử dụng Điều khiển+C để sao chép và Điều khiển+Sự thay đổi+V để dán vào
nano
cửa sổ):
#!/bin/bash
sInFile="$1"
nThumbSize="$2"
sOutFile="$3"
# Lấy kích thước của hình ảnh đầu vào
sInfo="$(opj_dump -i "$sInFile")"
sSize="$(echo "$sInfo" | grep x1 | sed -r 's|.*x1=(.*), y1=(.*)|\1\t\2|')"
nWidth="$(echo "$sSize" | cut --fields=1)"
nHeight="$(echo "$sSize" | cut --fields=2)"
# Lấy kích thước lớn của hình ảnh đầu vào
if((nWidth>nHeight)); sau đó
nLargeSize="$nWidth"
khác
nLargeSize="$nHeight"
fi
# Tạo hình thu nhỏ đầu ra;
# Hình ảnh lớn hơn kích thước hình thu nhỏ mặc định (256x256 hoặc
# 128x128 pixel) được thu nhỏ lại để kích thước lớn của chúng
# tối đa là 256 hoặc 128 pixel. Điều này làm giảm đáng kể
# thời gian tạo hình thu nhỏ.
if((nLargeSize<=nThumbSize)); sau đó
/usr/bin/opj_decompress -i "$sInFile" -o "$sOutFile".png
khác
nResolutions="$(echo "$sInfo" | grep numresolutions | cut --delimiter='=' --fields=2 | sắp xếp --General-numeric-sort | sed 1q)"
nReduce="$(echo "f=l($nLargeSize/$nThumbSize)/l(2);scale=0;f/1" | bc -l)"
if((nReduce<nResolutions)); sau đó
nReduceFactor="$nReduce"
khác
nReduceFactor="$((nResolutions-1))"
fi
/usr/bin/opj_decompress -i "$sInFile" -r "$nReduceFactor" -o "$sOutFile".png
fi
nếu [[ -e /usr/bin/gdk-pixbuf-thumbnailer ]]; sau đó
/usr/bin/gdk-pixbuf-thumbnailer -s "$nThumbSize" "$sOutFile".png "$sOutFile"
rm "$sOutFile".png
khác
mv "$sOutFile".png "$sOutFile"
fi
- Nhấn Điều khiển+Ô và đi vào để lưu tệp và Điều khiển+X để thoát
nano
và quay trở lại thiết bị đầu cuối.
- Tiếp theo, làm cho tệp có thể thực thi được với:
Sudo chmod +x /usr/local/bin/jp2-thumbnailer-bin
Ghi chú: Nếu bạn sử dụng Nemo hoặc Caja, bạn thực sự có thể đặt tập lệnh ở đâu đó trong thư mục chính của mình (ví dụ: ~/.local/bin
) và chạy các lệnh như trên mà không cần sudo
. Tuy nhiên, nếu bạn sử dụng Nautilus, bạn chỉ có thể làm như vậy nếu libgnome-máy tính để bàn
được sử dụng bởi Nautilus cũ hơn 3.28.2. Để lấy số phiên bản của libgnome-máy tính để bàn
, ra lệnh này:
danh sách apt --đã cài đặt | grep libgnome-máy tính để bàn | cắt -d ' ' -f 2 | cắt -d '-' -f 1
Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K
- Đầu tiên, tạo một thư mục có tên
hình thu nhỏ
Trong ~/.local/share
.
mkdir -p ~/.local/share/thumbnailers
- Tạo một tệp có tên
jp2.thumbnailer
trong thư mục đó.
nano ~/.local/share/thumbnailers/jp2.thumbnailer
- Sao chép những dòng này vào tệp (sử dụng Điều khiển+C sao chép, Điều khiển+Sự thay đổi+V để dán vào
nano
cửa sổ):
[Bài viết thu nhỏ]
Exec=/usr/local/bin/jp2-thumbnailer-bin %i %s %o
MimeType=image/jp2;image/x-jp2-codestream;
- Nhấn Điều khiển+Ô và đi vào để lưu tệp và Điều khiển+X để thoát
nano
.
Ghi chú:
Bật hình thu nhỏ đối với hình ảnh JP2
Trình quản lý tệp có thể vô hiệu hóa hình thu nhỏ cho hình ảnh JP2. Để kiểm tra xem đây có phải là trường hợp không, hãy đưa ra một trong các lệnh sau, tương ứng với Nautilus, Nemo và Caja:
gsinstall bị vô hiệu hóa org.gnome.desktop.thumbnailers
gsinstall bị vô hiệu hóa org.cinnamon.desktop.thumbnailers
gsinstall bị vô hiệu hóa org.mate.thumbnailers
Nếu kết quả là []
hoặc ['']
, thì trình quản lý tệp sẽ không tắt tính năng thu nhỏ cho bất kỳ loại tệp nào (và bạn có thể chuyển thẳng sang bước 6). Tuy nhiên, nếu kết quả là ['hình ảnh/jp2']
, thì tính năng thu nhỏ cho hình ảnh JP2 sẽ bị tắt. Để kích hoạt lại nó, hãy đưa ra một trong các lệnh sau (tương ứng cho Nautilus, Nemo và Caja):
gsettings đặt org.gnome.desktop.thumbnailers vô hiệu hóa "[]"
gsettings đặt org.cinnamon.desktop.thumbnailers vô hiệu hóa "[]"
gsettings đặt org.mate.thumbnailers tắt "[]"
Ngoài ra, bạn có thể sử dụng trình soạn thảo dconf:
Xóa các hình thu nhỏ được lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp
- Đầu tiên, đóng hoàn toàn trình quản lý tệp bằng một trong các lệnh sau:
nautilus -q
nemo -q
caja -q
- Tiếp theo, xóa các hình thu nhỏ bị lỗi đã lưu trong bộ nhớ cache:
rm -r ~/.cache/thumbnails/fail
- Tùy chọn, xóa tất cả các hình thu nhỏ được lưu trong bộ nhớ cache (nếu trước đó bạn đã sử dụng các mục hoặc tập lệnh của trình thu nhỏ chưa được tối ưu hóa đã tạo các hình thu nhỏ lớn):
rm -r ~/.cache/thumbnails/*
- Cuối cùng, mở lại trình quản lý tệp. Hình ảnh JP2 và J2K sẽ có hình thu nhỏ ngay bây giờ.
Cách 2: Sử dụng đổi
đổi
có thể được sử dụng để tạo hình thu nhỏ cho hình ảnh JP2 và J2K trên Ubuntu 14.04 hoặc Ubuntu 20.10 trở lên.
Cài đặt ảo thuật hình ảnh
trong đó cung cấp đổi
dụng cụ
Sudo apt cài đặt imagemagick
Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)
Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)
nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer
với đổi
như chương trình thu nhỏ:
[Bài viết thu nhỏ]
Exec=/usr/bin/convert %i -thumbnail %sx%s png:%o
MimeType=image/jp2;image/x-jp2-codestream;
Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)
Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)
Cách 3: Sử dụng gm
gm
hỗ trợ hình ảnh JPEG-2000 trên Ubuntu 14.04 và 16.04.
Cài đặt đồ họa
trong đó cung cấp gm
dụng cụ
Sudo apt cài đặt graphicsmagick
Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)
Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)
nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer
với gm
như chương trình thu nhỏ:
[Bài viết thu nhỏ]
Exec=/usr/bin/gm convert %i -thumbnail %sx%s png:%o
MimeType=image/jp2;image/x-jp2-codestream;
Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)
Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)
Cách 4: sử dụng totem-video-thumbnailer
totem-video-thumbnailer
có thể thu nhỏ hình ảnh JP2 và J2K trên Ubuntu 18.04 trở lên.
Cài đặt vật tổ
và gstreamer1.0-plugins-bad
Sudo apt cài đặt totem gstreamer1.0-plugins-bad
vật tổ
cung cấp totem-video-thumbnailer
, trong khi gstreamer1.0-plugins-bad
đi kèm với các codec cần thiết bởi totem-video-thumbnailer
để xử lý hình ảnh JP2 và J2K.
Ghi chú: vật tổ
là trình phát video mặc định trên máy tính để bàn GNOME nên nó được cài đặt sẵn trên Ubuntu. gstreamer1.0-plugins-bad
Là không phải được cài đặt sẵn, tuy nhiên, có lẽ bởi vì nó chỉ là một đề xuất gói cho vật tổ
.
Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)
Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)
nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer
với totem-video-thumbnailer
như chương trình thu nhỏ:
[Bài viết thu nhỏ]
Exec=/usr/bin/totem-video-thumbnailer -s %s %u %o
MimeType=image/jp2;image/x-jp2-codestream;
Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)
Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)
Cách 5: Sử dụng ffmpeg
ffmpeg
hỗ trợ hình ảnh JP2 và J2K trên Ubuntu 16.04 trở lên.
Cài đặt ffmpeg
Sudo apt cài đặt ffmpeg
Nhận được loại kịch câm ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 2)
Tạo một mục thu nhỏ đối với hình ảnh JP2 và J2K (xem Sử dụng opj_decompress, bước 4 để biết chi tiết)
nội dung của ~/.local/share/thumbnailers/jp2.thumbnailer
với ffmpeg
như chương trình thu nhỏ:
[Bài viết thu nhỏ]
Exec=/usr/bin/ffmpeg -y -i %i -filter scale=%s:%s:force_original_aspect_ratio=1 -f apng %o
MimeType=image/jp2;image/x-jp2-codestream;
Bật hình thu nhỏ đối với ảnh JP2 (xem Sử dụng opj_decompress, bước 5)
Xóa các hình thu nhỏ đã lưu trong bộ nhớ cache cũ và khởi động lại trình quản lý tệp (xem Sử dụng opj_decompress, bước 6)
Tóm lược
Đã thử nghiệm trên â |
Ubuntu 14.04 |
Ubuntu 16.04 |
Ubuntu 18.04, 20.04; Linux Mint 20 Quế; Ubuntu MATE 20.04 |
Ubuntu 20.10, 21.04 |
opj_decompress |
không áp dụng |
âï¸ |
âï¸ |
âï¸ |
đổi |
âï¸ |
âï¸ |
âï¸ |
âï¸ |
gm |
âï¸ |
âï¸ |
âï¸ |
âï¸ |
totem-video-thumbnailer |
âï¸ |
âï¸ |
âï¸ |
âï¸ |
ffmpeg |
không áp dụng |
âï¸ |
âï¸ |
âï¸ |
Ghi chú: sử dụng opj_decompress
hoặc totem-video-thumbnailer
được khuyến nghị vì chúng cung cấp tốc độ giải nén nhanh hơn đáng kể và tạo ra các hình thu nhỏ nhỏ hơn.