AWESOME AI MOTION
효과Effects / 타이포Typography / Nº 101

손글씨 쓰기Handwriting Write On

Handwriting Write On
손글씨 쓰기
다른 이름Also known as · Handwritten stroke · Handwritten write and erase · 손글씨 쓰기와 지우기 · Write · Unwrite · SVG Stroke Text Draw · SVG 획 텍스트 그리기 · Stitched text
101
렌더 추가 예정CLIP COMING손글씨 쓰기Handwriting Write On정의·파라미터·프롬프트는 아래에 있다Definition, parameters and prompts are below
도판Fig. 101. 손글씨 쓰기 · Handwriting Write On · power2.inOut

펜 끝이 글자의 실제 획 순서대로 움직이며 필체가 드러나는 손글씨 쓰기A pen tip travels along the real stroke order so the handwriting is revealed.

01

무엇을 전하나What it tells

전달 효과ConveysCONVEYS
글을 직접 쓰는 사람의 손길과 속도. 개인적이고 정성스러운 인상을 준다The hand and pace of a person writing: personal and careful.
언제 쓰나Use whenUSE WHEN
  • 서명·인사말·손글씨 제목이 쓰이는 장면
  • 작은 단어를 감성적으로 강조할 때
  • Signatures, greetings and handwritten titles
  • Emotionally emphasizing a small word
과용 주의AvoidAVOID
  • 획 경로는 폰트 외곽선이 아니라 중심선을 쓴다. 외곽선 dash는 두 겹 테두리가 생긴다
  • 작은 크기 글자에는 쓰지 않는다. 획이 보여야 손글씨로 읽힌다
02

좋은 예와 나쁜 예Good and bad use

좋은 사례GOOD

"고맙습니다"가 획마다 300~600ms, 획 사이 80ms로 곡선에서 감속하며 필기 순서대로 그려진다

과용 · 나쁜 사례OVERUSE

글자 폴리곤을 왼쪽에서 오른쪽으로 마스크 와이프해 획 순서와 무관하게 드러난다

03

파라미터Parameters

기본값은 클립에 쓴 값Defaults are the values used in the clip

항목PARAM기본DEFAULT범위RANGE메모NOTE
획 시간0.4s0.3~0.6s길이에 비례
획 사이80ms60~120ms펜 이동
곡선 감속power2.inOutpower1~power3곡선부에서 느려짐
선 굵기8px4~12pxstroke-linecap round
GSAP
// SVG path의 중심선, pathLength=1로 정규화
strokes.forEach((p, i) => {
  p.style.strokeDasharray = 1; p.style.strokeDashoffset = 1;
  tl.to(p, {strokeDashoffset:0, duration:0.4, ease:'power2.inOut'}, 0.2 + i * 0.48);
});
04

에이전트 프롬프트Agent prompts

그대로 붙여 넣는다Paste as is

Claude Code

<대상> 문구를 손글씨로 쓰이게 해줘. 중심선 SVG 획들을 pathLength 1로 정규화하고 stroke-dashoffset을 획 순서대로 1에서 0으로 애니메이션해. 획당 0.4초 power2.inOut, 획 사이 80ms, 선 굵기 8px round cap. 획 순서는 배열 순서로 고정해.

Make the phrase in <target> write itself by hand. Normalize centerline SVG strokes with pathLength 1 and animate stroke-dashoffset 1 to 0 in stroke order: 0.4s power2.inOut per stroke, 80ms between strokes, 8px round caps. Fix the order by array order.

Codex

<파일>에 handwriting write-on을 적용해. 각 path의 pathLength=1, strokeDasharray 1, strokeDashoffset 1에서 0을 0.4초 power2.inOut, 시작 0.2+i*0.48. 0.5초·1.0초·끝을 캡처해 획이 순서대로 진행하는지, 완료 시 dashoffset 0으로 모든 획이 이어지는지 확인해.

Apply handwriting write-on in <file>. For each path set pathLength=1, strokeDasharray 1, strokeDashoffset 1 to 0 over 0.4s power2.inOut, start 0.2+i*0.48. Capture at 0.5s, 1.0s and the end to verify strokes progress in order and dashoffset reaches 0 for all.

05

도구별로 쓰기In your tools

HyperFrames · ReelForge · Scrolline

HyperFramesVIDEO · GSAP
pathLength=1 속성으로 dash를 정규화하면 획 길이와 무관하게 같은 코드가 된다. 획 순서는 배열 순서로 고정한다
ReelForgeBRIEF TO VIDEO
브리프에 SVG 획 경로 배열(순서 포함), 획 0.4초, 획 사이 80ms, 굵기 8px를 싣는다. 획 SVG는 사전 준비 자산으로 받는다
Scrolline DeckSCROLL SCRUB
진행률을 전체 획 길이에 비례해 나눠 각 획의 dashoffset에 매핑한다. 획 사이 정지는 진행률 구간에 그대로 포함한다
06

잘 맞는 조합Pairs well with

07

출처Sources

개념 출처와 라이선스. 구현은 이 레포에서 새로 씀Concept sources and licenses. Implementations are original to this repo