Fontes de Up Fancy in ImageMagick

Fontes de Up Fancy in ImageMagick
Já sabemos como criar textos e sabemos como colocá -los em uma tela em branco. Mas há momentos em que realmente precisamos fazer com que os textos pareçam únicos. Talvez seja um nome de marca ou algo que você gostaria de adicionar ao seu site. De qualquer maneira, você estará analisando como gostar das coisas. Neste tutorial, estaremos aprendendo a gostar de textos.

Instalação Imagemagick

Precisamos do ImageMagick para isso, então primeiro vamos instalá -lo:

sudo apt-get install imagemagick

O Fundamentos

Deixe-nos começar:

Converter -Size 1000x300 XC: Khaki -PointSize 172 -preenchendo roxo -Annotate +150 +190 'Linuxhint' Linuxhint.jpg

Tamanho - usado para definir o tamanho da tela. Isso apenas define a altura e a largura da tela

XC - usado para definir a cor de fundo, aqui, eu usei cáqui

Pontos - usado para definir o tamanho do texto

Preencher - a cor usada para preencher o texto com; Aqui eu usei roxo

Anotar - Anotar tela com texto

Linuxhint.JPG - o nome do resultado final ou imagem

Gostando de coisas - azulejos

No exemplo anterior, usamos o interruptor de preenchimento para preencher a palavra com a cor roxa. No entanto, não precisamos usar o interruptor de preenchimento. Podemos usar o interruptor de ladrilhos, por exemplo.

-nome do arquivo de telha

Neste exemplo, vamos usar uma foto chamada foto33.png (a imagem de uma árvore) no interruptor.

Converter -Size 1000x300 XC: Khaki -PointSize 172 -Tile Photo33.png -Annotate +150 +190 'linuxhint' linuxhint_tile.jpg

Como alternativa, você também pode criar gradientes:

Converter -Size 1000x300 XC: Khaki -PointSize 172 -Tile Gradient: -Annotate +150 +190 'Linuxhint' linuxhint_gradiente.jpg

Fundo transparente

Nesse caso, para obter um fundo transparente. Podemos definir o plano de fundo para nenhum e o formato de arquivo para png.

Converter -Size 1000x300 XC: Nenhum -PointSize Photo33 Photo33.png -Annotate +150 +190 'linuxhint' linuxhint_tile_nobackground.png

Descrevendo o texto

Você pode optar por delinear os textos da maneira mais difícil:

Converter -Size 1000x300 XC: Khaki -PointSize 172 -Precisão -NoTate +151 +191 'Linuxhint' -AntoTate +152 +192 'Linuxhint' -Antote +151 +192 'Linuxhint' -Annotate +152 +191 'Linuxhint' - anote +149 +189 'linuxhint' -Antote +148 +188 'linuxhint' -Antote +148 +189 'linuxhint' -Annotate +149 +188 'linuxhint' -fill vermelho -Annotate +150 +190 'linuxhint' linuxhint_outline.png

Em outras palavras, algo assim:

Converter -Size 1000x300 XC: Khaki -PointSize 172 \
-preencha preto -Annotate +151 +191 'Linuxhint' \
-anote +152 +192 'linuxhint' \
-anote +151 +192 'linuxhint' \
-anote +152 +191 'linuxhint' \
-anote +149 +189 'linuxhint' \
-anote +148 +188 'linuxhint' \
-anote +148 +189 'linuxhint' \
-anote +149 +188 'linuxhint' \
-Preencha vermelha -Annotate +150 +190 'linuxhint' \
linuxhint_outline.png

Basicamente, aqui, certifique -se de cobrir todas as fronteiras.

Agora, vamos tornar o esboço mais espesso:

Converter -Size 1000x300 XC: Khaki -PointSize 172
-Encha preto -Annotate +151 +191 'Linuxhint'
-anote +152 +192 'Linuxhint'
-anote +151 +192 'linuxhint'
-anote +152 +191 'linuxhint'
-anote +149 +189 'Linuxhint'
-anote +148 +188 'Linuxhint'
-anote +148 +189 'Linuxhint'
-anote +149 +188 'Linuxhint'
-anote +147 +187 'Linuxhint'
-anote +146 +186 'Linuxhint'
-anote +153 +193 'linuxhint'
-Preencha vermelho -Annotate +150 +190 'linuxhint' linuxhint_outline.png

Mas escrever um milhão de linhas apenas para criar uma fronteira parece muito. Então, vou apresentar a você uma alternativa:

-cor de acidente vascular cerebral

-valor de largura de golpe

Então, vamos escrever um novo código:

Converter -Size 1000x300 XC: Khaki -PointSize 172 -preenchimento de preto -arwidth 4 -Annotate +150 +190 'Linuxhint' Linuxhint_outline_stroke.jpg

Então, você tem o seguinte:

Tamanho: Tamanho da tela
XC: cor de fundo
Pontos do tamanho: tamanho da fonte
Preencha: preencha as letras com uma cor
AVC: a cor para criar o esboço com
Largura de golpe: a espessura do contorno
Anotar: anote o texto na tela
Linuxhint_outline_stroke.JPG: Nome do resultado final

Linhas duplas

Agora, vamos ver como criar um efeito de linha dupla. Aqui, a largura de golpe do segundo golpe deve ser de uma cor diferente e de uma largura menor que a primeira. Basicamente, é como escrever com um marcador grosso e depois em cima dele com um marcador de cor mais fino e diferente. O último criaria a ilusão de uma linha dupla.

Converte -Size 1000x300 XC: Khaki -PointSize 172 -Filino vermelho -Frasteto preto -strokeWidth 4 -Anotate +150 +190 'Linuxhint' -preenchimento de semestre -linuxhint -linue_stroke 1 -Notate +150 +190 'Linuxhint' Linuxhint_outline_Troke_Troke1.jpg

Ou

Converter -Size 1000x300 XC: Khaki -PointSize 172 \
-preencher vermelho -stroke preto -strokewidth 4 -Annotate +150 +190 'linuxhint' \
-Encha nenhum -arremesso de branco -largura de derrota 1 -Notate +150 +190 'linuxhint' \
Linuxhint_outline_stroke1.jpg

Parece isso se o zoom entrou:

Uma versão ligeiramente diferente disso é:

Converta -Size 1000x300 XC: Nenhum -PointSize 172 -Preencher vermelho -derrotar preto -strokewidth 35 -Notate +150 +190 'Linuxhint' -Branco -traço -derrota -Linuxhint Blackwidth 30 -Notate +150 +190 'Linuxhint' -Blackbowidth 25 - anote +150 +190 'linuxhint' -stroke white -strokewidth 20 -Anotate +150 +190 'linuxhint' -stroke preto -strokewidth 15 -anotado +150 +190 'linuxhint' -arremesso branco -largura 10 -anotado +150 +190 'Linuxhint' -stroke preto -strokewidth 5 -Anotate +150 +190 'linuxhint' -Trowen Nenhum -Annotate +150 +190 'linuxhint' linuxhint_psychedelic.png

Ou

Converter -Size 1000x300 XC: Nenhum -PointSize 172 -preenchimento de vermelho \
-AVC preto -strokewidth 35 -Notate +150 +190 'linuxhint' \
-AVC WHITE -STROKEDTH 30 -ANOTATE +150 +190 'Linuxhint' \
-AVC preto -largura de arestão 25 -Notate +150 +190 'linuxhint' \
-AVC WHITE -STROKEDTH 20 -NOTATE +150 +190 'Linuxhint' \
-AVC preto -largura de arremesso 15 -Notate +150 +190 'linuxhint' \
-AVC WHITE -STROKEDTH 10 -NOTATE +150 +190 'Linuxhint' \
-AVC preto -largura de arremesso 5 -Antote +150 +190 'linuxhint' \
-AVC no nenhum -Anotate +150 +190 'Linuxhint' \
linuxhint_psychedelic.png

Ficaria assim se o ampliasse:

Nesse caso, é o mesmo princípio que o primeiro cenário. Mas a primeira linha é muito grossa e preta, a segunda é branca e menos espessa que a primeira, etc ..

Sombra

Agora, vamos adicionar um pouco de sombra:

Converter -Size 1000x300 XC: Nenhum -Font Candice -PointSize 172 -Anotate +150 +190 'Linuxhint' -Blur 0x4 -Fill Red -Black -Notate +150 +190 'Linuxhint' Linuxhint_shadow.png

Agora, vamos tentar criar um esboço suave com uma aparência borrada.

Converte -Size 1000x300 XC: Nenhum -PointSize 172 -Preencher nenhum -Black -derrotado -ardilão 8 -Anotate 0x0+150+190 'Linuxhint' -Blur 0x20 -Fill Red -Antote 0x0+150+190 'Linuxhint' Linuhint_reflection4.png

Ou

Converter -Size 1000x300 XC: Nenhum -PointSize 172 \
-preencher nenhum -preto -derrubado -larwidth 8 -NoTate 0x0+150+190 'linuxhint' -blur 0x20 \
-preencher vermelho -annote 0x0+150+190 'linuxhint' \
Linuhint_reflection4.png

Aqui, estamos usando o interruptor do desfoque. Estamos desfocando o golpe.

-raio desfoque xsigma

Observe que o valor mais importante aqui é o valor sigma que determinará a extensão do desfoque.

Agora, vamos olhar para o movimento do Blur.

-raio de movimento de movimento xsigma+ângulo

O ângulo, neste caso, é o ângulo em que o embaçamento ocorre.

Converte -Size 1000x300 XC: Khaki -PointSize 172 -preenchendo roxo -Annotate+150+190 'Linuxhint' -Motion -BLUR 0x25+65 -fil Red -Annotate 0x0+150+190 'Linuxhint' Linuxhint_MB.jpg

Ou

Converter -Size 1000x300 XC: Khaki -PointSize 172 \
-Preencha roxo -Annotate+150+190 'Linuxhint' -Motion -Bluur 0x25+65 \
-preencher vermelho -annote 0x0+150+190 'linuxhint' \
Linuxhint_MB.jpg

Outro exemplo:

Converter -Size 1000x300 XC: Khaki -PointSize 172 \
-Preencha roxo -Annotate+150+190 'Linuxhint' -Motion -Bluur 0x25+165 \
-preencher vermelho -annote 0x0+150+190 'linuxhint' \
linuxhint_mb2.jpg

Num círculo

Agora, vamos colocar o texto em um círculo.

-distorcer argumentos do método

Use o método de distorção para distorcer o texto. Após o interruptor Distort, especifique o método (que neste caso está arco que arco o texto) e depois os argumentos.

Converter -PointSize 172 -Background Nenhum -filt Red Label: "Linuxhint: All Things Linux" -Distort Arc 340 Linuxhint_circle1.png

Reflexões

O código para reflexões é o seguinte:

Converter -Size 1000x300 XC: Nenhum -PointSize 172 -preenchimento de vermelho -Anotate 0x125+150+190 'linuxhint' -fill vermelho -Anotate 0x0+150+190 'linuxhint' linuhint_reflection.png

Ou

Converter -Size 1000x300 XC: Nenhum -PointSize 172 \
-preencher vermelho -annote 0x125+150+190 'linuxhint' \
-preencher vermelho -annote 0x0+150+190 'linuxhint' \
Linuhint_reflection.png

Use o interruptor de anotação.

-anote xdegreesxydegrees +- tx+- ty texto

Xdegrees e YDegrees representam o cisalhamento no texto. Tx e ty são o deslocamento.

Agora, vamos tentar outra coisa:

Converte -Size 1000x300 XC: Nenhum -PointSize 172 -Prechear vermelho -Anotate 0x125+150+190 'Linuxhint' -Fille Red -Anotate 0x0+150+190 'Linuxhint' -preto -Black -derruewidth 4 -Annotate 0x0+150 150 +190 'linuxhint' linuhint_reflection2.png

Ou

Converter -Size 1000x300 XC: Nenhum -PointSize 172 \
-preencher vermelho -annote 0x125+150+190 'linuxhint' \
-preencher vermelho -annote 0x0+150+190 'linuxhint' \
-Preencha nenhum -Black -derrueWidth 4 -Annotate 0x0+150+190 'linuxhint' \
Linuhint_reflection2.png

Aqui, as opções são inúmeras e o que você pode fazer com isso também.

Caracteres sobrepostos

Para escrever uma linha com caracteres sobrepostos, você precisa escrever e posicionar individualmente cada letra.

Converter -Size 700x300 XC: Nenhum -Font Candice -PointSize 172 -Black -derrotado -largura de 4 -preenchimento -preto -preto -notate +150 +190 L -tono None -Notate +150 +190 L -LIRO Black -Annotate +200+ 170 i -tono nenhum -annote +200 +170 i -derrotado preto -Antote +220 +170 N -ALTIVO NONO -ANOTATO +220 +170 N -RESIME 170 U -RESIMO BLACK -ANTATA +390 +170 X -ALTO NENHUMO -ANOTATA +390 +170 X Linux_overlapping.png

Ou

Converter -Size 700x300 XC: Nenhum -Font Candice -PointSize 172 \
-ALTE BLACK -RESTROECH LARWIDTH 4 -FILL BRANCO \
-AVC Black -Annotate +150 +190 L \
-AVC no nenhum -Anotate +150 +190 L \
-AVC Black -Annotate +200 +170 I \
-ALD NOM
-AVC Black -Annotate +220 +170 N \
-ALD NOM
-AVC Black -Annotate +300 +170 U \
-ALD NOM
-AVC preto -Antote +390 +170 x \
-AVC no nenhum -Annote +390 +170 x \
Linux_overlapping.png

E se você quisesse adicionar um pouco de cor:

Converter -Size 700x300 XC: Nenhum -Font Candice -PointSize 172 -Black -derrotado -largura de 4 -preenchimento -preto -preto -notate +150 +190 L -tonero Nenhum -Anotate +150 +190 L -LIRO BLACK -ANOTATA +200+ 170 i -tono nenhum -annote +200 +170 i -derrotado preto -Antote +220 +170 N -ALTIVO NONO -ANOTATO +220 +170 N -RESIME 170 U -RESIMO BLACK -ANTATA +390 +170 X -ANOMENTO NENHUMONOTATO +390 +170 X Linux_overlapping_red.png

Ou

Converter -Size 700x300 XC: Nenhum -Font Candice -PointSize 172 -Black -derruewidth 4 -preenchimento vermelho \
-AVC Black -Annotate +150 +190 L \
-AVC no nenhum -Anotate +150 +190 L \
-AVC Black -Annotate +200 +170 I \
-ALD NOM
-AVC Black -Annotate +220 +170 N \
-ALD NOM
-AVC Black -Annotate +300 +170 U \
-ALD NOM
-AVC preto -Antote +390 +170 x \
-AVC no nenhum -Annote +390 +170 x \
linux_overlapping_red.png

Agora, o acordo é que você pode decidir sobre a posição de cada letra.

Aceno

Agora, vejamos o interruptor de onda.

-Onda Amplitudex onda comprimento

O interruptor de onda vai cisá -lo usando uma onda senoidal.

Converter -Size 1000x300 XC: Nenhum -PointSize 172 -preenchimento de vermelho -Anotate 0x0+150+190 'linuxhint' -wave 6x6 linuhint_shade.png

Ou

Converter -Size 1000x300 XC: Nenhum -PointSize 172 \
-preencha vermelha -Annote 0x0+150+190 'linuxhint' -wave 6x6 \
Linuhint_wave.png

Colorida

Agora, vamos criar uma peça colorida.

-Método de cor esparsa 'x, y cor'… '

O método pode ser cêntrico, bilineahattnonhattantan, shepards e inverso.

Converter -Font Times -BOLD -PointSize 172 -Background Nenhum Rótulo: "Linuxhint" -Sparse -Color BaryCentric '0, %H azul %w, 0 vermelho' linuxhint_colorful.png

Misturando

Você também pode misturar tudo, isso é reunido alguns dos efeitos para fazer um todo.

Então, vamos reunir alguns dos efeitos:

Exemplo 1:

Nesse caso, estamos colocando ladrilhos e golpes juntos.

Converter -Size 1000x300 XC: Nenhum -PointSize Photo33 Photo33.png -stroke preto -strokewidth 3 -antote +150 +190 'linuxhint' linuxhint_mixed.png

Exemplo #2:

Neste exemplo, estamos colocando azulejos, derrame e distorcemos juntos.

Converter -Size 1000x300 XC: Nenhum -PointSize Photo33 Photo33.png -Annotate +150 +190 'linuxhint' -stroke preto -strokewidth 3 -Annotate +150 +190 'linuxhint' -distort arc 340 linuxhint_mix2.png

Exemplo #3:

Converter -Size 1000x300 XC: Nenhum -PointSize 172 -Anotate 0x125+150+190 'Linuxhint' -Notate 0x0+150+190 'Linuxhint' -Sparse -corcentric '0, %H Blue %w, 0 Red' LinuHint_mix2.png

Conclusão

Criar uma fonte sofisticada não é muito difícil. Você precisa pensar cuidadosamente porque uma palavra fora do lugar mudará todo o efeito. Portanto, certifique -se de pensar em todo o processo, escreva pequenas notas e depois escreva o código, especialmente se for muito complicado ou muito longo.