Przeniesienie koloru wypełnienia na kolor konturu |
Autor |
Wiadomość |
neolech
Początkujący
Dołączył: 10 Lis 2015 Posty: 4 Skąd: Olsztyn
|
Wysłany: 10 Listopad 2015, 20:25 Przeniesienie koloru wypełnienia na kolor konturu
|
|
|
Witam,
korzystam z Corela w wersji x3.
Mam taki dość błahy problem, jednak nie mogę sobie z nim za nic poradzić, ani nigdzie znaleźć odpowiedzi.
Chodzi o to, że mam w jednym pliku kilkadziesiąt obiektów i każdy z nich ma inny kolor wypełnienia, jednak żaden nie ma konturu. Czy da się jakoś tak zrobić żeby zaznaczyć wszystkie na raz i ustawić tak, aby każdy miał kolor konturu identyczny jak kolor jego wypełnienia? Nie za bardzo mam czas, żeby w każdy obiekt wchodzić osobno i ręczni wpisywać mu kolor.
Jeśli to bardzo proste pytanie, to proszę o wyrozumiałość dopiero się uczę.
Dzięki z góry za pomoc!
Pozdrawiam! |
|
|
|
|
Cysorz
Pomógł: 205 razy Dołączył: 01 Sty 2011 Posty: 3137 Skąd: Kraków
|
Wysłany: 10 Listopad 2015, 20:42
|
|
|
Użyj po prostu polecenia "Znajdź i zamień". |
|
|
|
|
neolech
Początkujący
Dołączył: 10 Lis 2015 Posty: 4 Skąd: Olsztyn
|
Wysłany: 10 Listopad 2015, 20:43
|
|
|
Dzięki za szybką odpowiedź.
Gdzie mam szukać tej opcji? |
|
|
|
|
neolech
Początkujący
Dołączył: 10 Lis 2015 Posty: 4 Skąd: Olsztyn
|
Wysłany: 10 Listopad 2015, 20:51
|
|
|
znalazłem tą opcję w edycji, ale tam można tylko znaleźć odpowiedni kolor i zamienić go na inny pojedynczy kolor. Mi chodzi o to żeby wybrać 30 obiektów naraz (z czego każdy ma inne wypełnienie) i zamienić ich kontur którego teraz nie ma, na kontur w kolorze wypełnienia. |
|
|
|
|
chezare
Pomógł: 402 razy Dołączył: 24 Gru 2010 Posty: 4551 Skąd: Grodzisk Mazowiecki
|
Wysłany: 10 Listopad 2015, 23:29
|
|
|
Plik z dołączonego archiwum zapisz w podkatalogu …Corel\Corel Graphics…\Draw\GMS, tam gdzie zainstalowałeś Corela, standardowo to jest Program Files.
W pliku jest taka procedura
Kod: | Sub Kontur_jak_wypelnienie()
Dim s As Shape
Dim kw As New Color
Optimization = True
On Error Resume Next
For Each s In ActiveDocument.ActivePage.FindShapes(cdrshape)
s.CreateSelection
kw.CopyAssign s.Fill.UniformColor
ActiveSelection.Outline.SetProperties Color:=kw
Next s
Optimization = False
ActiveWindow.Refresh
End Sub |
Ta procedura ustawia na bieżącej stronie kolor konturu obiektu na taki sam jakim jest wypełniony. Nadanie koloru konturowi powoduje jego utworzenie jeśli go nie było z domyślnymi parametrami (włosowy i linia ciągła).
Gdybyś chciał np. regulować grubość konturu, to trzeba by dodać linię
s.CreateSelection
ActiveSelection.Outline.SetProperties 0.001, OutlineStyles(0)
kw.CopyAssign s.Fill.UniformColor
0.001 to grubość (0,025 mm, włosowy ma 0.003), a outlinestyles(0), to linia ciągła.
Z menu Narzędzia wybierz Visual Basic->Uruchom. W wyświetlonym okienku rozwiń listę Makro w… i znajdź GlobalMacros(kol_kont_jak_wyp.gms) i kliknij przycisk Start.
Ta procedura nadaje kontur w takim kolorze jak wypełnienie wszystkim obiektom na stronie, jak byś chciał stosować ją np. tylko do zaznaczonych obiektów, to trzeba by procedurę zmodyfikować.
kol_kont_jak_wyp.zip
|
Pobierz Plik ściągnięto 218 raz(y) 5.12 KB |
|
Ostatnio zmieniony przez chezare 11 Listopad 2015, 00:48, w całości zmieniany 6 razy |
|
|
|
|
Cysorz
Pomógł: 205 razy Dołączył: 01 Sty 2011 Posty: 3137 Skąd: Kraków
|
Wysłany: 10 Listopad 2015, 23:55
|
|
|
Jeżeli mają jakąkolwiek wspólną cechę (np. ilość węzłów, są kwadratem/prostokątem itp.) to bez problemu: kliknij po wyszukiwaniu "zaznacz wszystkie" i możesz zmienić właściwości wszystkich naraz. |
|
|
|
|
neolech
Początkujący
Dołączył: 10 Lis 2015 Posty: 4 Skąd: Olsztyn
|
Wysłany: 12 Listopad 2015, 13:51
|
|
|
@chezare dzięki! o to chodziło :) |
|
|
|
|
Artur Miernik
Pomógł: 49 razy Wiek: 52 Dołączył: 18 Lip 2010 Posty: 1608 Skąd: Starachowice
|
Wysłany: 12 Listopad 2015, 15:01
|
|
|
Moim zdaniem to powinno zostać przeniesione do FAQ. |
|
|
|
|
kadoesdoi
Początkujący
Dołączył: 10 Cze 2015 Posty: 7 Skąd: Warszawa
|
Wysłany: 7 Marzec 2023, 15:25
|
|
|
Dzięki Chezare za te makro. Działa idealnie na x7.
Mam tylko taki problem, że pracuję teraz na 2021 i uruchomienie makra wywala Corela.
Macie jakiś pomysł czemu? |
|
|
|
|
Martin Nez
Doradca Grafik?
Wersja CorelDRAW: 2019
Pomógł: 14 razy Dołączył: 29 Sty 2011 Posty: 114 Skąd: Czmoń
|
Wysłany: 23 Marzec 2023, 21:52
|
|
|
Co prawda nie sprawdzałem na 2021, ale tutaj nieco uproszczona wersja, może będzie działać, bo nie widzę w kodzie powodu dla którego by nie miał.
Kod: | Sub neolech()
On Error Resume Next
Dim s As Shape
For Each s In ActiveDocument.ActiveLayer.Shapes.All
If s.Outline.Width <> 0 Then s.Outline.SetProperties , , s.Fill.UniformColor
Next
End Sub |
Pozdr,
MN |
|
|
|
|
|