arquivos gráficos como código fonte contendo uma série de ações

0

Isso é bem conjectural, então talvez não seja uma pergunta apropriada. Se você é da opinião de que eu deveria estar perguntando onde colocar essa pergunta, sinta-se à vontade para me redirecionar.

No meu conhecimento, o trabalho com arquivos de imagem é realizado com uma série de edições nesses arquivos, que são salvos como uma nova versão do arquivo que contém o novo estado. Embora os arquivos em si possam estar em um formato de texto analisável (embora isso não seja verdadeiro no caso de arquivos do Photoshop ou GIMP), e as ações executadas podem ser desfeitas, não conheço nenhum sistema de edição de gráficos cujo formato de arquivo seja um série de etapas realizadas em um conjunto de imagens de origem; é meu entendimento que a maioria dos formatos de arquivo de imagem é de natureza declarativa e não processual.

Meu pensamento é que armazenar um conjunto de etapas em vez de um estado seria uma maneira muito sensata de salvar um arquivo de imagem, pois permitiria salvar um histórico complexo sem salvar grandes bits binários várias vezes. Isso também permitiria que o controle de versão fosse prontamente gerenciado pelos sistemas SCM, até mesmo aliviando a necessidade de bloquear arquivos de imagem, como é comumente feito quando se trabalha com mídia compartilhada no Photoshop ou no GIMP.

Uma versão local compilada da imagem serviria como um cache: ela seria mantida atualizada e usada para evitar a necessidade de reconstruir o estado da imagem resultante toda vez que ela fosse aberta.

Idealmente, seria possível reaplicar várias etapas na criação da imagem final ou modificar os parâmetros dessas etapas, com o mínimo de complicações. Ser capaz de extrair etapas consecutivas e parametrizá-las para uso futuro, já que as macros podem se tornar muito convenientes para implementar.

Existe um sistema de edição de imagens útil que funciona de maneira semelhante a isso? Estou ficando um pouco irritado com a percepção de falta de versatilidade em gimp : quero que funcione um pouco mais como vim .

Dicas sobre como fazer coisas semelhantes no GIMP (talvez usando Python-fu) também são bem-vindas, embora talvez mais apropriadamente como comentários do que como respostas.

Meus requisitos de uso são algo que é de código aberto e executado no Linux, mas estou interessado em ouvir sobre todos os sistemas que funcionam dessa maneira, independentemente do status de licenciamento ou portabilidade.

    
por intuited 08.07.2010 / 02:23

2 respostas

1

Bem, de certa forma, os formatos de imagem existentes podem se qualificar como o que você está procurando, pois o que é uma imagem de bitmap, mas uma série de "instruções" dizendo "definir cor de pixel XXX para YYY"? Ou uma imagem SVG - que é um arquivo XML contendo instruções como "desenhe linha de A a B" ou "coloque um círculo preenchido em azul de raio R no ponto P." Eu vejo o que você está dizendo sobre querer algo mais do que isso, um formato que armazena a série real de etapas que você realmente usou para criar a imagem, mas que pode estar pedindo um pouco demais. Quer dizer, não apenas entre imagens, mas mesmo para arquivos de áudio, arquivos de texto ou documentos de processamento de texto, existe qualquer formato de arquivo que armazene a série exata de ações usadas para criar o conteúdo? Não consigo pensar em nenhum.

Aqui está outra coisa para pensar: um formato de arquivo de imagem consistindo das instruções ordenadas para criar a imagem seria basicamente um programa de computador ou script, não algo que a maioria das pessoas realmente consideraria uma imagem. Isso foi feito, no entanto. Por exemplo, para as imagens que uso em meu site, muitas vezes gosto de criar um script que contenha um conjunto de comandos que recriará a imagem e salve o script no sistema de controle de origem ou qualquer outra coisa. Os comandos em si podem ser, e. Comandos ImageMagick; Eu pessoalmente gosto de usar o pacote TikZ para o LaTeX. (Há um bom e pequeno editor para o TikZ chamado CirKuit que oferece uma prévia de atualização automática da imagem à medida que você a cria; não é WYSIWYG, mas diferente disso é provavelmente a coisa mais próxima que eu já vi do que você está perguntando.)

    
por 08.07.2010 / 02:37
1

Tem sido feito. O formato pré-OS X macintosh "pict" era uma série de comandos QuickDraw codificados. E você certamente pode fazer algo muito semelhante no postscript (ou seja, apenas gravar as chamadas necessárias para desenhar a imagem depois que algum conjunto de primitivos tiver sido definido).

    
por 08.07.2010 / 03:41

Tags