Community이미지github.com

손글씨 페이지 변환

촬영된 필기 문서(과제, 노트 페이지 등)를 하나의 선택된 기준 필체로 깔끔하게 변환하여, 일관된 필체, 선 굵기, 잉크 색상 및 종이 질감으로 페이지별로 정확한 텍스트 검증과 함께 재구성합니다.

손글씨 페이지 변환란 무엇인가요?

이 스킬은 사용자가 촬영한 여러 장의 손글씨 문서를 **하나의 기준 페이지(표준 페이지)** 에 정의된 특정 필체, 선 굵기, 잉크 및 종이 색상으로 통일하여 재구성하는 AI 에이전트용으로 설계되었습니다. 주요 목적은 '이 필체로 다시 써줘' 또는 '사진 찍은 손글씨를 일관된 PDF로 만들어줘'와 같은 요청을 처리하는 것입니다. 이 스킬은 단순한 텍스트 변환을 넘어, **네 가지 독립적인 축(텍스트 정확성, 필체 일치성, 선 굵기/크기, 색상)** 을 검증하여 고품질 출력을 보장합니다. 텍스트만 일치하는 허위 변환(예: 소스 페이지를 그대로 복사하는 현상)을 방지하기 위해, 소스 페이지 이미지를 생성기의 스타일 참조로 절대 사용하지 말고, 표준 페이지 이미지와 정확한 텍스트 전사본만을 입력으로 사용하도록 규정합니다. 또한, 잘못된 크기나 두께를 픽셀 단위로 보정하는 복합 패스(composite pass)와 색상을 표준 페이지에 맞게 조정하는 그레이딩(grade) 과정을 포함하여 최종 결과물의 일관성을 극대화합니다. Claude Code, Cursor, Codex 등 이미지 생성 및 처리 기능을 갖춘 AI 플랫폼에서 활용 가능하며, Python 및 PIL/numpy 같은 이미지 처리 라이브러리를 사용하여 측정, 합성 및 평가를 수행합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AshfanAnsari/handwriting-page-conversion-skill/tree/HEAD

Installed? Explore more 이미지 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

손글씨 페이지 변환은(는) 무엇을 하나요?

촬영된 여러 장의 손글씨 문서를 하나의 타겟 필체로 다시 작성합니다. 타겟 필체는 승인된 하나의 참조 페이지("표준 페이지")로 정의됩니다. 다른 모든 페이지는 텍스트, 필체 정체성, 선 굵기/크기, 색상(잉크 + 종이) 이라는 네 가지 독립적인 축에서 이 표준 페이지와 일치해야 합니다. 네 가지 축이 모두 통과될 때까지 페이지는 완료된 것으로 간주되지 않습니다.

필요 사항: 참조 이미지를 받아들일 수 있는 이미지 생성기, 확대/축소가 가능한 이미지 뷰어, 측정, 합성 및 평가를 위한 이미지 라이브러리(예: Python + PIL/numpy)를 갖춘 스크립팅 런타임.

핵심 규칙 (어렵게 배운 교훈 — 절대 생략하지 마세요)

  1. 소스 페이지 사진을 생성기에 스타일/레이아웃 참조로 절대 제공하지 마세요. 생성기가 소스를 그대로 복사하여 원래 필체가 변하지 않은 채 변환된 것처럼 보이게 만듭니다. 각 페이지는 표준 페이지 이미지 + 소스 페이지 텍스트의 정확한 전사본만을 사용하여 새로 생성하십시오. 다른 어떤 것도 사용하지 마십시오.
  2. 작성자 자신의 철자와 오류를 그대로 보존하십시오. "equillibrium", "singal", "coesist"와 같은 오타를 포함하여 소스에 적힌 내용을 정확히 전사하십시오. 소스 페이지가 참고 서적이나 여러분의 지식보다 내용의 권위자입니다. 숫자, 표 값, 수식은 확대하여 소스와 한 자리씩 대조 확인하십시오.
  3. 네 가지 축을 별도로 검증하십시오. 페이지가 텍스트 축은 통과했지만 필체 축(너무 단정하거나, 둥글거나, 굵거나, 글꼴처럼 보이는 — 생성기의 기본값)에서 실패할 수 있습니다. 텍스트만 검증하면 복사된 페이지를 쉽게 "통과"시켜 버려 품질이 낮은 버전이 배포됩니다.
  4. 페이지별로 작업하십시오. 한 페이지를 만들고, 제시한 후 사용자의 판정(또는 "전부 만들어, 나중에 판단할게"라는 답변)을 받은 후에야 조립을 진행하십시오. 사용자가 지적한 페이지만 수정하고, 조용히 추가 페이지를 교체하지 마십시오.
  5. 그래프, 다이어그램, 표는 가능하면 다시 그리지 마십시오. 다시 그리면 기하학이 깨집니다(만나지 않는 곡선, 중복된 축 눈금, 잘못된 끝점). 인쇄/도표 페이지는 그대로 유지하십시오. 올바른 그림에 작은 레이블 결함이 있는 경우, 픽셀 패치를 적용하십시오: 같은 페이지에서 검증된 빈 종이 패치로 지우고, 샘플링한 잉크 색상으로 손상된 부분을 다시 그리십시오. 잉크 위치는 어두운 픽셀의 행/열 프로파일을 사용하여 찾으십시오. 축소된 미리보기에서 좌표를 눈대중으로 추정하지 마십시오.

작업 흐름

1. 표준 설정

  • 최상의 페이지를 선택하거나 (데모 페이지를 하나 생성하여 승인을 받으십시오). 이 페이지는 다음을 고정합니다: 글자 형태, 중간 줄 높이(측정, 예: 작업 해상도에서 약 40픽셀), 선 굵기, 잉크 색상(샘플링, 예: 진한 청흑색 RGB ≈ [58,58,65]), 종이 색조(예: RGB ≈ [208,206,209]).
  • 이후의 모든 페이지는 일치된 배율에서 이 페이지를 기준으로 판단됩니다. 배율이 다른 상태에서 두께를 비교하면 잘못된 결과가 나옵니다.

2. 전사

  • 각 소스 페이지를 전체 크기로 읽은 다음, 의심스러운 모든 단어를 확대하여 읽으십시오. 정확한 전사본을 작성하되, 철자, 구두점, 밑줄, 상자, 제목, 빈 영역(원본이 페이지 절반을 비워두었다면 재작성도 동일하게 비워둠)을 보존하십시오.
  • 해당 페이지의 "함정 단어"(길거나 특이한 단어, 값, 수식)를 명시적으로 나열하십시오. 이 단어들은 생성 프롬프트에서 철자별 가이드라인을 받고, 개인적으로 확대하여 확인해야 합니다.

3. 새로 생성

  • 프롬프트: 유일한 이미지 참조로서의 표준 페이지 이미지 + 정확한 전사본 + 얇고 가벼운 스타일 명세: "가는 볼펜, 약한 압력, 가늘고 불규칙한 선, 진한 청흑색 잉크, 두껍거나/굵거나/무겁거나/단정하지 않음". 텍스트만으로 프롬프트를 구성하면 모델의 기본 단정한 필체로 표류합니다. 반드시 참조 이미지를 호출에 포함시키십시오.
  • 생성기가 이전 생성 상태에서 재개/계속 기능을 지원한다면, 표준 페이지 자체의 생성에서 재개하여 텍스트만 교체하는 것이 가장 필체 일치도가 높습니다. 단, 이러한 재개 핸들은 만료(약 1시간)될 수 있습니다. 이 경우 참조 이미지로 새로 생성하는 방법으로 대체하십시오. 재개 상태에서 다시 재개를 연쇄적으로 사용하지 마십시오.
  • 첫 번째 시도에서 종종 한두 단어가 누락됩니다. 해당 단어를 프롬프트에 한 글자씩 철자를 적어 재시도하십시오.

4. 크기/두께 측정 및 수정 (복합 패스)

생성 결과는 일반적으로 너무 크고 두껍게 나옵니다. 픽셀 단위로 수정하십시오. 무작정 재생성하지 마십시오.

  • 페이지 테두리를 감지하십시오(예: 색상이 있는 여백 프레임: 녹색 = G가 R, B의 최대값보다 20 이상 큼; 투영 프로파일에서 테두리 선을 찾고, 각 면의 가장 바깥쪽 강한 선을 선택; 희미한 테두리에 대해서는 수동 재정의 허용).
  • 내부를 페이지 자체에서 샘플링한 행별 종이 채우기(행의 중간 종이 색상)로 지우십시오.
  • 잉크만 전송하십시오: 어두움으로부터 알파 마스크를 만들고, 어두움^1.35 곡선으로 선을 얇게 만드십시오. 종이+잉크를 직사각형으로 붙여넣지 마십시오. 과거의 종이 블록을 붙여넣으면 이전 글씨의 흔적이 남고 종이 이음새가 보여 인쇄 시 잉크 얼룩이 됩니다.
  • 잉크 블록의 크기를 조정하여 중간 줄 높이가 표준 페이지보다 약간 낮게(표준 40픽셀에 대해 약 35픽셀 목표 — 일치된 배율 페이지를 눈이 더 크게 느낌) 조정하십시오.
  • 원래 테두리 프레임을 복원하고, 테두리 무결성을 다시 확인한 후, 최종 중간 줄 높이를 증명으로 출력하십시오.
  • 표 페이지나 줄이 있는 구조는 복합 처리하지 마십시오. 긴 줄이 테두리 감지를 망가뜨리고 전송 과정에서 선을 끌어옵니다. 깨끗한 표 생성 결과물을 원시 상태로 제공하십시오.

5. 색상 평가

완성된 페이지에서 종이와 잉크를 측정하고(잉크 샘플에서 테두리 픽셀 제외), 표준 페이지를 기준으로 아핀 변환을 사용하여 채널별로 다시 매핑하십시오: 이 페이지의 종이 → 표준의 종이, 이 페이지의 잉크 → 표준의 잉크. (부호에 주의: 잉크는 종이보다 어두우므로 분모가 음수입니다. 이를 고정(clamping)하면 등급이 반전됩니다.) 재측정하여 확인하십시오: 종이와 잉크가 표준 페이지와 RGB 몇 포인트 이내여야 합니다. 생성된 모든 페이지에 대해 등급을 매기고, 원본에서 가져온 인쇄물과 표준 페이지 자체는 그대로 두십시오.

6. 조립 및 공개

  • 승인된 페이지만을 순서대로 조립하고, 페이지 수를 확인하십시오.
  • 모든 페이지의 연락처 시트를 제공하여 한눈에 일관성을 판단할 수 있도록 하십시오.
  • 알려진 결함(누락된 구절, 근사치 곡선)을 명백히 공개하십시오. 수정 사항이 시각적 자르기 검사를 통과할 때까지 완료된 것으로 제시하지 마십시오. 숫자 프로브는 눈을 대신할 수 없습니다.

이 스킬이 방지하는 실패 모드

  • 변환된 것으로 위장하여 복사된 페이지 배포(소스가 생성기에 제공됨, 텍스트만 QA)
  • 일부 페이지는 단정한 글꼴 같은 필체, 다른 페이지는 타겟 필체(단일 표준 없음, 텍스트 전용 프롬프트)
  • 스타일은 일치하지만 참조보다 20~30% 더 크거나 두꺼운 페이지(일치된 배율 측정 없음)
  • 밝은 흰색 종이와 딱딱한 검정 잉크가 참조 사진의 부드러운 색조에서 멀어짐(등급 단계 없음)
  • 배경에 희미한 글자가 인쇄될 때 잉크 얼룩으로 나타남(종이 블록 합성 대신 잉크 전송)
  • 깨진 기하학으로 다시 그려진 그래프(그대로 유지하거나 픽셀 패치해야 할 것을 재생성)
  • 범위 확장: 사용자가 지적하지 않은 페이지를 재구성

관련 스킬