핵심 요약
- 레딧의 한 질문에서 출발해 외부 이미지 없이 순수 코드(LuaLaTeX)로 페이지 여백에 수채화풍 꽃과 덩굴을 그려내는 오픈소스 프로젝트 'Florilegium'이 공개되었습니다.
- 텍스트가 없는 여백을 실시간으로 감지해 가지를 뻗어나가며, 페이지 진행에 따라 봄부터 가을까지 계절이 변화하고 나비나 새 같은 생명체도 등장합니다.
- 단 하나의 색상 지정만으로 농담을 계산해 PDF에 바로 그려내며, 딱딱한 조판 도구인 라텍을 유려한 그래픽 생성 도구로 활용해 화제가 되었습니다.
요약 레딧에 올라온 "라텍(LaTeX)으로 이런 꽃 장식을 어떻게 만드느냐"라는 질문에서 시작된 독특한 오픈소스 프로젝트가 주목받고 있습니다. 개발자는 기존 방식을 그대로 복제하는 대신, 외부 이미지나 벡터 그래픽 파일을 전혀 쓰지 않고 오직 수학적 매개변수 곡선과 코드로만 수채화풍의 꽃과 덩굴을 그려내는 패키지 'Florilegium'을 선보였습니다.
이 프로젝트는 루아라텍(LuaLaTeX) 환경에서 문서가 조판되는 순간 실시간으로 루아(Lua) 코드를 실행해 여백을 채웁니다. 매개변수로 정의된 줄기, 잎사귀, 꽃잎 등이 난수 시드에 따라 그려지며, 1998년 장식 관련 논문에서 착안한 탐욕적 공간 채우기(greedy space-filling) 알고리즘을 사용해 본문 텍스트가 차지하지 않은 빈 여백을 감지하고 그 공간을 향해 가지를 뻗어나갑니다. 마지막 페이지처럼 본문이 일찍 끝나 아래쪽에 넓은 여백이 남으면 나뭇가지가 아래쪽 빈 공간으로 둥글게 휘어지며 페이지마다 완전히 고유한 '정원'을 완성합니다.
단순한 무작위 장식에 그치지 않고 본문 내용과도 유기적으로 반응합니다. 문단 첫 글자를 5줄 높이의 화려한 꽃 덩굴 타이포그래피로 감싸면서도 본문 텍스트 복사는 정상적으로 유지되도록 처리하거나, 장이나 절 제목 옆에 강조색 꽃을 달아주는 기능도 갖췄습니다. 또한 전체 페이지 수를 기반으로 첫 페이지의 봄(새싹과 봉오리)부터 마지막 페이지의 가을(씨앗과 낙엽)까지 정원이 점점 나이를 먹어가는 '계절 변화' 옵션도 지원합니다.
여기에 나비, 꿀벌, 줄기를 기어오르는 달팽이, 약 5페이지마다 한 번씩 나뭇가지에 앉는 작은 새 같은 방문자 요소까지 무작위로 등장하며, 델프트 블루(Delft-blue)뿐만 아니라 세피아, 크림슨 등 단 하나의 잉크 색상만 지정하면 OKLCH 색공간을 통해 가장 어두운 선부터 수채화 느낌의 연한 물 빠진 톤까지 자연스럽게 계산해 PDF로 직접 렌더링합니다. 수식과 논문 조판 도구로만 여겨지던 라텍을 예술적인 생성형 그래픽 도구로 승화시켰다는 반응을 얻고 있습니다.
Sponsored · 광고