Configurando Assíntota

De todos os hubs, isso me pareceu o mais adequado para esse tópico. Então

Copiado do meu blog para criar outra fonte de informações em russo sobre este tópico.

Descreverei esse processo para o Asymptote 2.35. Então, aqui eu baixei este programa, instalado. Se quisermos usar esse programa por completo, o próximo passo é conectá-lo ao  TeX(Estou fazendo uma descrição para a implementação que estou usando  TeX'a - MiKTeX2.9, assumindo que este programa esteja instalado e configurado corretamente: um repositório está conectado a ele, a instalação de pacotes em tempo real é selecionada, etc.). Presumo que durante a instalação do Asymptote e do MiKTeX, as pastas nas quais foi sugerido pelos instaladores desses programas a criação de arquivos desses programas não foram alteradas pelo usuário. Em seguida, abra a pasta C:\Program Files\Asymptote , que contém os arquivos asycolors.sty e asymptote.sty . Abra a pasta C:\Program Files\MiKTeX 2.9\tex\latex , crie as pastas de cores e assíntotas nela e copie os arquivos de estilo com o mesmo nome mencionado acima para essas pastas. Não se esqueça de ir para Iniciar> MiKTeX2.9> Manutenção (Admin)> Configurações (Admin) e, em seguida , clique em Atualizar FNDB , Atualizar formatos , Ok . É isso aí, o Asymptote sabe onde está o TeX . Farei uma pequena digressão listando os componentes de terceiros necessários para o Asymptote. No TeXworks, puramente por intuição, criei uma ferramenta de layout Asymptote :

imagem

E agora posso abrir arquivos .asy no TeXworks e processá-los com o meu ferramenta. Todos os arquivos resultantes, incluindo o arquivo .pdf final com as imagens, animações e arquivos .mpg criados (veja abaixo) são formados em uma pasta com o arquivo .asy processado, independentemente da presença / ausência de códigos gráficos animados nesse arquivo.

Percebo que na janela mostrada na foto intitulada “Configurações do TeXworks” na seção “Caminhos para o TeX e programas relacionados”, o caminho para a pasta do programa Asymptote não foi adicionado manualmente ou pelo sistema automaticamente ao usar a ferramenta Asymptote que eu criei. Ao abrir arquivos .asy no Explorer:

imagem

esses arquivos, como seria de esperar da barra de título da janela da linha de comando, que exibe informações sobre o andamento do processamento iniciado, são gerados na C:\Windows\System32 , também independentemente da presença / ausência de animação nesse arquivo. Em seguida, você precisa do programa ghostscript . Este programa é necessário para a construção normal de gráficos, mesmo a partir de arquivos .asy, nos quais não há animação. Eu geralmente sou silencioso sobre animação. Estou usando o Asymptote 2.35 usando o ghostscript versão 9.23. Quanto à versão do Asymptote, eu estava com overclock e instalei a versão 2.45. E daí? Ao testar códigos da pasta de exemplos do Asymptote que nem sequer continham animações (eu simplesmente não consegui converter arquivos com animações em .pdf), não consegui obter .pdf de um número maior de arquivos .asy do que ao usar a versão 2.35, mesmo ao instalar um novo versões do ghostscript. Eu consertei, consertei, cuspi, apaguei todas essas versões atualizadas e fiz como estava. Então, você precisa instalar o imagemagick . Forneci o link não para a página inicial do projeto, mas para a página da qual você precisa baixar diretamente o arquivo de instalação. Aqui estava o problema também: por um longo tempo, não consegui decidir qual arquivo baixar para o Windows7. E assim, e assim, e não há lugar para ler o que exatamente precisa ser instalado para o Asymptote. Então, aleatoriamente, baixei o ImageMagick-7.0.8-42-Q16-x86-dll.exe . Quando não estava lá, o processamento de arquivos .asy com animações, cujo formato de saída é .pdf, não causou nenhum erro. A ausência desse programa se fez sentir ao tentar obter o arquivo .gif animado do arquivo wheel.asy com o seguinte erro na linha de comando (por exemplo, peguei o processamento do arquivo wheel.asy, descrições dos erros ao obter o .gif de outros arquivos .asy também apresentam diferenças apenas em, talvez, os valores de um parâmetro inválido):

imagem

Uma tentativa de processar esse arquivo no TeXworks com a ferramenta Asymptote mencionada acima deu o seguinte erro:

imagem

Após uma longa pesquisa de informações na Internet, e mesmo assim em fóruns e sites em inglês, consegui descobrir que não tenho o ImageMagick no meu computador.

PONTO IMPORTANTE: NO CAMINHO, O CAMINHO PARA ESTE PROGRAMA DEVE ESTAR ANTES DA PASTA DO SISTEMA32.

, porque o ImageMagick usa o utilitário convert.exe ao processar arquivos .asy com animação, e um arquivo com o mesmo nome existe na pasta system32 e quando system32 está na frente do ImageMagick no PATH, o sistema, ao chamar esse arquivo, o ImageMagick não procura o arquivo convert.exe na pasta do programa ImageMagick e na pasta system32 e o encontra com êxito, apenas o uso desse arquivo para esses fins não termina com êxito, mas com o erro descrito acima. O próprio John Bowman fala sobre esse problema aqui , na segunda réplica de 12/05/2016:

imagem

Tirei essa foto depois de traduzir esta página para o russo no navegador do Google. Eu encontrei isso agora e a resposta abaixo do interlocutor confirma a correção de minha suposição sobre como tecer o arquivo convert.exe da pasta do programa ImageMagick no Asymptote. Sim, se não fosse o tradutor deste navegador, duvido que escreveria este artigo. Se quisermos usar bem, ao máximo, ainda precisamos fazer o download do ffmpeg . A ausência desse programa só se fez sentir quando tentei processar o arquivo earthmoon.asy, do qual concluo que o Asymptote só precisa desse programa para processar arquivos .asy com animações, cujo formato de saída é .mpg. Portanto, se você não o usar além do Asymptote, provavelmente o usará muito raramente. No entanto, vou lhe dizer como fazê-lo, especialmente porque, ao mesmo tempo, abordarei o momento que precisaremos no futuro. Então, clique no link acima. Em seguida, clique nos botões cercados por retângulos laranja na seguinte foto:

imagem

Baixe este arquivo, descompacte-o. Eu, porque precisava adicionar a pasta bin deste programa ao PATH, para não entupi-lo com letras desnecessárias, descompacte-o diretamente em :\ . Se você fez isso também, adicione à linha PATH C: \ ffmpeg-4.1.3-win32-shared \ bin . Ao contrário do ImageMagick, a posição do ffmpeg no PATH em relação ao caminho para a pasta system32 não importa, assim como, a propósito, essa posição não importa em relação ao caminho para a pasta do programa ImageMagick. Entendo que, quando o Asymptote inclui ffmpeg, o arquivo ...\ffmpeg-4.1.3-win32-shared\bin\ffmpeg.exe . O arquivo ffmpeg.exe também está localizado na pasta do programa ImageMagick, no entanto, ao solicitar, por exemplo, uma versão, um erro é gerado, então tive a impressão de que esse arquivo nesta versão específica do ImageMagick está com defeito e é por isso que precisamos dele instale também o programa ffmpeg: acabamos de adicionar um arquivo ffmpeg.exe viável ao computador, necessário para obter o formato .mpg, e se esse arquivo ImageMagick funcionasse, o programa ffmpeg não seria necessário. No entanto, essa é minha opinião pessoal, que no momento não posso confirmar com nada. No entanto, a presença do arquivo ffmpeg.exe na pasta do programa ImageMagick causou inicialmente um problema: por um lado, aparentemente .mpg sem o ImageMagick geralmente é impossível, porque quando ele foi excluído do PATH (mas com a presença do ffmpeg no PATH) nada aconteceu. Então, primeiro este programa entra em jogo. Bem, desde que começou a trabalhar, ela extrai o arquivo ffmpeg.exe (mesmo que o caminho para o ffmpeg.exe esteja localizado no CAMINHO antes do caminho para o ImageMagick), mas não funciona. E então nada funcionou. E, novamente, esta é apenas a minha conclusão. E a saída desse problema foi uma simples exclusão do arquivo ffmpeg.exe da pasta do programa ImageMagick.

Ao estudar a tecnologia earthmoon.asy de processamento de arquivos na subpasta animações da pasta de exemplos, os seguintes detalhes foram identificados. Depois de instalar o programa ffmpeg, seguindo as etapas descritas acima e adicionando-o ao PATH, abra este arquivo para obter .mpg no explorer (veja acima), e o processamento no TeXworks - bem, de jeito nenhum! E assim e assim - de jeito nenhum! Aconteceu que o ponto é o arquivo config.asy secreto, mesmo para um usuário que fala inglês. O que é isso Este é um arquivo comum com a extensão .asy e o nome config . Os criadores do Asymptote assumiram que, se o usuário atingir esse nível de propriedade de seu programa quando precisar desse arquivo, a maioria de suas necessidades será atendida se esse arquivo estiver na mesma pasta. Esta pasta é criada quando você instala o Asymptote. Por exemplo, se o usuário instalou esse programa na conta IVAN, o caminho absoluto para esta pasta será o seguinte: C:\Users\\.asy . Isso não é um problema para usuários que falam inglês: todas as letras no caminho completo para esta pasta provavelmente contêm apenas letras latinas e o programa Asymptote pode encontrar facilmente o arquivo config.asy. No entanto, se o usuário fala russo, provavelmente o nome da conta em que ele usa o computador está escrito em letras cirílicas. E, portanto, o Asymptote não pode encontrar esta pasta, o que significa que também não pode encontrar o arquivo config.asy. Mas, novamente, esta é a minha explicação do comportamento do Asymptote, e não sou programador nem fã de programação (embora não possa dizer que realmente não gosto de programação). Parece um beco sem saída. Felizmente, porém, os criadores do Asymptote abordaram esse possível problema. Eles se certificaram de que este programa antes de procurar o arquivo config.asy na C:\Users\...\.asy , onde em vez das reticências é o nome de usuário, o procure na pasta com o arquivo .asy sendo processado. Portanto, ao processar o arquivo earthmoon.asy, comecei a criar um arquivo config.asy com o seguinte conteúdo na mesma pasta:
 import settings; convert ="C:\Program Files\ImageMagick-7.0.8-Q16\convert.exe"; 

e só depois disso tudo começou a dar certo para mim. Na verdade, percebi depois que você pode ficar sem o arquivo config.asy: se eu incluísse as linhas no arquivo earthmoon.asy
 settings.convert ="C:\Program Files\ImageMagick-7.0.8-Q16\convert.exe"; 

ou se eu inserisse as linhas do arquivo config.asy que forneci diretamente no arquivo earthmoon.asy e se o arquivo config.asy não estivesse na pasta desse arquivo, isso não mudaria nada: ao processar um arquivo earthmoon.asy, acontece exatamente o mesmo arquivo .mpg operável (observe que a presença do arquivo config.asy na mesma pasta com o arquivo .asy do qual o arquivo .mpg operável será recebido ou a inclusão de linhas do arquivo config.asy no arquivo .asy do qual o arquivo .mpg operável será obtido , mas com a presença opcional do arquivo config.asy em uma pasta com o arquivo asy do qual você deseja obter um arquivo .mpg viável é um pré-requisito para criar um arquivo .mpg viável). Em algum estágio do processamento nos arquivos do TeXworks com o formato .mpg de saída na pasta com esse arquivo .asy, é observada a seguinte desgraça (quando tirei a foto, o arquivo earthmoon.asy foi processado, no qual acelero o processo e reduzo o número de arquivos gerados defina earthmoon.asy como nigual a 4):

imagem

Isso indica que o Asymptote conectou o ImageMagick ao processo e tudo está indo como deveria. E quando o Asymptote termina, todos os arquivos com esses nomes terríveis desaparecem e apenas 3 arquivos permanecem na pasta - 2 arquivos que estavam lá desde o início: o arquivo config.asy e o arquivo .asy, dos quais o arquivo .mpg foi criado e, de fato, o próprio arquivo .mpg. Observo que, além da variável de ambiente convert, existem outras variáveis ​​de ambiente gs, pdfviewer, texpath, dvips e, por exemplo, python , cujos valores podem ser especificados no arquivo de configuração config.asy e, aparentemente, essas não são todas essas variáveis ​​(valores essas variáveis ​​são caminhos, e é por isso que eu as menciono junto com a menção da variável convert).

Parece que não perdi nada.

Source: https://habr.com/ru/post/pt466863/


All Articles