Istnieje zestaw (grupa) ikon svg, z których część znajduje się w formie - konturu (grubości linii) obiektu. A część już znajduje się w poprawnej formie - wektorowym konturze. Wizualnie różnicę między formami przedstawiono na rysunku w załączniku. Dla przykładu odpowiednia operacja w Adobe Illustrator dla elementów svg wykonuje się za pomocą punktu menu Obiekt – Kontur - Przekształć kontur w krzywe (Object – Path - Outline Stroke).
W archiwum dla przykładu przedstawiono zestaw ikon svg, które należy doprowadzić do poprawnej formy
Funkcjonalność skryptu:
Funkcjonalność skryptu polega na tym, aby kompleksowo, w konkretnej katalogu (folderze), przeanalizować wszystkie ikony svg, zidentyfikować te, które znajdują się w formie - konturu (grubości linii) i doprowadzić je do poprawnej formy - wektorowego konturu. Ta forma jest niezbędna do dalszego tworzenia czcionki ikonowej. Jeśli takie podejście jest pracochłonne, a mianowicie chodzi o zidentyfikowanie tylko tych ikon, które należy przetworzyć, to skrypt powinien przetworzyć wszystkie ikony. Jednak optymalną opcją byłoby zidentyfikowanie tylko tych, które należy przetworzyć.
Wymagania dotyczące skryptu:
- Skrypt powinien doprowadzić ikony svg do poprawnej formy – wektorowego konturu.
- Skrypt nie powinien po zakończeniu przetwarzania deformować elementów ikony svg oraz samej ikony svg. To znaczy, że powinien zachować swoją oryginalną formę po przetworzeniu. Uwaga: ikona svg może składać się z kilku elementów, a wszystkie te elementy znajdują się w zgrupowanej formie.
- Po zakończeniu przetwarzania ikona svg powinna otwierać się w edytorach graficznych i online oraz można ją było edytować i zmieniać. To znaczy, że svg nie powinien być przedstawiony jako uszkodzony plik po przetworzeniu skryptu.
Sposoby realizacji:
Sposób #1 (Realizacja za pomocą Pythona):
Metoda #1 - Zrealizować odpowiedni skrypt za pomocą Pythona. Skrypt może być przedstawiony w postaci pliku script.py i działać bezpośrednio z folderu z danymi wejściowymi (ikonami svg). Uruchomienie skryptu w celu wykonania swoich funkcji może odbywać się za pomocą VsCode przy wprowadzeniu polecenia przez wbudowany terminal – python script.py.
Metoda #2 - Również rozważam opcję realizacji skryptu za pomocą Pythona z przewidzianym interfejsem użytkownika. W tym przypadku skrypt może działać z dowolnego katalogu po instalacji. A interfejs funkcjonalny będzie przewidywał: pole do otwierania okna przeglądarki i dalszego wyboru konkretnej ścieżki do folderu z ikonami svg; przycisk do uruchomienia skryptu i wykonania swoich działań.
Dla obu zaproponowanych metod, po przetworzeniu elementów svg, jeśli te metody przewidują, że skrypt w swoim funkcjonowaniu będzie analizować wszystkie pliki svg i identyfikować tylko te pliki, które należy opracować i odpowiednio będą opracowane, to w ten sposób, po zakończeniu operacji przetwarzania, powinien zostać wygenerowany plik log w pliku *.txt z listą ikon svg, które zostały bezpośrednio przetworzone.
Sposób #2 (Realizacja za pomocą JavaScript) NAJLEPSZA OPCJA:
Ta opcja jest uważana za najbardziej optymalną z powodu tego, że istnieje działający szablon dla VsCode, który został opracowany na podstawie systemu Vite. W tym szablonizerze już zrealizowano funkcjonalność do tworzenia czcionek ikonowych pod warunkiem, że ikony svg są przedstawione w poprawnej formie. Ta funkcjonalność została zrealizowana za pomocą rozwiązania https://github.com/nfroidure/svgicons2svgfont
Na Git istnieje szereg rozwiązań, które pozwalają doprowadzić ikony svg do poprawnej formy https://github.com/search?q=outline%20stroke%20svg&type=repositories UWAGA: szereg tych rozwiązań przedstawiono jako przykład i nie są one przewidziane ani rozważane jako obowiązkowe metody realizacji, jeśli te rozwiązania będą działać niestabilnie lub niepoprawnie wykonywać swoje funkcje
Celem Sposobu #2 jest zrealizowanie funkcjonalności, która jest rozważana w Tz, oraz dołączenie do już istniejącej funkcjonalności w szablonizerze, co umożliwi wspólnym zespołem kompleksową analizę, przetworzenie ikon svg i stworzenie na ich podstawie czcionki ikonowej.
Proszę o kontakt w celu omówienia z tymi specjalistami, którzy szczegółowo zapoznali się z Tz i są pewni realizacji z zaproponowanymi adekwatnymi cenami.
W razie potrzeby odpowiem na dodatkowe pytania