LaTeX(라텍) 문서를 더욱 아름답게 꾸며줄 새로운 패키지 'Florilegium(플로릴레기움)'이 공개되었습니다. 이 패키지는 이미지나 외부 자산 없이 Lua(루아) 스크립트를 활용해 꽃잎, 잎, 줄기 등의 곡선을 계산하고, LaTeX 문서의 페이지 여백에 수채화풍 꽃 장식을 절차적으로 생성합니다. 특히, 문서의 본문 내용과 연동하여 장식을 배치하고, 페이지 진행에 따라 계절이 변하는 듯한 효과까지 연출할 수 있어 출판물에 독특한 미학적 가치를 더합니다.
Florilegium은 두 가지 주요 구성 방식을 제공합니다. 하나는 'florilegium.tex'로, 사용자가 줄기, 잎, 꽃의 위치를 수동으로 지정하고 무작위 매개변수를 샘플링하여 장식을 만듭니다. 다른 하나인 'florilegium-grow.tex'는 '탐욕적 공간 채우기(greedy space filling)' 알고리듬을 사용하여 페이지 레이아웃과 마지막 페이지의 빈 공간에 맞춰 식물을 자동으로 성장시킵니다. 그리기 엔진인 'ink.lua'는 모든 기하 계산을 수행하며, 문서의 기본 색상 하나에서 OKLCH 보간을 통해 다양한 색조의 팔레트를 파생시켜 수채화의 깊이를 표현합니다. 나비, 벌, 달팽이, 새 같은 작은 동물 모티프도 포함되어 있어 더욱 풍성한 장면을 연출할 수 있습니다.
이 패키지의 가장 큰 특징은 문서 내용에 반응하는 장식 기능입니다. 예를 들어, 'sections' 옵션을 사용하면 번호가 매겨진 절(section) 제목 옆에 꽃을 배치할 수 있고, '\florilegiumbloom' 명령으로 특정 줄 옆에 원하는 꽃을 놓을 수 있습니다. 또한, 'aging' 옵션을 통해 첫 페이지의 봉오리에서 시작해 마지막 페이지의 씨앗 머리나 떨어지는 꽃잎으로 이어지는 계절 변화를 표현할 수 있습니다. 이러한 기능들은 페이지 번호 기반 시드(seed)를 사용해 같은 페이지에서는 항상 동일한 정원을 재현하므로, 문서의 안정적인 조판을 가능하게 합니다.
Florilegium은 단순한 시각적 장식을 넘어, LaTeX 문서 제작의 가능성을 확장합니다. 기존에는 디자이너의 수작업이나 외부 이미지 삽입으로만 가능했던 복잡하고 아름다운 장식을 프로그래밍 방식으로 자동 생성함으로써, 전문 서적, 논문, 보고서 등 다양한 문서에 예술적인 감각을 더할 수 있습니다. 특히, 이미지 파일 없이 모든 것을 코드로 처리하기 때문에 문서의 용량을 줄이고, 렌더링 속도를 최적화하는 장점도 있습니다. 이는 학술 출판이나 기술 문서 작성 분야에서 새로운 디자인 표준을 제시할 잠재력을 가지고 있습니다.