터미널에서 애니메이션 GIF 만들기

4317 단어 terminallinuxgif

터미널에서 애니메이션 GIF 만들기



2022-08-19 08:36에 작성된 게시물

실행 중인 콘솔 응용 프로그램을 시연하기 위해 몇 가지 비디오를 생성해야 합니다.



source

화면 캐스팅이나 캡처는 지루하고 대용량 파일을 생성합니다.

그런 다음 작업을 수행하는 두 개의 명령줄 도구를 찾았습니다.

먼저 콘솔 상호 작용을 캡처해야 하며 이는 터미널 세션 레코더asciinema를 사용하여 수행됩니다. 설치 지침을 찾을 수 있습니다here.

저는 우분투를 사용하고 있어서 설치가 아주 쉬웠습니다.

sudo apt install asciinema
[sudo] senha para guionardo: 
A ler as listas de pacotes... Pronto
A construir árvore de dependências 
A ler a informação de estado... Pronto
Serão instalados os seguintes NOVOS pacotes:
 asciinema
0 pacotes actualizados, 1 pacotes novos instalados, 0 a remover e 0 não actualizados.
É necessário obter 35,0 kB de arquivos.
Após esta operação, serão utilizados 125 kB adicionais de espaço em disco.
Obter:1 http://br.archive.ubuntu.com/ubuntu focal/universe amd64 asciinema all 2.0.2-1 [35,0 kB]
Obtidos 35,0 kB em 7s (4.877 B/s) 
A seleccionar pacote anteriormente não seleccionado asciinema.
(A ler a base de dados ... 435184 ficheiros e directórios actualmente instalados.)
A preparar para desempacotar .../asciinema_2.0.2-1_all.deb ...
A descompactar asciinema (2.0.2-1) ...
A instalar asciinema (2.0.2-1) ...
A processar 'triggers' para man-db (2.9.1-1) ...


첫 번째 테스트에서는 다음 명령을 내릴 수 있습니다.

❯ asciinema rec first.cast
asciinema: recording asciicast to first.cast
asciinema: press <ctrl-d> or type "exit" when you're done


그런 다음 명령을 정상적으로 실행할 수 있으며 모든 키 입력 및 콘솔 출력이 first.cast 파일에 기록됩니다.

캡처를 마치려면 CTRL+D를 누르거나 exit를 입력합니다. 더 많은 옵션을 보려면 official usage documentation을 확인하십시오.

이제 애니메이션 gif 파일을 생성해야 합니다. 이 작업의 도구는 힘agg - asciinema gif generator입니다.

rust 애플리케이션이며 리포지토리를 복제하여 빌드하거나 latest release link으로 서핑하는 환경과 호환되는 바이너리 파일을 다운로드할 수 있습니다. 올바른 버전을 시스템에 다운로드하고 실행 파일을 접근하여 실행할 수 있는 디렉토리에 넣습니다.

설치가 잘 되었는지 확인합니다.

❯ agg --version
agg 1.1.0


쉘에 멋진 유니코드 문자(예: 광산)가 있는 경우 TTF 글꼴을 참조하여 gif를 렌더링할 수 있습니다.
나는 "JetBrains Mono"를 좋아하는데 here에서 다운로드하거나 다른 dev 글꼴이 마음에 들면 사용할 수 있습니다.

제 경우에는 다음 단계에서 사용하기 위해 TTF 파일을 폴더(./fonts)에 저장했습니다.

생성된 first.cast 파일에서 gif를 생성합니다.

❯ ./agg --font-dir ./fonts --font-family "agave Nerd Font" first.cast first.gif
31 / 31 [=================================================================] 100.00 % 47.71/s 


이제 현재 폴더에 first.gif 파일이 있습니다.

좋은 웹페이지 즐겨찾기