Làm nền của các tệp GIF hoạt hình trong suốt


13

Tôi đã tạo các tệp GIF hoạt hình bằng GIMP từ một số khung ở định dạng PNG mà tôi đã tạo bằng Jmol và bây giờ tôi muốn biết làm thế nào để làm nền của các tệp GIF kết quả trong suốt. Bất kỳ phần mềm hoặc trang web nào bạn đề xuất nên có sẵn miễn phí.


Bạn đã thực hiện một số nỗ lực? Xem ở đâyở đó .
Paolo Gibellini

Tôi đã làm điều đó trước đây nhưng điều đó là không phù hợp khi xem GIF này hoạt hình như thế nào, không tĩnh vì các phương thức đó chỉ hữu ích cho hình ảnh tĩnh. Để thực hiện những gì bạn đang đề xuất bằng cách hiển thị cho tôi hai câu hỏi này, tôi phải tạo từng tệp PNG tôi chuyển đổi thành GIF trong suốt và xem cách tôi sử dụng 60 khung hình cho mỗi GIF, đôi khi sẽ thấy cách theo kinh nghiệm của tôi, mỗi hình ảnh mất ít nhất 5 phút để thực hiện, vì màu alpha không hoàn hảo và đòi hỏi một chút khó khăn để hoạt động.
BH2017

1
Tôi không biết Jmol, nhưng đây là một chủ đề liên quan đến nền alpha (xem thêm ở đây ). Bạn đã xuất dưới dạng PNGT các khung chưa?
Paolo Gibellini

GIMP đã có thể tạo GIF với độ trong suốt.
Billy Kerr

Câu trả lời:


16

Bạn có thể làm điều này với GIFsicle , sử dụng các tùy chọn sau:

gifsicle -U --disposal=previous --transparent="#ffffff" -O2 anim.gif > anim_trans.gif

trong đó anim.gifanim_trans.giflà tên tệp nguồn và đích, và #fffffflà mã hex của màu bạn muốn làm trong suốt (ở đây, màu trắng tinh khiết).

(Các tùy chọn quan trọng ở đây là -U/ --unoptimize--disposal=previous, cùng nhau chuyển đổi hình động thành "chế độ sách lật", trong đó mỗi khung hình được xóa hoàn toàn trước khi vẽ khung hình tiếp theo. Điều này cho phép thêm độ trong suốt vào các khung hình mà không để các khung hình trước hiển thị qua Các phần trong suốt. -O2Tùy chọn này không thực sự cần thiết, nhưng có khả năng thu nhỏ kích thước tệp của hình ảnh động kết quả bằng cách tối ưu hóa các khung để tránh vẽ lại các phần tĩnh của hình động một cách không cần thiết.)

Để phân loại, đây là hình ảnh động của enzyme glyoxalase I (GLO1) của con người từ Wikimedia Commons (trái) và hoạt hình tương tự với độ trong suốt được thêm vào bằng phương pháp hiển thị ở trên (phải):

Hoạt hình gốc với nền trắng Hoạt hình sửa đổi với nền trong suốt
Hoạt hình gốc của người dùng Wikimedia Commons WillowW , được sử dụng theo giấy phép CC-By 3.0 .

Một chi tiết đáng chú ý là, nếu lệnh GIFsicle dường như không có bất kỳ ảnh hưởng nào, bạn nên kiểm tra xem màu nền có thực sự chính xác hay không. Ví dụ, đối với hình ảnh động được hiển thị ở trên, màu nền thực tế hóa ra là #fdfffc(tức là rất hơi vàng-trắng hơi xanh) chứ không phải #ffffff(trắng tinh khiết). Bạn thực sự không thể nhận ra sự khác biệt bằng mắt (hoặc, ít nhất, tôi không thể làm điều đó trên màn hình này), nhưng nó đủ để khiến GIFsicle xem xét hai màu khác nhau.

Cũng lưu ý rằng các tệp GIF chỉ hỗ trợ độ trong suốt 1 bit, có nghĩa là các cạnh của các vùng trong suốt sẽ không bị khử răng cưa. Điều này cũng được miễn là nền bạn đang hiển thị hình động trên không quá xa so với màu nền ban đầu, nhưng nếu có, bạn có thể thấy rằng sẽ có một số màu xấu xí xung quanh các cạnh của hình ảnh động. Thật không may, không có nhiều thứ bạn có thể làm về điều đó, ngoại trừ việc chọn một nền phù hợp hơn hoặc để kết xuất lại hoạt hình.


Bạn có phần mềm thân thiện với Windows 7 thay thế cho gifsicle mà tôi có thể sử dụng thay thế không? Tôi đã thử cài đặt nhị phân Win32 và 64 (Tôi đang sử dụng Windows 7 64 bit, từ liên kết trên trang web chính thức của gifsicle) và không hoạt động. Nó chỉ bật lên một dấu nhắc lệnh, trong một giây và sau đó dấu nhắc này đóng lại. Tôi đã mở dấu nhắc lệnh (vì tôi hiểu gifsicle là trình soạn thảo dựa trên dòng lệnh) và sao chép các lệnh của bạn vào (với tên tệp thực tế, ofc) và nó đã đưa ra một tệp null với cảnh báo rằng gifsicle không được nhận dạng trên hệ thống của tôi.
BH2017

Hmm ... bạn đã thử sử dụng dấu nhắc lệnh và chỉ định đường dẫn đầy đủ đến gifsicle.exe chưa? Hoặc cd-ing vào thư mục bạn đã cài đặt gifsicle vào và chạy lệnh từ đó? Hoặc thêm thư mục đó vào của bạn%PATH% ?
Ilmari Karonen

cd-ing vào thư mục, chạy lệnh đó hoạt động hoàn hảo mà không gặp trở ngại, do đó tôi sẽ chấp nhận câu trả lời của bạn.
BH2017


1

Tương tự như GIFsicle và GIFmagic, EzGIF là một bộ công cụ GIF trực tuyến (trong số những thứ khác) cho phép bạn làm điều đó:

  1. Chọn "Hiệu ứng"
  2. tải lên GIF
  3. sau đó sử dụng hộp "Thay thế màu bằng độ trong suốt"
  4. và áp dụng

(Sau đó, bạn cũng có thể tối ưu hóa kết quả nếu bạn muốn)


0

Nếu bạn có trí tưởng tượng, bạn có thể chạy lệnh convert input.gif -transparent white output.giftrong một thiết bị đầu cuối.


Bạn có thể giải thích những gì lệnh đó làm? Chúng tôi đang tìm kiếm câu trả lời dài hơn với một lời giải thích, không phải là một lót. Bên cạnh đó, có vẻ như nó chuyển đổi màu trắng thành trong suốt, vậy nó cũng sẽ chọn mọi thứ có màu trắng trong ảnh chứ?
Luciano

0

Bạn có thể làm điều này trực tiếp từ photoshop.

Sử dụng tùy chọn 'Lưu vào web' và lưu dưới dạng GIF với độ trong suốt. Tìm màu bạn muốn trong suốt từ Bảng màu. Nhấp vào nó và sau đó nhấp vào nút tôi đã khoanh tròn màu đỏ.

Bảng màu trong suốt

Điều này sẽ làm cho bất kỳ màu nào bạn đã chọn trong suốt. Tiết kiệm.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.