perl의 코드가 된 gif 파일
perl의 코드가 된 gif 파일
작년에 D 언어 코드로 된 eps 파일을 썼기 때문에 감사합니다.
환경
gif 파일
qiita의 환경을 잘 모르겠지만 업로드 중에 파일에 변경 사항이있을 수 있으므로 gif 파일을 생성하는 D 언어 소스도 작성했습니다.
dman.d
import std.stdio,std.base64;void main(){writeln("GIF89a#\x00X\x00\xf1\x01\x00\x00\x00\x00\xff\xff\xff\xff$$\x00\x00\x00!\xfe%\n;use MIME::Base64;BEGIN{$s=<<'END';");write(cast(string)Base64.decode("ACwAAAAAIwBYAAAC/oyPqcvdAJ1UEARr8JQ65j1pFyKCSSmW5oGS69J+L8xe1UzLmTpXqoezOYAvIsO4QR55D+YSpOQ4WdPhNAplAn3c0A8DEYjH41uTBBYAyOxy1LNVt+dipSVed6/p6pM5U1bHwtdHZbSnhkIWVrbjOFinKHixKPRIGbnDmLKIkpbJ9YfZ6DcaigjGSOqHmljR6NPG8yrnYxPBxaYVticaKrd6Ehh8y6sLMzxp2HtMkVzonEcMKK0sXA0NCTwNiZhNvW197f3z/E2CXY593l15HX6VHg0/JI++7sTsru3NTt0vid4RfPPIPSB4TyCycOJaccPUr2GyWfqaJUTlxxwxlofffs1Rt80joUQFR/IRxc+krF4lVbrhxnEkLXHt6Ih8CPGUKpsHGbrEQimiSaBBP8rK5MXmyioUdOoMQqEpVDQwmHqpOtUSVqhYiFqREoSo161gi1gdWyqJ1RNZejBFG7Ws269c6YbdxcpKhyc1dLB1hIRIjL81vlzq60Iq2zdxGyM+4jix5ByEK/s19CDy47Gh9FYpAAAh/v8K"));write(q"[END
$_=q[print q[import std.stdio,std.base64;void main(){writeln("GIF89a#\x00X\x00\xf1\x01\x00\x00\x00\x00\xff\xff\xff\xff$$\x00\x00\x00!\xfe%\n;use MIME::Base64;BEGIN{$s=<<'END';");write(cast(string)Base64.decode("].encode_base64($s,'').'"));write(q"[END
$_=q['.$_.'];eval};]"~"#\x00;");}';exit];eval};]"~"#\x00;");}
이것을 dmd로 컴파일하고 실행하면 표준 출력에 바이너리가 출력되므로 파일에 저장하면 perl의 코드가 된 gif가 가능합니다.
dmd dman.d
./dman > dman.gif
file dman.gif
perl dman.gif
perl dman.gif
에서 표준 출력에 무엇이 출력 되었습니까?위의 D 언어 소스와 정확히 동일한 것이 출력되었다고 생각합니다.
오류가 발생하거나 일치하지 않으면 죄송합니다. 코드 생성을 잘못했는지, Windows의 CR 문제인지, 떨어 뜨린 gif가 잘못되었거나 다른 환경의 차이 중 하나라고 생각합니다.
따라서이 gif 파일은``이 gif 파일을 출력하는 D 언어의 소스 '를 출력하는 perl 스크립트 '로 된 gif 파일입니다.
자세한 설명은 번거롭기 때문에 나중에 추가합니다.
관심있는 사람들은 적절한 텍스트 편집기로 dman.gif를 들여다보십시오.
Reference
이 문제에 관하여(perl의 코드가 된 gif 파일), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/amama/items/ef4c5dc8e238773fd415텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)