Ajustes

Cada ajuste do Inspetor, com o que faz. O visual (estilo, cores, materiais, traços, sombreamento, limpeza) fica na etapa Estilo, cujo grafo é o visual em forma de nós (o grafo de Estilo); os ajustes de uma câmera e de uma luz aparecem na etapa Cena quando você seleciona essa câmera ou luz (veja A cena). As imagens são o goblin da biblioteca a 64 px, a predefinição clean com um ajuste mudado (feitas por scripts/docs_images.sh, para corresponder a esta versão). Uma barra de destaque na borda esquerda de um ajuste mostra que você o mudou em relação à predefinição; clique com o botão direito nela para redefinir.

Estilo

Predefinição é o ponto de partida. Os projetos guardam só o que você muda, então quando uma versão posterior melhora uma predefinição, os seus projetos melhoram junto.

limpo selout retro4 chapado wireframe
Predefinição: clean Predefinição: selout Predefinição: retro4 Predefinição: flat Predefinição: wireframe

Kits vão um passo além: Salvar kit… (Salvar o Estilo como kit) grava o Estilo mostrado — o visual inteiro de um jogo: a predefinição e suas alterações, o rig de luz, a câmera, os pixels por metro e a própria paleta — num pequeno arquivo de kit (.pixorkit) na biblioteca de pipelines, que a biblioteca de nós lista em Meus pipelines. Usar kit… (Usar um kit de Estilo) cria um Estilo deste projeto a partir de um kit e o mostra, mantendo os clipes, materiais e exportações do próprio projeto, para que todo asset do jogo combine. Dar um clique duplo ou soltar um kit de Estilo no Pixor com um projeto aberto faz o mesmo. Os kits levam a paleta dentro, então funcionam em qualquer máquina e podem ser compartilhados. Na linha de comando: pxr style new game.pixorkit --from hero.pixor, depois pxr render model.glb --style game.pixorkit.

Imitar um sprite… lê o visual de um sprite que você já tem — arte do seu jogo, ou um sprite ao lado do qual você quer encaixar — e o aplica: a paleta dele (exatamente as suas cores), o tamanho (a altura dele), o contorno (uma cor escura em volta toda, um tom mais escuro de cada cor, ou nenhum), as faixas de luz, o quanto as rampas giram a matiz do escuro ao claro e se ele usa pontilhado. A linha de status diz o que ele leu e por quê; todo ajuste pode ser alterado depois, e um único desfazer reverte tudo. Na linha de comando, pxr reference sprite.png diz o que ele lê, e pxr project set game.pixor --match-sprite sprite.png o aplica.

Console (Nenhum por padrão) prende o visual às regras de uma máquina antiga: Game Boy, NES, PICO-8, TIC-80 ou C64 (suas cores, suas cores por sprite, os pixels de largura dupla do C64). Abaixo dele, o Pixor diz se o sprite cabe. Na linha de comando: --console gameboy.

Câmeras

Selecione uma câmera na Estrutura (ou clique nela na vista 3D) para ver estes ajustes. Cada câmera renderiza a própria folha (câmeras enquadradas juntas compartilham uma, uma linha cada); Jogo a configura para um tipo de jogo num clique (veja A cena).

Vista define o ângulo da câmera. Uma câmera é um lado do sprite: mais lados são mais câmeras, giradas em volta do modelo.

lado três quartos isométrico visão de cima
Vista: lateral Vista: três quartos Vista: isométrica Vista: top-down

Inclinação ajusta o ângulo com precisão (graus abaixo do horizonte, de -90° a 90°; negativo olha de baixo para cima). Girar (de -180° a 180°) gira a câmera em volta do modelo: qual lado ela vê. Arrastar a câmera na Vista 3D define os dois. Anel ao redor do modelo adiciona 4, 8, 16 ou 32 câmeras como esta, um lado cada.

20° 45° 70°
Inclinação: 20° Inclinação: 45° Inclinação: 70°

Tamanho diz como os pixels de uma câmera são decididos:

  • Ajustado ao modelo: Largura e Altura são a tela em que o modelo (cada quadro de cada clipe exportado, de todos os lados) é encaixado, de 4 a 2048 px cada: 64 por 64 para um personagem, 960 por 540 para uma imagem de título.
  • Tela e zoom: Largura e Altura são a tela, e Zoom é quantos pixels vira um metro, cada um definido por si: uma tela mais larga mostra mais da cena em vez de desenhar o modelo maior, e o que não cabe é cortado.
  • Pixels por metro: uma escala fixa que todos os seus personagens podem compartilhar (Pixels/m), com a tela crescendo para caber.

Na vista 3D, o quadro da câmera é desenhado na cor de destaque, com a largura e a altura em pixels escritas dentro dele e o zoom (pixels por metro, 18.3 px/m) junto ao canto superior direito. Arraste a alça de um lado para alargar, estreitar, aumentar ou diminuir a tela — a proporção muda junto — e arraste um canto para dar zoom: afastando, o quadro abrange mais na mesma tela; aproximando, menos, desenhado maior. Qualquer um dos dois coloca a câmera em Tela e zoom.

Projeção é Ortográfica — cada parte do mesmo tamanho onde quer que esteja, como costuma ser a pixel art — ou Perspectiva, em que o mais próximo é maior, com o seu Campo de visão (de 5° a 150°, 50° quando você muda para ela). De qualquer forma, os pés do modelo mantêm os mesmos pixels por metro. (pxr project set game.pixor --fov 50, 0 para ortográfica.)

32 px (mostrado em 2x) 64 px
Tamanho: 32 px (mostrado em 2x) Tamanho: 64 px

Amostras (na etapa Estilo, em Limpeza) é a superamostragem por eixo, de 1 a 8. Mais amostras decidem cada pixel a partir de mais do modelo: formas e partes finas mais limpas, renderizações mais lentas. Na linha de comando: --samples 2.

1 4 (padrão)
Amostras: 1 Amostras: 4 (padrão)

Ajuste fino X e Ajuste fino Y (em Amostras) movem o modelo uma fração de pixel ao longo da grade de pixels, de -0.5 a 0.5. O sprite mantém o tamanho e o pivô; só muda quais pontos do modelo viram pixels. Quando um detalhe não se encaixa — um olho que cai entre dois pixels, um degrau numa aresta que deveria ficar limpa —, muitas vezes um quarto de pixel basta. Na linha de comando: --nudge 0.25,0.

Luzes

Selecione a luz principal, de preenchimento ou de contorno na Estrutura (ou arraste as luzes principal e de preenchimento na vista 3D).

Azimute (-180° a 180°) e Elevação (-90° a 90°) posicionam a luz principal. Com Segue a câmera ligado (o padrão), eles são medidos a partir da câmera, então a luz fica do mesmo lado em toda câmera, como os sprites normalmente querem. Desligue e a luz fica parada na cena: um personagem que se afasta dela fica mais escuro (--light-space world na linha de comando).

azimute -90° -45° (padrão) 45°
Azimute da luz: -90° Azimute da luz: -45° (padrão) Azimute da luz: 45°
elevação 15° 45° (padrão) 80°
Elevação da luz: 15° Elevação da luz: 45° (padrão) Elevação da luz: 80°

Rig de luz configura toda a iluminação de uma vez, ainda nas rampas da paleta: Meio-dia (sol bem alto), Crepúsculo (sol baixo e laranja, preenchimento violeta no lado da sombra, brilhos de contorno), Luz de tocha (uma chama quente baixa à frente), Luar (luz fria de cima, leve preenchimento azul, contorno) e Estúdio (principal, preenchimento e contorno, para ícones e prévias). Um rig define a luz principal, uma luz de preenchimento que clareia o lado da sombra em uma ou duas faixas, brilhos de contorno e as matizes para as quais luzes e sombras tendem. Azimute e elevação ainda podem ser alterados depois de escolher um rig.

A Força da luz de preenchimento (0 a 1; 0 a desliga) clareia o lado da sombra; Ângulo próprio lhe dá um azimute e uma elevação próprios em vez de oposta à principal (--fill 0.3 na linha de comando). A luz de contorno (Ligado) adiciona um brilho nas bordas que se afastam de você, no lado iluminado; Largura (0.3 a 0.95) define até onde ela alcança.

Projetar sombras (na luz principal) deixa as partes fazerem sombra umas nas outras (o escudo no corpo, o elmo nos ombros). Na linha de comando: --no-shadow.

ligado desligado
Projetar sombras: ligado Projetar sombras: desligado

Cores

Cores base (1 a 32, só em paletas automáticas) é quantas cores o Pixor tira das texturas do modelo. Cada uma ganha sua própria rampa de tons mais claros e mais escuros.

3 10 (padrão)
Cores base: 3 Cores base: 10 (padrão)

Faixas de luz (1 a 4) é o número de tons iluminados por cor (--bands 2).

1 2 3 (padrão) 4
Faixas de luz: 1 Faixas de luz: 2 Faixas de luz: 3 (padrão) Faixas de luz: 4

Deslocamento de matiz (0° a 30°) puxa as sombras para o azul e as luzes para o amarelo, como fazem os pixel artists, em vez de só escurecer.

0° 9° (padrão) 25°
Deslocamento de matiz: 0° Deslocamento de matiz: 9° (padrão) Deslocamento de matiz: 25°

Pontilhado mistura tons vizinhos num padrão ordenado (Bayer) onde uma faixa de luz encontra a seguinte, em vez de um degrau duro. O padrão fica fixo na superfície do modelo: é uma grade de pixels limpa quando o modelo está parado e se move com cada parte enquanto o modelo anima, em vez de se arrastar por cima dele. Só dois tons vizinhos da mesma cor se misturam, e a limpeza deixa os pixels pontilhados em paz. Vai de 0 a 1 (--dither 0.5). Mostrado a 96 px:

0 (padrão) 0.5 1
Pontilhado: 0 (padrão) Pontilhado: 0.5 Pontilhado: 1

Padrão de pontilhado: Hachura cruzada (Bayer), a grade ordenada acima, ou Disperso (ruído azul), pixels espalhados por igual sem nenhuma grade que o olho perceba — o pontilhado que um artista coloca à mão. Os dois ficam na superfície enquanto o modelo se move, então nenhum se arrasta. Na linha de comando: --dither-pattern blue-noise.

Paleta é Auto (cores tiradas do modelo), uma das paletas do próprio Pixor, ou um arquivo. As embutidas são conjuntos de rampas, do escuro ao claro, feitas para o Pixor:

pixor-16 pixor-8 dusk-12 forest-12
Paleta: pixor-16 Paleta: pixor-8 Paleta: dusk-12 Paleta: forest-12
desert-12 ice-10 mono-8
Paleta: desert-12 Paleta: ice-10 Paleta: mono-8

Arquivo de paleta… usa a sua própria paleta (.hex do Lospec, .gpl do GIMP, ou um .png cujas cores viram a paleta); as rampas se ajustam às cores dela. Na linha de comando: --palette my.hex ou --palette dusk-12. Aqui, uma paleta de 8 cores:

Paleta: uma paleta de 8 cores de um arquivo

Combinar cores em (com uma paleta sua ou uma embutida) decide qual das cores dela conta como a mais próxima quando as rampas se ajustam a ela: OKLab, como o olho julga, mantendo claro e escuro separados (o padrão); sRGB, a distância simples que a maioria das ferramentas usa, que uma paleta feita numa delas pode esperar; ou RGB ponderado, no meio-termo. Abaixo dele, o quadro atual combinado em cada um dos três, lado a lado: clique num para escolhê-lo. Na linha de comando: --match-space srgb.

Materiais

Cada material do modelo aparece aqui com o que o visual faz com ele. Os ajustes pertencem ao material, não a uma parte, então valem para todas as partes feitas dele; selecionar uma parte na etapa Cena diz qual material é esse.

Do arquivo de modelo usa o que um material glTF diz sobre sua superfície, além da cor, como ponto de partida para o visual:

O que o arquivo diz O que o Pixor faz com ele
metal, e rugosidade abaixo de totalmente áspera um reflexo mais duro e mais largo; um metal mantém pixels claros isolados, que são lidos como reflexo e não como ruído
um mapa metallic-roughness o mesmo, por pixel: uma superfície pode ser metálica em alguns lugares e não em outros
um mapa de oclusão uma fresta fica um degrau de rampa mais escura
emissivo (com KHR_materials_emissive_strength) o material brilha: seu tom mais claro, seja qual for a luz. Com um mapa de emissão, só os pixels que o mapa acende, então uma lâmpada brilha e o poste dela não
KHR_materials_unlit o visual flat: o tom base em todo lugar
alpha BLEND, KHR_materials_transmission transparente, desenhado como um pontilhado ordenado ancorado na superfície, nunca como alfa suave; uma textura BLEND com texels transparentes (um decalque, um olho) é recortada onde é transparente
KHR_texture_transform respeitado: a textura é deslocada, girada e escalada como o arquivo pede
clearcoat, sheen, iridescence, volume ignorado, e pxr inspect avisa em vez de deixar a superfície sair errada em silêncio
um mapa de normais lido e relatado, mas não usado: dobrar a normal exige uma tangente, e as duas formas de obter uma ou acrescentam quatro floats a cada vértice de cada modelo, ou diferem entre GPUs

Totalmente áspero e não metálico é o caso neutro, porque é o padrão do próprio glTF e o que todo exportador grava para uma superfície em que ninguém pensou. O número de faixas de luz continua sendo seu: é o ajuste Cores acima, e o modelo não o sobrescreve.

Os mapas são amostrados por uma segunda passada sobre a geometria, que só roda quando um material tem um e isto está ligado, então um modelo sem mapas não custa nada.

Desligue isto para sombrear um material só pela cor. Na linha de comando: --no-material-channels. pxr inspect MODEL lista o que cada material pede.

  • traços: os traços de 1 pixel em volta deste material. Desligue-os para brilhos, chamas, água e vidro, onde um contorno escuro fica errado.
  • ciclo de tons: os tons deste material giram um degrau por quadro na ação Ciclo de cores (água, lava, runas, telas). A exportação JSON também lista os índices de paleta, para engines que fazem o ciclo em tempo de execução.
  • cor de equipe: este material é a cor de equipe. Uma variante de paleta de equipe (etapa Asset, Adicionar variante: equipe vermelha, equipe azul, …) recolore ele e nada mais, cada tom mantendo sua luminosidade, então um sprite dá todas as equipes (Variantes de paleta).
  • fios brilhantes: só enquanto o visual wireframe está ligado. Os fios deste material assumem o seu tom mais claro qualquer que seja a luz, para hologramas e neon, e ficam na folha de emissão (--export emission), para que uma engine possa aplicar bloom neles — ou mostrá-los sozinhos, os fios sobre preto.

Cor de equipe por cor indica a cor de equipe por uma cor: cada rampa daquele matiz vira ela, seja qual for o material que a desenha. Esse é o caminho num modelo pintado a partir de um único atlas de textura, em que um material desenha o personagem todo. Sob a lista, o Pixor diz quantos tons a cor de equipe tem e quantos ela deixa intactos porque outra cor do sprite também os usa.

Um arquivo de modelo pode definir os dois primeiros sozinho, pelas dicas outline e cycle de um material (propriedades personalizadas do material); a lista então diz isso em vez de oferecer a opção.

Traços

Cada tipo de traço é Nenhum, Escuro (o tom mais escuro) ou de Selout 1 a Selout 3 (essa quantidade de degraus abaixo na rampa da própria cor, então uma capa vermelha ganha um traço vermelho-escuro). Na linha de comando e nos arquivos, Escuro é dark e Selout 2 é selout2.

Silhueta, o contorno em volta do sprite inteiro:

nenhum escuro (padrão) selout 3
Silhueta: nenhum Silhueta: escuro (padrão) Silhueta: selout 3

Internos, onde uma parte se sobrepõe a outra:

nenhum escuro selout 2 (padrão)
Interno: nenhum Interno: escuro Interno: selout 2 (padrão)

Vincos, em dobras acentuadas dentro de uma parte:

nenhum (padrão) selout 1
Vincos: nenhum (padrão) Vincos: selout 1

Bordas convexas, um traço claro em dobras que se projetam em sua direção, o único traço que sobe na rampa: Nenhum (o padrão), Brilho 1 a Brilho 3, ou Escuro. Ele usa o ângulo de vinco abaixo. Na linha de comando: --convex highlight1.

Os traços têm sempre 1 px de largura, nunca formam cantos em L e nunca passam de uma parte para outra.

Cor de traço escuro (só em paletas automáticas) define a cor dos traços configurados como Escuro (--line-colour #3b2a8f). Clique nela para abrir o seletor de cores, que também oferece as cores do próprio sprite; clique com o botão direito para voltar à cor da predefinição. Traços selout mantêm as cores da sua rampa, e paletas fixas sempre usam a sua cor mais escura.

#14101c (padrão) #3b2a8f #7a2a1c
Cor de traço escuro: #14101c (padrão) Cor de traço escuro: #3b2a8f Cor de traço escuro: #7a2a1c

Wireframe

As próprias arestas da malha do modelo, desenhadas como traços de pixel na paleta: 3D vetorial retrô, hologramas e efeitos de scanner, plantas técnicas e interfaces. Nenhuma ferramenta concorrente desenha wireframes numa paleta. Fica desligado até você ligar.

  • Arestas da malha é a cor dos fios, e liga o visual (Nenhum por padrão): Escuro usa a cor do traço, Selout N a cor sob o fio N degraus abaixo na sua própria rampa, então uma parte vermelha ganha fios vermelho-escuros.
  • Embaixo deles fica o preenchimento: O sombreamento como sempre, Uma cor chapada sobre a silhueta inteira (o visual vetorial e de planta técnica; fios simples são desenhados no tom mais claro ali, já que a cor chapada é a escura), ou Nada, que deixa os fios sozinhos sobre a transparência. Sem nada embaixo, a silhueta e os traços internos também somem, porque pertencem a uma superfície que não é mais desenhada.
  • Atrás de uma superfície decide o que acontece com a parte de uma aresta que passa atrás de algo: Não desenhado (o padrão), 1 degrau mais escuro, 2 degraus mais escuros ou Pontilhada.
  • Todas as arestas desenha todas elas. Desligado, só são desenhadas as arestas abertas e as mais agudas que o Ângulo de aresta (0° a 180°, 20° por padrão), o que esconde as diagonais que um arquivo glTF põe em quads planos, para que o modelo se leia como os quads com que foi modelado. Diminua o ângulo para desenhar mais da malha, aumente para desenhar só os cantos duros.

Na linha de comando: --wire selout2 --wire-fill none --wire-hidden dotted --wire-angle 30 --wire-all-edges (Escuro é --wire dark, 1 degrau mais escuro é --wire-hidden darker1), e os mesmos nomes em pxr project set (com --no-wire para desligar). Os fios de um material brilham com --wire-glow MATERIAL.

Sensibilidade do traço

Onde os traços começam. Enquanto você arrasta um destes, a viewport mostra o estágio edges: pixels laranja estão acima do limiar de profundidade, ciano acima do ângulo de vinco, azuis estão entre partes; os apagados estão perto.

  • Ângulo de vinco (1° a 179°, 55° por padrão): quão aguda uma dobra precisa ser para ganhar um traço de vinco ou convexo (menor desenha mais; os vincos precisam estar ligados em Traços). --crease-angle.
  • Degrau de profundidade (0.1 a 40 px, 2.5 por padrão): quanto uma superfície precisa estar à frente de outra para ganhar um traço interno (menor desenha mais). --depth-step.
  • Traço mais curto (0 a 16 px, 3 por padrão): traços internos e de vinco mais curtos que isso são descartados; enquanto você o arrasta, a etapa traços aparece. --shortest-line.
  • Traços entre partes (ligado por padrão): traços onde duas partes se tocam mesmo sem degrau de profundidade (desligado: só degraus de profundidade e vincos). --no-part-lines.
  • Silhueta por dentro (desligado por padrão): a silhueta nos próprios pixels de borda do sprite em vez de ao redor deles. --outline-inside.

Sombreamento

Borda de faixa 1, 2… definem onde cada faixa de luz começa, como N.L (-1 está de costas para a luz, 1 está de frente para ela); o estágio bands mostra o resultado enquanto você arrasta. Menor brilho (1 a 16 px, 2 por padrão) descarta brilhos menores que esse número de pixels, e Retenção de faixa (0 a 0.3, 0.05 por padrão) mantém a faixa de um pixel entre os quadros enquanto ele estiver tão perto de uma borda, para que as faixas não cintilem.

Especular acrescenta um tom claro onde a luz reflete (metal, gemas). Tamanho define o tamanho dos brilhos. Brilhos menores que Menor brilho são descartados. Fica desligado em todas as predefinições, exceto selout. (Mostrado com a predefinição selout.)

desligado ligado
Menor brilho: desligado Menor brilho: ligado

Limpeza

Cobertura é quanto de um pixel o modelo precisa cobrir para ser desenhado, e Partes finas quanto uma parte fina (uma lâmina, um cajado) precisa para manter o seu pixel, cada um uma fração do pixel (0.5 e 0.2 por padrão); o estágio coverage mostra os dois (pixels descartados em vermelho).

Tamanho órfão (0 a 4): aglomerados soltos de até esse número de pixels assumem a cor ao redor; 1, o padrão, limpa pixels isolados, 2 também os pares. 0 desliga a limpeza.

Suavização (anti-aliasing): suaviza as escadinhas dos traços do jeito que os pixel artists fazem, com um pixel mais escuro no canto interno de cada degrau. 1 aplica à silhueta, 2 a todos os traços (--aa 1). (Mostrado com a predefinição selout.)

0 (padrão) 1 2
Suavização (anti-aliasing): 0 (padrão) Suavização (anti-aliasing): 1 Suavização (anti-aliasing): 2

Escada regular: as arestas retas da silhueta ganham degraus regulares, do jeito que um pixel artist as desenha — uma aresta isométrica que saiu com 2, 3, 1, 2 pixels vira 2, 2, 2, 2. Só são alteradas sequências de degraus cuja média dá um número inteiro de pixels, as curvas ficam como estão, e nenhuma aresta se move mais de um pixel; os pixels que ele adiciona têm a cor daqueles de onde crescem. Desligado por padrão; --even-stairs na linha de comando.

Quadros de borrão: num clipe, um pixel que se moveu este número de pixels ou mais desde o quadro anterior deixa um rastro da sua própria cor pelo caminho de onde veio — o borrão de um golpe rápido ou de uma estocada, como os animadores desenham. Ele é desenhado atrás do que se moveu, nunca sobre outra coisa, e um quadro lento não tem nenhum. Vai até 64 px; 0 (o padrão) o desliga, e de 3 a 4 pixels serve para um sprite de 64. Na linha de comando: --smear 3.

Exportar

Formatos, layout, espaçamento e extrusão: veja Exportar para engines.

Avaliando os pixels

A Vista 2D na etapa Estilo é onde os pixels são realmente avaliados, e sua barra tem as ferramentas que um usuário do Aseprite procura:

Ferramenta Para que serve
Grade de pixels (Shift+G) um traço em volta de cada pixel, a partir de 4x
Zoom (+, -, roda, pinça) em torno do ponteiro, com suavidade; cada pixel continua com pixels de tela inteiros. O botão do meio move o sprite, Home o enquadra de novo
A leitura (passe o ponteiro sobre um pixel) seu índice de paleta, seu hex, em que rampa está e em que ponto dela, se é preenchimento, traço, pontilhado ou borda suave, e a parte e o material de onde veio. O índice é o que importa: tudo depois do sombreamento trabalha com índices de paleta
Cores (C) cada entrada da paleta como uma barra de quanto este quadro a usa, as que ele não usa em cinza, e quaisquer duas que o olho não consegue distinguir contornadas. É ao vivo, então a contagem de cores é conferida enquanto a rampa está sendo escolhida, e não num relatório depois da exportação
Papel vegetal (O) o quadro anterior (quente) e o seguinte (frio), para avaliar um arco
O que mudou (D) os pixels que diferem do quadro anterior, para que um clipe seja lido como movimento e não como uma fileira de imagens paradas. Um quadro em que nada mudou avisa isso
A/B (A) segure esta renderização, mude uma rampa ou uma luz e pressione A para alternar entre as duas no lugar. Uma mudança pequena se avalia alternando, não lembrando
Fundo um xadrez, uma cor sólida ou a arte do seu próprio jogo, para que o contraste seja avaliado onde o sprite vai viver
Quadro de consistência: todos os lados de uma vez (B) todos os lados deste quadro de uma vez, com largura e altura; Silhuetas desenha cada um só como forma, Pivôs marca onde cada um fica, Contagem de cores conta as cores de cada um
Verificações o que cada verificação encontrou, marcado nos pixels a que se refere e contado abaixo do quadro (desligado de início)

O que está na tela é o que vai para o arquivo: os próprios testes do Pixor comparam os pixels da prévia com os da folha exportada, byte a byte, em todos os níveis de zoom.

Formas

Tamanho, segmentos, posição e cor de uma forma construída no app: veja A cena.

O que esta página descreve está na versão completa; a demo grátis no navegador fica no visual padrão e na folha PNG.

Testar no navegador Obter o Pixor