Oh MyUtils

ASCII 아트 생성기 - 텍스트를 ASCII 아트 배너로 변환 온라인

25가지 FIGlet 폰트로 텍스트를 ASCII 아트 배너로 변환하세요. 코드 주석 래핑, 모든 폰트 미리보기 — 100% 클라이언트 사이드, 텍스트가 서버로 전송되지 않습니다.

폰트
가로 레이아웃
주석 래퍼
최대 너비
공백 줄바꿈
On
공백 제거
On
입력 텍스트
출력
위에 텍스트를 입력하면 ASCII 아트가 생성됩니다

자주 묻는 질문

ASCII 아트 생성기란 무엇인가요?

ASCII 아트 생성기는 일반 텍스트를 ASCII 문자로만 구성된 크고 장식적인 텍스트 배너로 변환하는 도구입니다. FIGlet 폰트를 사용하여 각 글자를 |, /, \, _ 등의 기호로 구성된 여러 줄 패턴으로 변환합니다. 이러한 배너는 터미널 시작 헤더, README 장식, 코드 주석 배너, DevOps 파이프라인 출력 등에 널리 사용됩니다.

FIGlet이란 무엇인가요?

FIGlet은 "Frank, Ian, and Glenn's Letters"의 약자입니다. 1991년에 만들어진 프로그램으로, 특별히 설계된 폰트(.flf 파일)를 사용하여 일반 텍스트에서 텍스트 배너를 생성합니다. FIGfont 사양은 간격 및 "스무싱"(문자 겹침) 규칙을 포함하여 문자가 렌더링되는 방식을 정의합니다. 300개 이상의 커뮤니티 제작 FIGlet 폰트가 있으며, 이 도구는 JavaScript에서 FIGfont 사양을 완벽하게 지원하는 figlet.js 라이브러리를 사용합니다.

ASCII 아트 생성기를 어떻게 사용하나요?

입력 필드에 텍스트를 입력하고 드롭다운에서 폰트를 선택하세요. ASCII 아트가 실시간으로 즉시 생성됩니다. 가로 레이아웃을 조정하거나, 최대 너비를 설정하거나, 코드용 주석 래퍼를 추가할 수 있습니다. 복사 버튼을 클릭하여 결과를 클립보드에 복사하세요. 전체 미리보기 탭을 사용하면 모든 사용 가능한 폰트로 텍스트를 한 번에 볼 수 있습니다.

텍스트 데이터는 안전한가요?

네. 모든 텍스트 처리는 figlet.js JavaScript 라이브러리를 사용하여 브라우저에서 100% 수행됩니다. 텍스트는 어떤 서버로도 전송되지 않으며, 저장되거나 기록되지 않습니다. 페이지 로드 후 완전히 오프라인으로 작동합니다. 폰트 파일은 외부 서버가 아닌 번들된 에셋에서 필요 시 로드됩니다.

가로 레이아웃 옵션은 무엇인가요?

기본은 폰트 디자이너가 의도한 간격을 사용합니다. 최대 간격은 문자 사이에 최대 간격을 추가합니다. 밀착은 겹침 없이 문자를 가깝게 배치합니다. 제어 스무싱은 폰트 파일에 정의된 규칙에 따라 문자를 겹칩니다. 범용 스무싱은 겹치는 위치에서 오른쪽 문자가 우선하는 범용 규칙을 사용합니다.

코드 주석으로 ASCII 아트를 추가하려면 어떻게 하나요?

프로그래밍 언어에 맞는 주석 래퍼 스타일을 선택하세요: JavaScript/C/Go용 //, Python/Ruby/Shell용 #, CSS/C 블록 주석용 /* */, HTML/XML용 <!-- -->, SQL/Lua용 --, LaTeX/MATLAB용 %, VimScript용 ". 생성기가 출력의 각 줄에 선택한 주석 구문을 자동으로 추가하여 소스 코드에 바로 붙여넣을 수 있습니다.

어떤 폰트를 사용할 수 있나요?

FIGlet 폰트 라이브러리에서 선별한 25개 폰트가 포함되어 있습니다: Standard, Banner, Big, Block, Slant, Shadow, Small, Mini, Doom, Isometric1, Isometric3, 3-D, Gothic, Graffiti, Colossal, Larry 3D, Star Wars, Script, Bubble, Digital, Cyberlarge, ANSI Shadow, Rectangles, Ogre, Speed. 전체 미리보기 탭을 사용하면 모든 폰트를 한 번에 비교할 수 있습니다.

코드 예제

// Using figlet.js in Node.js
// Install: npm install figlet
const figlet = require('figlet');

// Synchronous usage
const result = figlet.textSync('Hello World', {
  font: 'Standard',
  horizontalLayout: 'default',
  width: 80,
  whitespaceBreak: true,
});
console.log(result);

// Asynchronous usage
figlet.text('Hello World', { font: 'Slant' }, (err, data) => {
  if (err) {
    console.error('Error:', err);
    return;
  }
  console.log(data);
});

// List all available fonts
figlet.fonts((err, fonts) => {
  console.log('Available fonts:', fonts.length);
});

// Wrap in comment syntax for code files
function wrapInComment(art, style) {
  const lines = art.split('\n');
  switch (style) {
    case '//': return lines.map(l => `// ${l}`).join('\n');
    case '#': return lines.map(l => `# ${l}`).join('\n');
    case '/* */': return `/*\n${lines.map(l => ` * ${l}`).join('\n')}\n */`;
    default: return art;
  }
}

const banner = figlet.textSync('API Server', { font: 'Standard' });
console.log(wrapInComment(banner, '//'));

관련 도구