PerfectVector
Autor: Irene Kim

Inkscape: Object to Path czy Stroke to Path?

Porównaj Object to Path i Stroke to Path w Inkscape na tym samym okręgu. Sprawdź, co zachowuje edytowalny obrys, a co tworzy wypełniony pas i jak kontrolować wynik.

9 min czytania
Na tej stronie

Object to Path w Inkscape zamienia kształt lub tekst na geometrię ścieżki. Stroke to Path zamienia widoczny obrys na wypełnioną geometrię. W przypadku okręgu bez wypełnienia i z grubym obrysem Object to Path zachowuje obrys edytowalny jako obrys; Stroke to Path zamienia sam pierścień w wypełniony kształt.

Wybierz polecenie zależnie od tego, co chcesz edytować: linię niosącą obrys czy granice namalowanego pasa. Zrzut pierścienia może wyglądać podobnie w obu przypadkach, więc sam wygląd nie jest dobrym sprawdzianem.

Porównanie opiera się na udokumentowanym działaniu poleceń Inkscape i małym autorskim przykładzie SVG. Poniższy kod i kontrole renderowania pokazują dwie reprezentacje; nie są natywnymi eksportami Inkscape.

Porównaj polecenia na jednym okręgu z obrysem

Zacznij od okręgu bez wypełnienia, z turkusowym obrysem o szerokości 24 jednostek. Zachowaj plik główny i utwórz oddzielne kopie do każdej konwersji, aby wynik jednego polecenia nie stał się wejściem drugiego.

Obrys maluje pas wzdłuż konturu kształtu lub ścieżki. Jego linia środkowa jest linią geometryczną, wokół której malowany jest pas. Wypełnienie maluje obszar zamknięty geometrią zgodnie ze swoją regułą wypełnienia.

Dla tego prostego okręgu różnica jest następująca:

PytanieObject to PathStroke to Path
Co staje się geometrią ścieżki?Geometryczny kontur okręguWidoczny pas obrysu
Skąd później bierze się kolor?Z aktywnego obrysu na ścieżceZ wypełnienia przekonwertowanego pasa
Czy istniejący pas nadal można poszerzyć kontrolką aktywnej szerokości obrysu?TakNie; pas jest teraz geometrią
Co edytujesz węzłami?Ścieżkę niosącą obrysGranice zamykające wypełniony pas
Które pierwotne narzędzie edycji znika?Specjalne uchwyty kształtu okręguPierwotne kontrolki aktywnego obrysu pasa

Tabela celowo dotyczy jednego okręgu bez kresek i bez wypełnienia. Tekst, zaznaczenia z wypełnieniem i obrysem, znaczniki, efekty i przekształcone grupy wymagają oddzielnej kontroli. Nie wnioskuj na podstawie tego przykładu o stałej liczbie węzłów lub obiektów.

Schematyczne alternatywy jednego okręgu: linia środkowa aktywnego obrysu oraz wewnętrzna i zewnętrzna granica wypełnionego pasa
Schemat dwóch reprezentacji: linii środkowej aktywnego obrysu oraz wewnętrznej i zewnętrznej granicy wypełnionego pasa. Rysunek nie jest zrzutem Inkscape ani pomiarem wyniku polecenia.

Object to Path zmienia reprezentację kształtu

Podręcznik zamiany kształtów na ścieżki Inkscape odróżnia aktywny kształt geometryczny od ścieżki edytowanej węzłami. Okrąg początkowo ma kontrolki właściwe temu kształtowi. Użyj Path → Object to Path, gdy zamiast tego chcesz zmieniać jego geometrię węzłami ścieżki.

Zamiana okręgu na ścieżkę sama w sobie nie zamienia grubości obrysu w wypełnioną geometrię. Ścieżka nadal może mieć wypełnienie i obrys. W naszym przypadku bez wypełnienia turkusowy pas pozostaje aktywnym obrysem okrągłej ścieżki.

Object to Path przydaje się więc do zmiany części okręgu przy zachowaniu regulowanej szerokości obrysu. Jest mniej przydatne, jeśli potrzebujesz tylko większego okręgu lub innej szerokości; oryginalny kształt już ma kontrolki do tych zmian.

Konwersja pozbawia też oryginalny kształt jego specjalnych kontrolek. Samouczek zaawansowany Inkscape opisuje zachowanie wyglądu przy utracie możliwości związanych z pierwotnym typem obiektu. Zachowaj główną kopię okręgu, jeśli później chcesz regulować go jako okrąg.

W tekście ten sam kompromis wpływa na edycję: przekonwertowaną geometrię liter można edytować jako ścieżki, a oryginalny edytowalny tekst powinien pozostać w oddzielnym pliku głównym. Konwersja liter jest inną potrzebą niż zamiana obrysu na kontur.

Stroke to Path zamienia namalowany pas w geometrię

Użyj Path → Stroke to Path, gdy widoczny obszar obrysu ma stać się wypełnioną geometrią ścieżki. Samouczek zaawansowany Inkscape wyjaśnia to na ścieżce bez wypełnienia i z obrysem: wynik konwersji ma wypełnienie i nie ma obrysu.

W przykładowym okręgu wyobraź sobie dwie granice: zewnętrzną krawędź pierścienia i wewnętrzną krawędź otworu. Razem zamykają turkusowy obszar, który wcześniej malował aktywny obrys.

Obrys zamieniony na kontur jest wypełnioną ścieżką reprezentującą dawny widoczny obszar obrysu. Po konwersji jego pierwotna grubość jest częścią geometrii. Zmiana wymaga edycji granic lub odpowiedniej operacji geometrycznej, a nie regulacji dawnej aktywnej szerokości obrysu.

Możesz dodać nowy obrys do wyniku, ponieważ ścieżka nadal może mieć obrys. Dodaje to farbę wokół nowej geometrii; nie przywraca pierwotnej reprezentacji okręgu z aktywnym obrysem. Różnica jest istotna, gdy kontur niespodziewanie grubieje po dodaniu kolejnego obrysu.

W przypadku otwartych linii widoczny kontur zależy także od zakończeń i połączeń. Podręcznik obrysów Inkscape opisuje je jako ustawienia obrysu. Sprawdź rzeczywisty wynik dla danych z tymi funkcjami, zamiast zakładać identyczne działanie jak dla okręgu bez kresek.

Zobacz różnicę w autorskim przykładzie SVG

Trzy poniższe pliki opisują ten sam zamierzony pierścień na obszarze rysunku 256 × 256. Są to oryginalne ilustracje SVG napisane do tego porównania, a nie XML skopiowany z któregoś polecenia Inkscape.

Zapisz każdy blok pod wskazaną nazwą. Otwórz je w przeglądarce lub edytorze obsługującym SVG i porównaj źródło oraz wygląd.

1. Kształt wejściowy, shape.svg:

<svg xmlns="http://www.w3.org/2000/svg"
     width="256" height="256" viewBox="0 0 256 256">
  <circle cx="128" cy="128" r="72"
          fill="none" stroke="#0d9488" stroke-width="24"/>
</svg>

2. Ścieżka z aktywnym obrysem, center-path.svg:

<svg xmlns="http://www.w3.org/2000/svg"
     width="256" height="256" viewBox="0 0 256 256">
  <path d="M 128 56 A 72 72 0 1 1 128 200
           A 72 72 0 1 1 128 56 Z"
        fill="none" stroke="#0d9488" stroke-width="24"/>
</svg>

Element zmienił się z circle na path, ale stroke i stroke-width pozostały. Ścieżka opisuje linię środkową; obrys maluje jej grubość.

3. Wypełniony pas, filled-band.svg:

<svg xmlns="http://www.w3.org/2000/svg"
     width="256" height="256" viewBox="0 0 256 256">
  <path d="M 128 44 A 84 84 0 1 1 128 212
           A 84 84 0 1 1 128 44 Z
           M 128 68 A 60 60 0 1 1 128 188
           A 60 60 0 1 1 128 68 Z"
        fill="#0d9488" fill-rule="evenodd"/>
</svg>

Pas ma promienie zewnętrzny i wewnętrzny 84 i 60 jednostek, odpowiadające promieniowi 72 jednostek plus lub minus połowa szerokości obrysu 24 jednostek. Reguła wypełnienia evenodd pozostawia środek niezamalowany. Ten plik ma wypełnienie i nie ma aktywnego obrysu.

Zapisaliśmy i ponownie otworzyliśmy pliki, sprawdziliśmy atrybuty i wyrenderowaliśmy je za pomocą Sharp i librsvg. Wszystkie trzy podstawowe rendery miały pusty środek i turkusowe wypełnienie w tym samym punkcie pierścienia. Ich piksele wygładzonych krawędzi nie były identyczne, więc jest to demonstracja reprezentacji, a nie porównanie eksportów piksel po pikselu.

Następnie zmieniliśmy tylko stroke-width="24" na stroke-width="40" w kopii pliku aktywnej ścieżki. Aktywny pas rozszerzył się: wcześniej pusty punkt 128,40 został zamalowany. Niezmieniony plik wypełnionego pasa pozostał tam pusty.

To użyteczna kontrola: ustal, co odpowiada za szerokość, i świadomie zmień tę właściwość. Natywne polecenia Inkscape nie zostały wykonane w tym przykładzie, a rendery nie potwierdzają liczby węzłów, grupowania ani eksportu natywnego edytora.

Wybierz reprezentację potrzebną w następnym kroku

Wybierz polecenie według celu następnej edycji:

Twój celOdpowiedni wybórCo sprawdzić później
Zmiana okręgu przez pojedyncze węzły ścieżkiObject to PathKształt staje się ścieżką i zachowuje zamierzony aktywny obrys
Dalsza regulacja szerokości linii, kresek, zakończeń lub połączeńZachowaj aktywny obrysTe kontrolki nadal sterują zmienianym pasem
Włączenie widocznego pasa do wypełnionej sylwetkiStroke to PathDawny pas jest wypełnioną geometrią z zachowanym otworem
Zachowanie linii dla procesu podążającego za ścieżką środkowąZachowaj aktywną ścieżkęAplikacja docelowa używa tej ścieżki zgodnie z zamiarem

Wypełniony kontur i linia środkowa są różnymi danymi wejściowymi do cięcia lub rysowania ploterem. Program podążający za granicami ścieżek może interpretować wewnętrzny i zewnętrzny kontur wypełnionego pierścienia inaczej niż pojedynczą linię środkową. Zamiana obrysu na kontur jest więc wyborem geometrii, a nie gwarancją jednego przejścia maszyny. Skorzystaj z kontroli cięcia podwójnych linii, gdy rzeczywisty import daje dodatkowe przejścia.

Podobnie zamiana na kontur może pomóc, gdy aplikacja odbiorcy inaczej obsługuje obrysy, ale nie diagnozuje każdego problemu z brakującą linią. Zastosuj diagnozę eksportu obrysów SVG, gdy linia znika po eksporcie.

Żadne polecenie nie trasuje pikseli na ścieżki

PNG lub JPG to rastrowy obraz z pikseli. Te dwa polecenia menu Path dotyczą istniejących kształtów wektorowych, tekstu, ścieżek i ich namalowanych obrysów. Nie są procesami trasowania obrazu.

Jeśli zaznaczony element jest obrazem, ustal, czy rzeczywiście potrzebujesz geometrii wektorowej. Lokalną metodę opisuje oddzielny proces Inkscape Trace Bitmap. Jeśli SVG nadal zachowuje się jak jeden zaznaczony obiekt, najpierw sprawdź grupy, ścieżki złożone i osadzone obrazy, zamiast wielokrotnie go konwertować.

Gdy jedynym źródłem jest proste rastrowe logo i potrzebujesz edytowalnych wypełnionych ścieżek, narzędzie PerfectVector do konwersji obrazu na wektor jest kolejnym punktem wyjścia. Sprawdź chroniony podgląd rastrowy, a następnie odblokuj wynik przed właściwą edycją i eksportem SVG. Sprawdź otrzymane ścieżki w edytorze przed wyborem polecenia; wytrasowana sylwetka nie odzyskuje linii środkowej oryginalnego rysunku.

Sprawdź zaznaczony obiekt przed kolejną konwersją

Zachowaj edytowalny plik główny, pracuj na kopii i sprawdź trzy rzeczy we własnym dokumencie Inkscape:

  1. Typ obiektu: czy zaznaczenie jest aktywnym kształtem, tekstem, zwykłą ścieżką, grupą czy osadzonym obrazem?
  2. Malowanie: czy widoczny pas pochodzi z obrysu, czy z wypełnienia?
  3. Cel edycji: czy chcesz przesunąć linię środkową, zmienić jej szerokość czy granice wypełnionego obszaru?

Używaj narzędzia węzłów razem z kontrolkami Fill and Stroke. Widoczne węzły nie dowodzą zamiany obrysu na kontur: zwykła ścieżka nadal może mieć aktywny obrys. Widoczny wypełniony pas nie dowodzi gotowości pliku do plotera lub drukarki.

Inne problemy poza wyborem polecenia opisują poradniki rozwiązywania problemów SVG.

FAQ

Czy Object to Path zamienia też obrys na kontur?

Nie. Object to Path zamienia kształt lub tekst w geometrię ścieżki. Wynikowa ścieżka może zachować aktywny obrys. Użyj Stroke to Path, gdy namalowany pas obrysu ma stać się wypełnioną geometrią.

Czy mogę zmienić szerokość po Stroke to Path?

Dawna szerokość obrysu jest teraz częścią geometrii wypełnionego konturu. Edytuj jego granice lub użyj odpowiedniej operacji geometrycznej. Nowy obrys maluje wokół tej geometrii; nie przywraca oryginalnego aktywnego obrysu.

Czy ścieżka nadal jest obiektem w Inkscape?

Tak. Ścieżka jest jednym z typów obiektu. Object to Path zamienia obsługiwane obiekty niebędące ścieżkami w geometrię ścieżki; nie sprawia, że obiekt przestaje być obiektem.

Czy któreś polecenie zamieni PNG w edytowalne ścieżki?

Nie. Trasowanie rastra na wektor to oddzielny proces. Najpierw utwórz lub odzyskaj geometrię wektorową, a potem sprawdź, czy zawiera kształty, aktywne obrysy czy wypełnione ścieżki, zanim wybierzesz konwersję.

Źródła

  1. Samouczek zaawansowany Inkscape — wyjaśnia ścieżki, konwersję kształtów i tekstu oraz zamianę obrysu bez wypełnienia w wypełniony kontur.
  2. Edycja węzłów kształtu geometrycznego, podręcznik Inkscape — odróżnia kontrolki kształtu od węzłów ścieżki i opisuje Object to Path.
  3. Obrysy, podręcznik Inkscape — opisuje szerokość aktywnego obrysu, zakończenia, połączenia, kreski i malowanie.
  4. Specyfikacja malowania SVG 2 — definiuje reguły wypełnienia i malowanie obrysu użyte w autorskiej demonstracji SVG.

Masz tylko PNG lub JPG i najpierw potrzebujesz geometrii wektorowej? Przekształć obraz za pomocą PerfectVector, sprawdź chroniony podgląd, a następnie odblokuj wynik do edycji i eksportu SVG. Jeśli masz już edytowalną grafikę wektorową, pracuj dalej z tego pliku głównego i wybierz polecenie odpowiadające potrzebnej geometrii.

Więcej z bloga

PerfectVector

Zacznij od czystszego SVG,
który łatwiej edytować

Bez karty kredytowej