.
Aurium.Colivre.Coop.br Esse site é Legal Demais para Internet Explorer

Aurium :: Ink-Bash

Últimas blogadas:

HeadlinesPlugin ERROR: 403 Forbidden
Cirandas.net



Ink-Bash is a Bash script (UNIX ShellScript) to help the script creation for handle SVG, focused on Inkscape extension creation.

Ink-Bash é um script Bash (ShellScript UNIX) que facilita a criação de scripts para manipulação de SVG, focando na criação de extensões para o Inkscape.


How to Install Ink-Bash / Como Instalar Ink-Bash

You need to download the file ink-bash.tar.gz and puth it in one of this directories:
  • GNU/Linux users:
    persons Global Instalation: (for all users)
    /usr/share/inkscape/extensions
    person Local Instalation: (only for you)
    ~/.inkscape/extensions
     
  • OS X users:
    persons Global Instalation: (for all users)
    /Applications/Inkscape.app/Contents/Resources/extensions
    person Local Instalation: (only for you)
    ~/.inkscape/extensions
     
  • Windows users:
    C:\Program files\Inkscape\share\extensions
    warning Execute "inkscape -x" to confirm!

Don't forget to unpack the file ink-bash.tar.gz in the selected directory. ;-]

Você deve baixar o arquivo ink-bash.tar.gz e coloca-lo num dos seguintes diretórios:
  • Usuários GNU/Linux:
    persons Instalação Global: (para todos)
    /usr/share/inkscape/extensions
    person Instalação Local: (apenas para você)
    ~/.inkscape/extensions
     
  • Usuários OS X:
    persons Instalação Global: (para todos)
    /Applications/Inkscape.app/Contents/Resources/extensions
    person Instalação Local: (apenas para você)
    ~/.inkscape/extensions
     
  • Usuários Windows:
    C:\Arquivos de programa\Inkscape\share\extensions
    warning Execute "inkscape -x" para confirmar!

Não esqueça de descompactar o arquivo ink-bash.tar.gz no diretório escolhido. ;-]


Programers Documentation / Documentação para Programadores

This Bash script show a way for get ant modify a SVG element without broke it's structure and the original indentation:

Esse bash script mostra uma forma de capturar e modificar um elemento em um SVG sem quebrar sua estrutura e identação original:


#!/bin/bash

#23456789012345678901234567890123456789012345678901234567

# Cria variáveis base e incorpora funções úteis:
. "$( dirname $0 )/ink-bash-base.sh"

# Pega apenas o primeiro argumento ID, caso mais de um seja enviado:
id="$( getArg --id "$@" | head -n 1 )"
# Pega o argumento de cor:
cor="$( getArg --cor "$@" )"

# Inicia o parcer que criará um arquivo temporário onde outras
# funções poderao trabalhar:
startSvgParser

# Seleciona um elemento pelo ID e já modifica sua cor:
elemento="$( getElementById $id | setStyle fill "$cor" )"

# Pega o valor do atributo transformação do elemento selecionado:
transf="$( echo "$elemento" | getAtribute transform )"

# Modifica o atributo transform adicionando uma transformação a lista:
elemento="$( echo "$elemento" | setAtribute transform "$transf rotate(10)" )"

# Substitui o elemento com ID $id pelo elemento modificado:
echo "$elemento" | replaceElementById $id

# Adiciona código SVG extra, antes de certo elemento:
echo -n "<text>Texto antes do id $id</text>" | addSvgCodeBeforeElementId $id

# Imprime o código SVG para o Inkscape aplicar as modificações:
printSVG

# Desfaz tudo o que for temporário para concluir o trabalho:
endSvgParser

#!/bin/bash

#23456789012345678901234567890123456789012345678901234567

# Cria variáveis base e incorpora funções úteis:
. "$( dirname $0 )/ink-bash-base.sh"

# Pega apenas o primeiro argumento ID, caso mais de um seja enviado:
id="$( getArg --id "$@" | head -n 1 )"
# Pega o argumento de cor:
cor="$( getArg --cor "$@" )"

# Inicia o parcer que criará um arquivo temporário onde outras
# funções poderao trabalhar:
startSvgParser

# Seleciona um elemento pelo ID e já modifica sua cor:
elemento="$( getElementById $id | setStyle fill "$cor" )"

# Pega o valor do atributo transformação do elemento selecionado:
transf="$( echo "$elemento" | getAtribute transform )"

# Modifica o atributo transform adicionando uma transformação a lista:
elemento="$( echo "$elemento" | setAtribute transform "$transf rotate(10)" )"

# Substitui o elemento com ID $id pelo elemento modificado:
echo "$elemento" | replaceElementById $id

# Adiciona código SVG extra, antes de certo elemento:
echo -n "<text>Texto antes do id $id</text>" | addSvgCodeBeforeElementId $id

# Imprime o código SVG para o Inkscape aplicar as modificações:
printSVG

# Desfaz tudo o que for temporário para concluir o trabalho:
endSvgParser

Variáveis

Funções

unscapeSvgCode

startSvgParser

endSvgParser

getElementById

setStyle

getAtribute

setAtribute

replaceElementById

appendSvgCode

addSvgCodeBeforeElementId

addSvgCodeAfterElementId

printSVG


DiggThis

Copyright © 2004 - 2018 Aurélio A. Heckert
Conteúdo licenciado sob Creative Commons by-nc-sa