|
Corel FORUM
Forum użytkowników programów firmy Corel. Grafika wektorowa, rastrowa i obróbka zdjęć cyfrowych
|
Makro do wyszukania i zmiany konturu linii |
Autor |
Wiadomość |
Alekssssander
Początkujący
Wersja CorelDRAW: 2018
Dołączył: 13 Wrz 2018 Posty: 5 Skąd: Rzeszów
|
Wysłany: 7 Październik 2019, 14:50 Makro do wyszukania i zmiany konturu linii
|
|
|
Cześć ! Potrzebuję pomocy z makrem do wyszukania linii i zmiany ich konturu.
Aktualnie mam zapisany plik wyszukiwania i wybierając "wyszukaj z pliku" muszę ręcznie zmieniać kontur na inny.
Próbowałem nagrać makro, ale wyskakuje komunikat że nie mogę nagrać tej opcji.
Kontur lini wyszukiwany to :
Kontury - Szerokość dokładnie 0.076 Kolor: R:192 G:192 B:192
Kontur lini po zmianie :
Szerokość dokładnie 0.2, Kolor czarny CMYK, styl kropkowany (kropka, odstęp, odstęp, odstęp)
Przypisanie takiego makra pod skrót klawiszowy bardzo by usprawniło pracę.
Dużo procesów udało mi się nagrać, ale tutaj akurat poległem |
|
|
|
|
michal.s
Praktyk
Wersja CorelDRAW: x4
Pomógł: 1 raz Dołączył: 01 Lut 2012 Posty: 66 Skąd: Poznań
|
Wysłany: 8 Październik 2019, 20:00
|
|
|
Cześć.
Poniżej masz makro, które zamienia kontur RGB 192, 192, 192 na 100% Czarny.
Niestety nie jestem aż taki biegły w VBA żeby Tobie pomóc.
Jedyne co mi się udało to zmienić wyszukiwany kolor konturu z CMYK na RGB.
Może ktoś pomoże Tobie zmodyfikować kod, który zamieni też kontury.
Kod: | Sub CMYK_outline_change_flip()
Dim s As Shape, s_all As ShapeRange, s_target As ShapeRange, quest As String
Set s_all = ActiveDocument.ActivePage.ActiveLayer.Shapes.All
quest = "@outline.color = RGB(192, 192, 192)" 'kolor konturu szukany
Set s_target = s_all.Shapes.FindShapes(query:=quest)
For Each s In s_target
s.Outline.Color.CMYKAssign 0, 0, 0, 100 'nowy kolor konturu
Next s
End Sub |
|
|
|
|
|
michal.s
Praktyk
Wersja CorelDRAW: x4
Pomógł: 1 raz Dołączył: 01 Lut 2012 Posty: 66 Skąd: Poznań
|
Wysłany: 9 Październik 2019, 17:03
|
|
|
Tutaj masz instrukcję jak wyciągnąć skrót do makra.
https://www.printnet.pl/index.html?jak_mierzyc=1
Następnie uruchamiamy program CorelDRAW™ i wybieramy z menu Narzędzia -> Dostosowanie. Na ekranie powinno pojawić się okienko „Opcje"
Zgodnie z oznaczonymi polami na powyższym rysunku wybieramy z listy opcji Polecenia, następnie z rozwijalnego menu wybieramy Makra. Na liście dostępnych modułów odnajdujemy makro DD.dlugosc.policz. Aby dodać przycisk z naszym makrem do listy przycisków należy „przeciągnąć myszką” wybrane makro na pasek z przyciskami i tam je upuścić. (czerwona strzałka na rysunku)
Aby obliczyć długość linii cięcia należy zaznaczyć wszystkie wycinane kształty i kliknąć nowo dodany przycisk.
W przypadku jeśli nie posiadają Państwo odpowiedniej wersji corela długość można zmierzyć dowolnym programem, który posiada funkcje umożliwiające mierzenie długości krzywej. Długość należy podać w milimetrach.
W przypadku braku odpowiedniego oprogramowania, można wydrukować na dowolnej drukarce linie cięcia w znanej skali i zmierzyć ręcznie długość linii za pomocą linijki, cyrkla lub nitki, a następnie przemnożyć przez znany współczynnik skali. Tak przybliżoną wartość należy wpisać do kalkulatora, a nasz pracownik skoryguje ją po sprawdzeniu długości w programie. |
|
|
|
|
Martin Nez
Doradca Grafik?
Wersja CorelDRAW: 2019
Pomógł: 14 razy Dołączył: 29 Sty 2011 Posty: 114 Skąd: Czmoń
|
Wysłany: 29 Marzec 2020, 22:02
|
|
|
Witam,
Trochę późno, ale może jeszcze komuś się przyda... Poprawiony kod michal.s.
Kod: | Sub CMYK_outline_change_flip()
Dim s As Shape, s_all As ShapeRange, s_target As ShapeRange, quest As String
ActiveDocument.Unit = cdrMillimeter
ActiveDocument.BeginCommandGroup "Alekssssander"
Set s_all = ActiveDocument.ActivePage.ActiveLayer.Shapes.All
quest = "@outline.color = RGB(192, 192, 192) and @outline.width = {0.076 mm}"
Set s_target = s_all.Shapes.FindShapes(query:=quest)
For Each s In s_target
With s.Outline
.Color.CMYKAssign 0, 0, 0, 100
.Width = 0.2
.Style.DashCount = 2
.Style.DashLength(1) = 1
.Style.GapLength(1) = 3
End With
Next s
ActiveDocument.EndCommandGroup
End Sub |
Pozdr,
MN |
|
|
|
|
Struna
Fachowiec
Wersja CorelDRAW: X8
Pomógł: 8 razy Wiek: 38 Dołączył: 20 Paź 2009 Posty: 276 Skąd: Białystok
|
Wysłany: 17 Kwiecień 2020, 13:03
|
|
|
Przepraszam, że poza tematem, ale Martin Nez, mógłbyś może podsunąć prostsze makro na po prostu zaznaczanie wszystkich obiektów z konturem o kolorze CMYK(0, 100, 0, 0), obojętnie jakiej grubości? |
|
|
|
|
Cysorz
Pomógł: 205 razy Dołączył: 01 Sty 2011 Posty: 3137 Skąd: Kraków
|
Wysłany: 17 Kwiecień 2020, 13:18
|
|
|
Zrób tak:
Ctrl+F (Kreator wyszukiwania) --> Rozpocznij nowe wyszukiwanie --> Typy obiektów: dowolny --> Kontury: Właściwości konturu --> Dalej --> Zaznacz tylko kolor, koniec.
W następnym okienku masz opcję zapisania takiego poszukiwania na przyszłość, zapisujesz to w katalogu "Draw/Find". Czyli następnym razem tylko Ctrl+F i wskazujesz plik "Załaduj ustawienia wyszukiwania z dysku".
Cała operacja trwa raptem kilka sekund, bez pisania kodu, sprawdzania itd. |
|
|
|
|
Struna
Fachowiec
Wersja CorelDRAW: X8
Pomógł: 8 razy Wiek: 38 Dołączył: 20 Paź 2009 Posty: 276 Skąd: Białystok
|
Wysłany: 17 Kwiecień 2020, 13:27
|
|
|
Tak mam w tej chwili, ale chciałbym jednym kliknięciem. Sporo wycinam po OPOSie i zawsze to jakieś udogodnienie ;) |
|
|
|
|
Martin Nez
Doradca Grafik?
Wersja CorelDRAW: 2019
Pomógł: 14 razy Dołączył: 29 Sty 2011 Posty: 114 Skąd: Czmoń
|
Wysłany: 21 Kwiecień 2020, 09:46
|
|
|
@Struna
w załączniku gotowe makro, którego ja używam. Zaznaczasz wzorzec i wybierasz jakie właściwości ma brać pod uwagę. Może się przyda.
Pozdr,
MN
Zaznaczanie.zip
|
Pobierz Plik ściągnięto 403 raz(y) 7.43 KB |
|
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
|
|
|
|
|
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
| Strona wygenerowana w 0.1 sekundy. Zapytań do SQL: 16 |
|
|