مطمئناً تا به حال از بسته geometry
در لاتک برای تغییر اندازههای مربوط به متن، از بسته multicol برای حروفچینی متنهای چند ستونه، از بسته fancyhdr برای header و footer و ... استفاده کردهاید. همه این موارد در تک output routine گفته میشود و انجام آن یکی از مشکلترین و پیچیدهترین موارد است.
Lollipop همه این امکانات را با یک دستور ساده در اختیار شما قرار میدهد در واقع شما به عنوان کاربر برای انجام این موارد احتیاج به هیچ بسته دیگری ندارید و حتی لازم نیست که برنامهنویسی تک کنید. تنها با استفاده از دستور \DefinePageGrid
به Lollipop میگویید که مشخصات output routine چیست. به عنوان نمونه اگر میخواهید متن دو ستونه داشته باشید که یک خط عمودی بین دو دستون قرار بگیرد و هر طرف متن با خط عمودی به اندازه 10pt فاصله داشته باشد کافی است بنویسید:
\DefinePageGrid:MultiColumn width:page=6in
textband:start text hwhite:10pt vrule hwhite:10pt text textband:stop
Stop
گزینه width:page=6in
در کد بالا میگوید که اندازه دو ستون به اضافه دو تا 10pt به اضافه ضخامت \vrule
برابر با 6 اینچ باشد و خود Lollipop اندازه هر ستون را بصورت خودکار محاسبه میکند.
با این کد متن دوستونه میشود حالا اگر بخواهید شماره صفحه را هم در سمت چپ پائین صفحه اضافه کنید، کافی است کد را به شکل زیر تغییر دهید:
\DefinePageGrid:MultiColumn width:page=6in
textband:start text hwhite:10pt vrule hwhite:10pt text textband:stop
band:start PageCounter band:stop
Stop
حال اگر بخواهید متن را سه ستنونه کنید کافی است سه text
قرار بدهید. همانطور که میبینید برای انجام این موارد شما هیچ برنامهنویسی با تک انجام ندادهاید و همه این برنامهنویسیها را Lollipop پشت صحنه انجام میدهد و شما تنها به Lollipop میگویید که چه چیزی میخواهید. حتی یک کودک سه ساله نیز میتواند با استفاده از Lollipop هر چیزی را که میخواهد طراحی کند و دیگر احتیاجی به افرادی که ماکرونویسی تک میدانند نیست.
این تنها گوشه کوچکی از توانایی Lollipop در مورد output routine است. راهنمای Lollipop دارای نمونههای زییاد دیگر و اطلاعات بیشتری است، بنابراین میتوانید به راهنمای Lollipop برای یادگیری بیشتر نگاه کنید.