Terapkan latar belakang transparan di GIMP

16

Bagaimana saya bisa menghapus latar belakang dan mengganti dengan transparansi (seperti yang diwakili oleh latar belakang kotak-kotak di PS)? Dan apakah ada batasan dalam tipe file yang saya dapat mengekspor gambar?

Oxwivi
sumber

Jawaban:

26
  1. Pilih Layer → Transparency → Add Alpha Channel
  2. Pilih latar belakang menggunakan Fuzzy Selection Tool (Magic Wand)

    dan tekan Deltombol.

GIF akan memungkinkan Anda transparansi satu warna, sedangkan PNG memiliki dukungan saluran alpha penuh.

htorque
sumber
Saya menemukan ini ketika mencoba untuk mengaktifkan "Color to Aplha" opsi diaktifkan, tidak berhasil. Itu bekerja dengan baik.
Ferdinand Prantl
Tidak jelas bagi saya bagaimana ini berlaku untuk GIF (ratusan lapisan).
Pablo Bianchi
2
  1. Buka gambar dan pilih Pilih> Menurut Warna dari menu.
  2. Klik pada warna yang ingin Anda hapus.
  3. Pilih Warna> Warna ke Alpha dari menu dan klik OK.

Ini akan menghasilkan latar belakang transparan dan kotak-kotak yang Anda cari. Jika latar belakang terdiri dari beberapa warna, ulangi saja tiga langkah ini seperlunya.

Kylan
sumber
Opsi Warna ke Alpha tidak diaktifkan.
Oxwivi
@Oxwivi, apakah Anda menggunakan Mac? Saya harus secara manual pergi ke window switcher (⌃ ↑ / 4-jari geser ke atas) dan klik pada jendela filter sebelum saya dapat berinteraksi dengannya sama sekali. (Ini tampaknya tetap di cabang master GIMP 2.9.7.)
Silverwolf - mengembalikan Monica
1

Saya telah menemukan yang berikut ini paling mudah bagi saya dan saya sangat suka efeknya.

# Pilih Foreground
Menu Utama> Tools> Selection Tools> Foreground Select

# Pilih Background
Menu Utama> Pilih> Balikkan

# Jadikan Transparan
Menu Utama > Warna> Warna Ke Alpha

Selesai

Tahanan 13
sumber
1
  1. Pilih: Lapisan → Transparansi → Tambah Saluran Alpha

  2. Pilih: Latar belakang dengan Fuzzy Selection Tool (Magic Wand)

  3. Pilih: Layer → Transparansi → Threshold Alpha ...

  4. Atur Ambang Batas menjadi 255 untuk transparansi lengkap.

Bob di DC
sumber
1

Waspadalah terhadap solusi sederhana

Pada CGI (logo, teks), tepi halus dihasilkan dengan piksel anti-aliasing. Pixel ini memiliki warna yang merupakan campuran dari warna latar belakang dan warna subjek. Saat Anda menggunakan pemilih warna atau pemilih fuzzy, piksel ini dipilih sepenuhnya (jika cukup dekat) atau tidak sama sekali, tergantung pada ambang batas. Jika Anda terus terang Delete, Anda mendapatkan lingkaran cahaya dengan warna latar belakang yang dihapus (Ambang 15) atau tepi bergerigi (Ambang 100) atau keduanya:

Ambang batas Diperbesar ambang batas

Solusi yang bagus

Solusi yang baik adalah mengganti warna latar belakang dengan transparansi, sesuai dengan kontribusinya terhadap campuran warna. Di Gimp ada dua cara untuk mencapai ini:

  • Colors>Color to alpha
  • Color erase mode, sebagai mode alat cat, atau sejak Gimp 2.10 sebagai mode campuran lapisan.

Keduanya menggantikan piksel dengan piksel paling transparan, yang, setelah menutupi warna yang dihapus, menghasilkan kembali warna awal. Jika Anda menghapus merah dari ungu, Anda mendapatkan biru semi transparan, karena biru semi-transparan lebih dari merah menghasilkan ungu. Jika Anda menghapus putih dari abu-abu, Anda mendapatkan piksel hitam yang sangat transparan dan bukan piksel abu-abu gelap yang tidak terlalu transparan, karena di antara beberapa solusi Gimp mengambil yang paling transparan.

Misalnya, menggunakan Color-to-alpha untuk menghapus merah memberi ini:

Hasil warna-ke-alfa Hasil warna-ke-alfa diperbesar

Anda akan melihat bahwa dalam hasil 2,8, ada piksel yang lebih gelap yang disebabkan oleh Gimp 2.8 yang bekerja pada nilai yang dikoreksi gamma (hasilnya masih jauh lebih baik daripada tepi bergerigi yang Anda dapatkan dengan metode yang lebih sederhana). Gimp 2.10 bekerja dalam "cahaya linier" dan tidak memiliki masalah seperti itu.

Perbaikan

Dalam kasus umum, subjek mungkin memiliki bagian yang dekat dengan warna latar belakang. Jadi jika Anda menerapkan teknik di atas bagian ini menjadi transparan (atau sebagian transparan). Menghindari ini sederhana:

  • Gunakan tongkat untuk memilih latar belakang. Ambang biasa (15) baik-baik saja.
  • Select>Growpemilihan sehingga mencakup piksel anti-aliasing. Pada gambar yang bersih (PNG, tanpa riwayat JPG) Anda tidak perlu tumbuh lebih dari satu piksel. Jika gambarnya kotor (artefak JPEG), menumbuhkan pilihan dengan dua atau tiga piksel bisa diperlukan.
  • Oleskan warna-ke-alfa. Piksel di dalam subjek, bieng yang dikecualikan dari pemilihan, tidak akan diubah. Warna ke alpha akan diterapkan ke latar belakang dan piksel tepi, di mana itu penting.

Jenis file keluaran

  • JPEG tidak mendukung transparansi
  • GIF mendukung transparansi biner (semua buram atau transparan) sehingga piksel tepi semi-transparan Anda akan diubah. Anda dapat menggunakan `Layer> Transparansi> Semi-rata untuk mengisi transparansi piksel tepi ini dengan warna baru (warna latar belakang di mana GIF akan digunakan).
  • PNG memiliki dukungan penuh untuk transparansi parsial dan saat ini merupakan format yang disukai.
  • WEBP adalah format baru yang disponsori Google yang bisa lossy atau lossless, dan mendukung transparansi parsial. Gimp 2.10 mendukungnya, tetapi Anda harus memastikan bahwa itu didukung di mana Anda ingin menggunakannya (itu tidak akan didukung di browser yang lebih lama, misalnya).
xenoid
sumber
0

Imagemagick

Mungkin solusi yang lebih baik dari sini tetapi menggunakan ImageMagick -transparent adalah

convert file.gif -transparent white -fuzz 10% file-2.gif`.

Anda dapat menggunakan "#ededee"untuk menentukan warna dalam heksadesimal.

Gimp

Mungkin lebih rumit tetapi ada opsi untuk bekerja dengan beberapa lapisan / bingkai sekaligus dengan solusi ini .

Pablo Bianchi
sumber