Fantazyjne czcionki w ImageMagick

Fantazyjne czcionki w ImageMagick
Wiemy już, jak tworzyć teksty i wiemy, jak je umieścić na pustym płótnie. Ale są chwile, kiedy naprawdę musimy sprawić, by teksty wyglądały wyjątkowo. Być może jest to marka lub coś, co chciałbyś dodać do swojej witryny. Tak czy inaczej, będziesz patrzeć na to, jak wymyślić. W tym samouczku nauczymy się, jak wymyślać teksty.

Instalowanie ImageMagick

Będziemy potrzebować do tego ImageMagick, więc najpierw go zainstaluj:

sudo apt-get instal instal ImageMagick

Podstawy

Pozwól nam zacząć:

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 -fill Purple -notate +150 +190 „Linuxhint” Linuxhint.jpg

Rozmiar - używany do zdefiniowania rozmiaru płótna. To po prostu ustawia wysokość i szerokość płótna

XC - używane do ustawienia koloru tła, tutaj użyłem khaki

Punkty - używane do ustawiania rozmiaru tekstu

Wypełnij - kolor używany do wypełnienia tekstu; Tutaj użyłem fioletu

Annotat - adnotacja na płótnie z tekstem

Linuxhint.JPG - nazwa ostatecznego wyniku lub obrazu

Fantazyjne rzeczy - płytki

W poprzednim przykładzie używamy przełącznika wypełnienia, aby wypełnić słowo kolorowym fioletem. Jednak nie musimy używać przełącznika wypełnienia. Na przykład możemy użyć przełącznika płytek.

-nazwa pliku

W tym przykładzie użyjemy zdjęcia o nazwie Photo33.PNG (obraz drzewa) na przełączniku kafelków.

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 -Tile Photo33.png -annotate +150 +190 „Linuxhint” Linuxhint_tile.jpg

Alternatywnie możesz również tworzyć gradienty:

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 -Tile Gradient: -Anotate +150 +190 „Linuxhint” Linuxhint_gradient.jpg

Przezroczyste tło

W takim przypadku, aby uzyskać przejrzyste tło. Możemy ustawić tło na brak, a format pliku na PNG.

Konwertuj -Size 1000x300 XC: Brak -zależność 172 -Tile Photo33.png -annotate +150 +190 „Linuxhint” Linuxhint_tile_nobackground.png

Nakładanie tekstu

Możesz wybrać SMS -y na własną rękę:

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 -fill Black -notate +151 +191 „Linuxhint” -annotate +152 +192 „Linuxhint” -notate +151 +192 „Linuxhint '-annotate +152 +191' Linuxhint ' - Annotate +149 +189 „Linuxhint” -annotate +148 +188 „Linuxhint” -Anotate +148 +189 „Linuxhint” -Notate +149 +188 „Linuxhint” -fill Red -annotate +150 +190 'Linuxhint' Linuxhint_outline.png

Innymi słowy, coś takiego:

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 \
-Wypełnij czarny -annotate +151 +191 „Linuxhint” \
-Annotate +152 +192 „Linuxhint” \
-Annotate +151 +192 „Linuxhint” \
-Annotate +152 +191 „Linuxhint” \
-Annotate +149 +189 „Linuxhint” \
-Annotate +148 +188 „Linuxhint” \
-Annotate +148 +189 „Linuxhint” \
-Annotate +149 +188 „Linuxhint” \
-Wypełnij czerwony -annotate +150 +190 „Linuxhint” \
Linuxhint_outline.png

Zasadniczo tutaj, upewnij się, że pokryjesz wszystkie granice.

Teraz pozwól nam zarys grubszy:

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172
-Wypełnij czarny -annotate +151 +191 „Linuxhint”
-Annotate +152 +192 „Linuxhint”
-Annotate +151 +192 „Linuxhint”
-Annotate +152 +191 „Linuxhint”
-Annotate +149 +189 „Linuxhint”
-Annotate +148 +188 „Linuxhint”
-Annotate +148 +189 „Linuxhint”
-Annotate +149 +188 „Linuxhint”
-Annotate +147 +187 „Linuxhint”
-Annotate +146 +186 „Linuxhint”
-Annotate +153 +193 „Linuxhint”
-Wypełnij czerwony -annotate +150 +190 „Linuxhint” Linuxhint_outline.png

Ale pisanie miliona wierszy, aby stworzyć granicę, wydaje się zbyt wiele. Więc przedstawię wam alternatywę:

-Kolor udaru

-Wartość StrokeWidth

Więc napiszmy nowy kod:

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 -fill Red -Stroke Black -StrokeWidth 4 -Anotate +150 +190 'Linuxhint' Linuxhint_outline_stroke_stroke.jpg

Następnie masz następujące czynności:

Rozmiar: rozmiar płótna
XC: kolor tła
Punkty: rozmiar czcionki
Wypełnij: Wypełnij litery kolorem
Skok: kolor do tworzenia konturu z
Szerokość uderzeniowa: grubość zarysu
Adnotacja: adnotacja tekstu na płótnie
Linuxhint_outline_stroke.JPG: Nazwa ostatecznego wyniku

Podwójne linie

Teraz zobaczmy, jak stworzyć efekt podwójnej linii. Tutaj szerokość uderzenia drugiego uderzenia musi mieć inny kolor i mniejszą szerokość niż pierwsza. Zasadniczo jest to jak pisanie z grubym markerem, a następnie na nim z cieńszym i różnym znacznikiem. Ten ostatni stworzyłby iluzję podwójnej linii.

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 -fill czerwony -Stroke Black -StrokeWidth 4 -Anotate +150 +190 'Linuxhint' -fill Brak -Stroke White -StrokeWidth 1 -Anotate +150 +190 'Linuxhint' Linuxhint_outline_stroke1.jpg

Lub

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 \
-Wypełnij czerwony -dreszcz czarny -StrokeWidth 4 -notate +150 +190 „Linuxhint” \
-Wypełnij Brak -Stroks White -StrokeWidth 1 -notate +150 +190 „Linuxhint” \
Linuxhint_outline_stroke1.jpg

Wygląda na to, jeśli zostanie powiększone:

Nieco inna wersja tego jest:

Konwertuj -Size 1000x300 XC: Brak -PointSize 172 -fill Red -Stroke Black -StrokeWidth 35 -Anotate +150 +190 'Linuxhint' -Stroke White -Strokewidth 30 -notate +150 +190 'Linuxhint' -Stroke Black -StrokeWidth 25 - Annotate +150 +190 'Linuxhint' -Stroke biały -StrokeWidth 20 -Anotate +150 +190 'Linuxhint' -Stroke Black -Strokewidth 15 -notate +150 +190 'Linuxhint' -Stroke White -StrokeWidth 10 -Anotate +150 +190 „Linuxhint” -Stroke Black -StrokeWidth 5 -Anotate +150 +190 „Linuxhint” -Stroke None -annotate +150 +190 „Linuxhint” Linuxhint_Psydelic.png

Lub

Konwertuj -Size 1000x300 XC: Brak -PointSize 172 -fill Red \
-Stroke Black -StrokeWidth 35 -Anotate +150 +190 „Linuxhint” \
-Udar White -StrokeWidth 30 -Anotate +150 +190 'Linuxhint' \
-Udar Black -StrokeWidth 25 -notate +150 +190 „Linuxhint” \
-Udar White -StrokeWidth 20 -Anotate +150 +190 „Linuxhint '\
-Udar Black -StrokeWidth 15 -notate +150 +190 „Linuxhint '\
-Udar White -StrokeWidth 10 -notate +150 +190 „Linuxhint” \
-Udar Black -StrokeWidth 5 -notate +150 +190 „Linuxhint” \
-Udar None -notate +150 +190 „Linuxhint” \
Linuxhint_psychedelic.png

Wyglądałoby to tak, gdyby powiększone:

W tym przypadku jest to ta sama zasada, co pierwszy scenariusz. Ale pierwsza linia jest bardzo gruba i czarna, druga jest biała i mniej grubsza niż pierwsza itp

Cień

Teraz dodajmy cień:

Konwertuj -Size 1000x300 XC: Brak -Font Candice -Ipointsize 172 -Anotate +150 +190 'Linuxhint' -Blur 0x4 -fill Czerwony -Stroke Black -annotate +150 +190 'Linuxhint' Linuxhint_shadow.png

Teraz spróbujmy stworzyć miękki zarys z rozmytym wyglądem.

Konwertuj -Size 1000x300 XC: Brak -PointSize 172 -Fill Brak -Stroke Black -StrokeWidth 8 -Anotate 0x0+150+190 'Linuxhint' -Blur 0x20 -Fill Red -annotate 0x0+150+190 'Linuxhint' Linuhint_reflection4.png

Lub

Konwertuj -Size 1000x300 XC: Brak -zależność 172 \
-Wypełnij Brak -Stroks Black -StrokeWidth 8 -Anotate 0x0+150+190 'Linuxhint' -Blur 0x20 \
-Wypełnij czerwony -annotate 0x0+150+190 „Linuxhint” \
Linuhint_reflection4.png

Tutaj używamy przełącznika rozmycia. Rozmywamy udar.

-Promień rozmycia xsigma

Należy pamiętać, że najważniejszą wartością tutaj jest wartość sigma, która określi zakres rozmycia.

Teraz spójrzmy na Blur Motion.

-promień ruchu xsigma+kąt

Kąt w tym przypadku jest kątem, do którego zachodzimy.

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 -fill Purple -notate+150+190 'Linuxhint' -motion -Blur 0x25+65 -fill Red -anotate 0x0+150+190 'Linuxhint' Linuxhint_mb.jpg

Lub

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 \
-Wypełnij fiolet -annotate+150+190 „Linuxhint” -Motion -Blur 0x25+65 \
-Wypełnij czerwony -annotate 0x0+150+190 „Linuxhint” \
Linuxhint_MB.jpg

Inny przykład:

Konwertuj -Size 1000x300 XC: Khaki -PointSize 172 \
-Wypełnij fiolet -annotate+150+190 „Linuxhint” -Motion -Blur 0x25+165 \
-Wypełnij czerwony -annotate 0x0+150+190 „Linuxhint” \
Linuxhint_MB2.jpg

W kole

Teraz umieśćmy tekst w kręgu.

-Zniekształć argumenty metody

Użyj metody zniekształcenia, aby zniekształcić tekst. Po przełączniku zniekształceń określ metodę (która w tym przypadku jest łukiem, która będzie łukowa), a następnie argumenty.

Konwertuj -PointSize 172 -Background Brak -Wypełnij czerwoną etykietę: „Linuxhint: All Things Linux” -Distort Arc 340 Linuxhint_Circle1.png

Refleksje

Kod refleksji jest następujący:

Konwertuj -Size 1000x300 XC: Brak -PointSize 172 -fill Red -annotate 0x125+150+190 'Linuxhint' -fill Red -annotate 0x0+150+190 'Linuxhint' Linuhint_reflection.png

Lub

Konwertuj -Size 1000x300 XC: Brak -zależność 172 \
-Wypełnij czerwony -annotate 0x125+150+190 „Linuxhint” \
-Wypełnij czerwony -annotate 0x0+150+190 „Linuxhint” \
Linuhint_reflection.png

Użyj przełącznika adnotacji.

-Annotate xDegreesxyDegrees +- tX+- ty tekst

XDegrees i Ydegrees reprezentują ścinanie w tekście. TX i TY są przesunięciem.

Teraz spróbujmy czegoś innego:

Konwertuj -Size 1000x300 XC: Brak -PointSize 172 -fill Red -annotate 0x125+150+190 'Linuxhint' -fill Red -annotate 0x0+150+190 'Linuxhint' -fill Brak -Stoke Black -Strokewidth 4 -annotate 0x0+150 +190 „Linuxhint” Linuhint_reflection2.png

Lub

Konwertuj -Size 1000x300 XC: Brak -zależność 172 \
-Wypełnij czerwony -annotate 0x125+150+190 „Linuxhint” \
-Wypełnij czerwony -annotate 0x0+150+190 „Linuxhint” \
-Wypełnij Brak -Strok Black -StrokWidth 4 -Anotate 0x0+150+190 'Linuxhint' \
Linuhint_reflection2.png

Tutaj opcje są niezliczone i to, co możesz z tym zrobić.

Nakładające się postacie

Aby napisać wiersz z nakładającymi się znakami, musisz indywidualnie napisać i ustawić każdą literę.

Konwertuj -Size 700x300 XC: Brak -font Candice -Ipointsize 172 -Strok Black -StrokeWidth 4 -fill biały -dreszczowy -annotate +150 +190 L -Stroke Brak -anotate +150 +190 L -Stroke Black -annotate +200+ 170 I -STRUKE Brak -annotate +200 +170 I -Stroke Black -annotate +220 +170 N -Stroke Brak -annotate +220 +170 N -Stroke Black -notate +300 +170 U -Stroke Brak -annotate +300+ 170 U -Stroks Black -notate +390 +170 X -Stroke Brak -anotate +390 +170 x Linux_Overlapping.png

Lub

Konwertuj -Size 700x300 XC: Brak -font Candice -PointSize 172 \
-Udar Black -StrokeWidth 4 -fill White \
-Udar Black -notate +150 +190 L \
-Udar None -notate +150 +190 L \
-Udar Black -notate +200 +170 i \
-Udar Brak -annotate +200 +170 i \
-Udar Black -notate +220 +170 N \
-Udar None -notate +220 +170 N \
-Udar Black -notate +300 +170 U \
-Udar Brak -notate +300 +170 u \
-Udar Black -notate +390 +170 x \
-Udar Brak -notate +390 +170 x \
Linux_overlapping.png

A jeśli chcesz dodać trochę koloru:

Konwertuj -Size 700x300 XC: Brak -font Candice -intsize 172 -Stroke Black -StrokeWidth 4 -fill czerwony -Stroke Black -notate +150 +190 L -Stroke Brak -annotate +150 +190 L -Stroke Black -annotate +200+ 170 I -STRUKE Brak -annotate +200 +170 I -Stroke Black -annotate +220 +170 N -Stroke Brak -annotate +220 +170 N -Stroke Black -notate +300 +170 U -Stroke Brak -annotate +300+ 170 U -Stroks Black -notate +390 +170 X -Stroke Brak -anotate +390 +170 x Linux_Overlapping_Red.png

Lub

Konwertuj -Size 700x300 XC: Brak -font Candice -IpointSize 172 -Stroke Black -StrokeWidth 4 -fill Red \
-Udar Black -notate +150 +190 L \
-Udar None -notate +150 +190 L \
-Udar Black -notate +200 +170 i \
-Udar Brak -annotate +200 +170 i \
-Udar Black -notate +220 +170 N \
-Udar None -notate +220 +170 N \
-Udar Black -notate +300 +170 U \
-Udar Brak -notate +300 +170 u \
-Udar Black -notate +390 +170 x \
-Udar Brak -notate +390 +170 x \
Linux_overlapping_Red.png

Teraz umowa polega na tym, że możesz zdecydować o pozycji każdej litery.

Fala

Teraz spójrzmy na przełącznik falowy.

-AmplitudExWave Fave Długość

Przełącznik falowy przecina go za pomocą fali sinusoidalnej.

Konwertuj -Size 1000x300 XC: Brak -PointSize 172 -fill Red -annotate 0x0+150+190 „Linuxhint” -Wave 6x6 Linuhint_Shade.png

Lub

Konwertuj -Size 1000x300 XC: Brak -zależność 172 \
-Wypełnij czerwony -annotate 0x0+150+190 „Linuxhint” -Wave 6x6 \
Linuhint_wave.png

Kolorowy

Teraz stwórzmy kolorowy kawałek.

-rzadka metoda koloru koloru „x, y”… '

Metodą może być barycentryczne, bilineaanhattnoanhattantan, shepards i odwrotnie.

Konwertuj -Font Times -Bold -pointSize 172 -Background Brak Etykieta: „Linuxhint” -Sparse -kolor Barycenci '0, %H Blue %W, 0 Red' Linuxhint_Colorful.png

Mieszając to

Możesz także wymieszać to wszystko, czyli kilka efektów razem, aby zrobić jedną całość.

Więc połączmy kilka efektów:

Przykład 1:

W tym przypadku składamy płytki i uderzamy razem.

Konwertuj -Size 1000x300 XC: Brak -zależność 172 -Tile Photo33.PNG -Stroke Black -StrokeWidth 3 -Anotate +150 +190 „Linuxhint” Linuxhint_Mixed.png

Przykład nr 2:

W tym przykładzie łączymy kafelki, udar i zniekształcamy.

Konwertuj -Size 1000x300 XC: Brak -zależność 172 -Tile Photo33.png -annotate +150 +190 „Linuxhint” -Strok Black -StrokeWidth 3 -notate +150 +190 „Linuxhint” -Distort Arc 340 Linuxhint_Mix2.png

Przykład nr 3:

Konwertuj -Size 1000x300 XC: Brak -punkt od 172 -notate 0x125+150+190 'Linuxhint' -notate 0x0+150+190 'Linuxhint' -Sparse -color Barycenci '0, %h niebieski %W, 0 czerwony' Linuhint_Mix2.png

Wniosek

Tworzenie fantazyjnej czcionki nie jest zbyt trudne. Musisz dokładnie to przemyśleć, ponieważ jedno słowo nie na miejscu zmieni całe efekt. Dlatego zapewnij przemyśleć cały proces, napisz małe notatki, a następnie napisz kod, szczególnie jeśli jest bardzo skomplikowany lub bardzo długi.