GIMP - zmiana koloru upierzenia zachowującego obiekt

24

Mam obraz .xcf i lubię zmieniać kolor niektórych obiektów w nim zawartych. Obiekty mają przeważnie jeden jednolity kolor, a krawędzie są przezroczyste. To znaczy wszystkie piksele w obiekcie są białe, a większość pikseli jest całkowicie nieprzezroczysta, a niektóre z przezroczystością.

Próbowałem zmienić kolor obiektów za pomocą narzędzia wyboru koloru + wypełnienia wiadra, ale to niszczy wtapianie. Czy istnieje sposób, aby gimp zmienił tylko kolor, ale zachował przezroczystość?

Rzeczywiste obiekty, które mam, to wiele bitów tekstu o różnych rozmiarach i obrotach, które scaliłem w jedną warstwę. Nie ma więc potrzeby ponownego dodawania wtapiania, ponieważ powoduje to znaczny bałagan w tekście.

Dzięki

spiderplant0
źródło
Myślę, że z technicznego punktu widzenia „upierzony na biało, symulujący przezroczystość” byłby właściwym opisem tego, co masz. W CG „przezroczystość” jest atrybutem obrazu lub warstwy w obrazie, który jest reprezentowany (na przykład) maską w skali szarości i może być regulowany bez zmiany rzeczywistych danych obrazu.
horatio
@horatio Dzięki, ale jestem zdezorientowany. Mówisz, że jest na to sposób? Nie sądzę, że masz rację, gdy mówisz, że jest „upierzony na biało, symulując przezroczystość”. Jednolite piksele mają biały kolor, a na krawędziach - białe, półprzezroczyste. Oznacza to, że możesz dodać warstwę tła i bez względu na wybrany kolor tła tekst będzie prawidłowo wtapiający się.
spiderplant0
Źle zrozumiałem, co wtedy napisałeś.
horatio

Odpowiedzi:

18

Spróbuj zaznaczyć opcję „Zablokuj” dla warstwy (która zapobiega wypełnianiu przezroczystych pikseli), a następnie użyj wiadra wypełnienia. Jeśli to nie zadziała, być może będziesz musiał podejść nieco dookoła. Z tego, co mogę powiedzieć (biorę to z dokumentacji, ponieważ nie mam zainstalowanego Gimp), to zadziała:

Dodaj czarną warstwę poniżej upierzonej białej warstwy, aby zobaczyć biały upierzony obiekt na czarnym tle.

Kliknij prawym przyciskiem myszy jeden z kanałów RGB (wszystkie powinny być takie same) i wybierz „Duplikuj kanał”, aby utworzyć kanał alfa, który wygląda jak zwykły widok złożony.

Usuń lub ukryj czarną warstwę.

Utwórz świeżą pustą warstwę, a następnie zmień zapisany kanał w zaznaczenie, klikając prawym przyciskiem myszy i wybierając „Kanał do zaznaczenia”.

Wypełnij zaznaczenie nowym kolorem i ukryj białą warstwę.

(Uwaga: w Photoshopie dodajesz Shift do skrótu klawiaturowego dla wypełnienia - klawisz Backspace / Delete plus Ctl / Cmd dla koloru tła lub Alt / Option dla pierwszego planu - jako szybki sposób wypełniania przy jednoczesnym zachowaniu przezroczystości. Interfejs użytkownika Gimp robi coś inaczej, ale spodziewałbym się, że jest gdzieś podobny skrót klawiaturowy, jeśli przejrzysz dokumentację.)

Alan Gilbertson
źródło
Dzięki @AlanGilbertson opcja blokowania była właśnie tym, czego szukałam.
spiderplant0
Miło, że mogłem pomóc. Nie używam Gimpa, więc ekstrapolowałem sposób, w jaki działają rzeczy w Photoshopie. Dokumenty Gimp nie są całkowicie jasne.
Alan Gilbertson
17

Możesz także przekonwertować przezroczystość w maskę warstwy, używając Warstwa → Maska → Dodaj maskę warstwy ... i wybierając opcję „Przenieś kanał alfa warstwy”.

Umożliwi to niezależną edycję składników koloru i przezroczystości warstwy. W szczególności, aby zmienić kolor obiektu, wystarczy wybrać region wokół niego i wypełnić go jednolitym kolorem.

Ilmari Karonen
źródło
Pracowałem z png i nie miałem dostępnego oryginalnego XCF. Ta metoda zrobiła dokładnie to, czego potrzebowałem.
jcbwlkr
7

Osobiście moim ulubionym podejściem jest Kolor-> Barwa, Nasycenie ... i używanie suwaków.

SF.
źródło
7

Myślę, że znalazłem najłatwiejszy sposób (przynajmniej dla mnie), używając GIMP 2.8.3.

  • Otwórz obraz, aby zmienić.
  • Wybierz pióro.
  • W prawym górnym rogu wybierz kartę zawierającą 3 warstwy: RGB.
  • W komórce dotyczącej alfa kliknij ją, aby nie była już zaznaczona.

Teraz, kiedy rysujesz, kolory mogą się zmieniać, ale alfa się nie zmieni.

  • Narysuj żądany kolor na istniejących pikselach. Upewnij się, aby uzyskać cały obraz.

Voila! Jest w innym kolorze, ale alfa pozostaje bez zmian.

Ken Corey
źródło
1
To najłatwiejsza i najbardziej intuicyjna odpowiedź tutaj. Dzięki!
Scott Biggs,
I działa dobrze w przypadku ołówka, pędzla i wiadra.
Scott Biggs,
Dzięki za prostą odpowiedź, która działa. Jeśli mógłbym tylko dodać, że może to działać, jeśli w obszarze występuje więcej niż jeden kolor (np. Zmiana koloru tła przy zachowaniu koloru tekstu), użyj opcji Wybierz według narzędzia Kolor (Shift + O) przed zablokowaniem kanału alfa
TimSmith-Aardwolf
4

Właśnie to rozgryzłem. Projektuję swoje logo i mam przezroczyste tło, dzięki czemu mogę zastosować logo w dowolnym miejscu.

Jeśli tło jest już przezroczyste, zablokuj je i możesz użyć narzędzia Wypełnianie wiadra. Zachowuje wtapianie i możesz użyć dowolnego koloru, jaki chcesz!

Joanna Reichert
źródło
Wygląda na to, że powinien to być komentarz do rozwiązania Alana, a nie nowa odpowiedź.
e100
1

Twoje tło jest już przezroczyste, a następnie zablokuj je i możesz użyć narzędzia Wypełnianie wiadra. Zachowuje wtapianie i możesz użyć dowolnego koloru, jaki chcesz!

użytkownik12948
źródło
0

Jeśli masz opcję scalenia warstwy przez „tylko zaciemnienie”, możesz wyeliminować efekt białego halo, który widzisz, ale wątpię, aby był idealny.

horatio
źródło
Jaki biały efekt halo?
spiderplant0
Źle zrozumiałem problem. Myślałem, że próbujesz wypełnić tło
horatio