اولین بار است که به اینجا می‌آیید؟ راهنمای سایت را بخوانید!
+3 رای
3.2k بازدید

از کد زیر برای رسم یک دفترچه یادداشت استفاده کرده‌ایم.

\documentclass[a4paper]{article}
\usepackage{tikz,tikzpagenodes,calc}
\usepackage[margin=1in]{geometry}
\usepackage{ptext}
\usepackage[fontsize={10,12}]{xepersian}
\settextfont{Yas}
\begin{document}
\tikz[remember picture,overlay]{\filldraw [fill=brown!10!white,draw=brown!15!white,line width=1pt]
(current page text area.south west) rectangle (current page text area.north east);}
\foreach \d in {1,...,57}%
{\tikz[remember picture,overlay] {\draw[draw=black,fill=gray!50!white]([xshift=-0.5cm,yshift=-\d*\baselineskip]current page text area.north east) circle (5pt);}%
{\tikz[remember picture,overlay] {\draw[draw=black]([xshift=-1cm,yshift=-\d*\baselineskip]current page text area.north east) -- ([xshift=0.7cm,yshift=-\d*\baselineskip]current page text area.north west);}}%
{\tikz[remember picture,overlay] {\draw[very thin,rotate=0,double=gray!70!white,double distance=1.5pt]% 
([xshift=0pt,yshift=-\d*\baselineskip]current page text area.north east) arc (60:-250:12pt and 3pt);
}}}
\begin{tikzpicture}
{\setRTL
\node[text width=0.9\textwidth] at (0,0) {\ptext[1-5]};}
\end{tikzpicture}
\end{document}

فاصله بین خطوط افقی را با \baselineskip تنظیم کرده‌ایم اما فاصله بین سطر های متن با آن هماهنگ نیست. شکل زیر خروجی را نشان می دهد.
enter image description here
این مشکل را چگونه حل کنیم؟

فاصله بین خطوط از الگویی پیروی می‌کند که baselineskip یکی از پارامترهای مهم آن است ولی پارامترهای دیگری نیز دخیل هستند. و فاصله بین خطوط برابر مقدار ثابتی نمی‌شود که از آن عدد به عنوان فاصله خطوط رسم شده استفاده کرد
توسط (589 امتیاز)
متشکر. پس ظاهرا به نوع قلم ارتباط دارد. الان امتحان کردم قلم های معرفی شده در پرسش و پاسخ زیر مثلا Adobe Arabic خروجی بهتری ایجاد می کنند.
http://qa.parsilatex.com/24204/
پس شاید تغییر قلم موقتا مشکل را حل کند.
توسط (735 امتیاز)
شما دارید از گزینه fontsize استفاده می‌کنید و این کافی است. برای پیدا کردن فاصله خط کرسی مناسب عدد دوم در گزینه fontsize (عدد ۱۲) رو تغییر بدهید.
توسط (25.0k امتیاز)
+۱ سوال جذاب
توسط (4.4k امتیاز)

2 پاسخ

+3 رای

سلام
تشکر از جناب رضاییانی عزیز و تشکر از سوالات فنی شما


من روش شما را به کار بردم و چند نکته در موردش بیان می‌کنم.
اول اینکه متن شما از راست تراز نیست در خطوط دوم و سوم و ... می‌توانید از تصویر موجود در پاسخ خود این مورد را ببینید.
دوم اینکه انتهای سطر‌ها مطابق تصویر زیر با تغییر انجام شده تنظیم نشده است و شماره‌ی صفحه را پوشش می‌دهد:


enter image description here


من برای تراز و تنظیم سطرهای شما روش دیگری استفاده کرده‌ام.
از بسته‌یragged2e برای تراز متن استفاده کرده‌ام.
دستورات شما مطابق زیر است:


\documentclass[a4paper]{article}
\usepackage{tikz,tikzpagenodes,calc}
\usepackage[margin=1in]{geometry}
\usepackage{ptext}
\usepackage{ragged2e}
\usepackage[logo=on,pdfinfo=on,
fontsize={10,16.5}]{xepersian}
\settextfont{Yas}
\begin{document}
\tikz[remember picture,overlay]{\filldraw [fill=brown!10!white,draw=brown!15!white,line width=1pt]
(current page text area.south west) rectangle (current page text area.north east);}
\foreach \d in {1,...,41}%
{\tikz[remember picture,overlay] {\draw[draw=black,fill=gray!50!white]([xshift=-0.5cm,yshift=-\d*\baselineskip]current page text area.north east) circle (4pt);}%
{\tikz[remember picture,overlay] {\draw[draw=black]([xshift=-1cm,yshift=-\d*\baselineskip]current page text area.north east) -- ([xshift=0.7cm,yshift=-\d*\baselineskip]current page text area.north west);}}%
{\tikz[remember picture,overlay] {\draw[very thin,rotate=0,double=gray!70!white,double distance=1.5pt]% 
([xshift=0pt,yshift=-\d*\baselineskip]current page text area.north east) arc (60:-250:12pt and 3pt);
}}}
\begin{tikzpicture}
{\node[text width=.87\textwidth] at (0,0) {\justify\raggedleft\ptext[1-5]};}
\end{tikzpicture}
\end{document}

و خروجی شما با نسخه‌ی اولیه‌ی تکلایو 2018 مطابق زیر است:


![enter image description here][2]

درود بر شما و موفق باشید.

توجه کنید که استفاده از دستوراتی همانند \linespread یا \baselinestretch و سایر دستورات مشابه تکنیک بیست سال پیش هستند و پیشنهاد نمی‌شوند.

شما دارید از گزینه fontsize استفاده می‌کنید و این کافی است. برای پیدا کردن فاصله خط کرسی مناسب عدد دوم در گزینه fontsize (عدد ۱۲) رو تغییر بدهید.
توسط (25.0k امتیاز)
@مددپور با درود فراوان. تشکر از روش مفید شما در استفاده از ragged2e.
البته فعلا تنظیم ترازبندی متن مورد نظر نبود. با استفاده از گزینه computeautoilg و حذف پارامتر دوم در fontsize و فعال کردن گزینه Kashida مشکل ترازبندی نیز حل می شود.
در این سوال تعداد خط ها به صورت دستی و با آزمون و خطا تعیین می شود و با تغییر اندازه فونت باید اصلاح شود.
\foreach \d in {1,...,39}
در اینجا عدد 39 با آزمون و خطا تعیین شده است و تعداد خط های افقی را نشان میدهد. میخواهیم آن را با محاسبه تعیین کنیم. مثلا اگر textheight را بر baselinskip تقسیم کنیم و آن را n بنامیم تعداد خط ها باید n-1 باشد. و از آن به صورت زیر استفاده کنیم:
\foreach \d in {1,...,\n-1} این کار دقیقا به چه صورت باید باشد و آیا چنین چیزی در صورت تغییر اندازه و نوع فونت خروجی درست می دهد؟
ویرایش شده توسط
توسط (735 امتیاز)
@وفا  درود.
کاملاً درست است. در ویرایش نهایی کد فراموش کردم linespread\ رو بردارم چون با تعیین پارامتر دوم از fontsize نیازی به استفاده از آن نیست که الان اصلاح شد. سپاسگزارم
ویرایش شده توسط
توسط (8.7k امتیاز)
M J Rezaeiani@
با توجه به اینکه تصویر پشت زمینه‌ی شما در یک صفحه قرار می‌گیرد پیشنهاد من این است که  با توجه به تنظیمات هندسی صفحه در geometry ابتدا یک تصویر متناسب با سایز فونت به عنوان پشت‌زمینه‌ی تمام صفحات انتخاب کنید و سپس اگر قرار است در صفحه‌ای خاص این تنظیمات را تغییر دهید تصویر پشت زمینه را متناسب با آن فونت تنظیم کنید و تغییر دهید و در صورت لزوم به حالت پیش‌فرض برگردید.
در کل استفاده از این نوع برگه‌ها را «شخصا» برای تمام سند پیشنهاد نمی‌دهم چون تعداد مراتب پردازش را بالا و سرعت آن را نیز کند می‌کنند. در صورت لزوم به عنوان پشت‌زمینه تعیین و غیر فعال می‌کنم و بعد از اتمام کار و فقط برای پردازش نهایی فعال می‌کنم.
ویرایش شده توسط
توسط (8.7k امتیاز)
بسیار متشکر.
توسط (735 امتیاز)
+1 رای

با فعال کردن گزینه computeautoilg و حذف پارامتر دوم در fontsize (با تشکر از دوستان) و فعال کردن گزینه Kashida در xepersian مشکل حل می شود. به صورت زیر:

\documentclass[a4paper]{article}
\usepackage{tikz,tikzpagenodes,calc}
\usepackage[margin=1in]{geometry}
\usepackage{ptext}
\usepackage[logo=on,Kashida=on,computeautoilg=on,fontsize=10]{xepersian}
\settextfont{Yas}
\begin{document}
\tikz[remember picture,overlay]{\filldraw [fill=brown!10!white,draw=brown!15!white,line width=1pt]
(current page text area.south west) rectangle (current page text area.north east);}
\foreach \d in {1,...,57}%
{\tikz[remember picture,overlay] {\draw[draw=black,fill=gray!50!white]([xshift=-0.5cm,yshift=-\d*\baselineskip]current page text area.north east) circle (4pt);}%
{\tikz[remember picture,overlay] {\draw[draw=black]([xshift=-1cm,yshift=-\d*\baselineskip]current page text area.north east) -- ([xshift=0.7cm,yshift=-\d*\baselineskip]current page text area.north west);}}%
{\tikz[remember picture,overlay] {\draw[very thin,rotate=0,double=gray!70!white,double distance=1.5pt]% 
([xshift=0pt,yshift=-\d*\baselineskip]current page text area.north east) arc (60:-250:12pt and 3pt);
}}}
\begin{tikzpicture}
{\setRTL
\node[text width=0.87\textwidth] at (0,0) {\ptext[1-5]};}
\end{tikzpicture}
\end{document}

که خروجی به شکل زیر است:

![enter image description here][1]

تکمیل پاسخ:
با استفاده از محاسبات زیر تعداد خطوط را می توان به صورت خودکار به دست آورد و نیازی به آزمون و خطا نخواهد بود.

\newcommand{\n}{\the\numexpr (\textheight /\baselineskip)-1\relax}

و سپس از آن در کد مربوطه به صورت زیر استفاده می کنیم.

\foreach \d in {1,...,\n}

بنابراین کد کامل به صورت زیر است:

\documentclass[a4paper]{article}
\usepackage{tikz,tikzpagenodes,calc}
\usepackage[margin=1in]{geometry}
\usepackage{ptext}
\usepackage[logo=on, Kashida=on,computeautoilg=on,fontsize=12]{xepersian}
\settextfont{Yas}
\begin{document}
\newcommand{\n}{\the\numexpr (\textheight /\baselineskip)-1\relax}
\tikz[remember picture,overlay]{\filldraw [fill=brown!10!white,draw=brown!15!white,line width=1pt]
(current page text area.south west) rectangle (current page text area.north east);}
\foreach \d in {1,...,\n}%
{\tikz[remember picture,overlay] {\draw[draw=black,fill=gray!50!white]([xshift=-0.5cm,yshift=-\d*\baselineskip]current page text area.north east) circle (4pt);}%
{\tikz[remember picture,overlay] {\draw[draw=black]([xshift=-1cm,yshift=-\d*\baselineskip+3pt]current page text area.north east) -- ([xshift=0.7cm,yshift=-\d*\baselineskip]current page text area.north west);}}%
{\tikz[remember picture,overlay] {\draw[very thin,rotate=0,double=gray!70!white,double distance=1.5pt]% 
([xshift=0pt,yshift=-\d*\baselineskip]current page text area.north east) arc (60:-250:12pt and 3pt);
}}}
\begin{tikzpicture}
{\setRTL
\node[text width=0.87\textwidth] at (0,0) {\ptext[1-5]};}
\end{tikzpicture}
\end{document}

در اینجا به منظور آزمایش اندازه قلم را از 10 به 12 افزایش داده ایم. خروجی به صورت زیر است:
![enter image description here][2]

نکته قابل ذکر این است که از این دفترچه یادداشت تنها زمانی می توان استفاده کرد که متن در یک صفحه جا بشود. در غیر این صورت یا باید برای هر صفحه آن را رسم کنیم یا از آن در پس زمینه همه صفحات استفاده کنیم.
[1]: http://qa.parsilatex.com/?qa=blob&qa_blobid=11192488875227904087
[2]: http://qa.parsilatex.com/?qa=blob&qa_blobid=15915368963776543085

اگر از گزینه fontsize استفاده می‌کنید احتیاجی به گزینه computeautoilg نیست.
توسط (25.0k امتیاز)
نکته جالبی بود. بسیار متشکر.
توسط (735 امتیاز)
پرسیدن سوال
وب‌سایت پرسش و پاسخ پارسی‌لاتک جایی برای پرسش و پاسخ درباره سیستم حروف‌چینی لاتک و بسته زی‌پرشین است. در اینجا می‌توانید سوال‌های خود را بپرسید و به سوال‌های دیگران پاسخ دهید.

محبوب‌ترین برچسب‌ها

رفع خطا جدول xepersian مراجع ریاضی‌نویسی شکل bidi فونت فهرست مطالب شماره‌گذاری منابع پانویس بیب‌تک tikz parsilatex تک‌لایو بیمر اسلاید زی‌پرشین پاورقی bibtex سربرگ نماد رسم شکل فرمول‌نویسی قالب ارجاع‌دهی biditexmaker هدر ویرایشگر beamer واژه‌نامه اندازه فونت texstudio عنوان فصل ماتریس اعمال نشدن تغییرات در پی‌دی‌اف رسم جدول شماره صفحه bidipresentation حاشیه رنگ عنوان شکل اسلاید فارسی محیط قضیه گراف مکان شکل tikzpicture حروف‌چینی کد شماره فصل enumerate tabriz_thesis نمایه align زیرنویس شکل کادر itemize فهرست اشکال الگوریتم عدم اجرا listings نیم‌فاصله متن لاتین و فارسی بسته فاصله بین خطوط قالب پایان‌نامه فرمول نصب تک‌لایو فارسی‌تک hyperref شماره فرمول glossaries کپشن نمودار خروجی لاتک حروف‌چینی چندستونی فونت فارسی و انگلیسی ماکرونویسی biditools شماره پاورقی پیوست‌ سوال امتحانی فاصله‌گذاری فرمول چندضابطه‌ای extrafootnotefeatures subfigure biditufte-book header texmaker pdf خطا tex longtable تصویر شمارنده زیرنویس texlive2015 رسم نمودار شماره‌گذاری صفحات پایان نامه دیاگرام فهرست جداول میک‌تک texlive2016 تنظیم جدول آکولاد kashida تورفتگی texworks caption اندیس اعداد فارسی lollipop iust-thesis multicol فصل‌نویسی شعر سوال چهارگزینه‌ای بولد فاصله عمودی pgfplots xindy چپ‌چینی اوبونتو میکروسافت ورد قاب geometry xelatex texlive fancyhdr وسط‌چینی تک لایو 2015 tcolorbox عنوان بخش شماره گذاری به‌روزرسانی بسته aimc46 صفر توخالی فرمول طولانی بیرون‌زدگی کاما پوستر فاصله سطرها نوشتافت شکست خط tex-programming فونت اعداد قرآن tabriz-thesis ایتالیک winedt جستجوی معکوس فلش جایابی تصویر فهرست تصاویر قالب کتاب پاراگراف‌بندی بازیابی اطلاعات هایپرلینک فهرست نمادها شمارنده فصل font محیط ریاضی رسم کادر جداکننده جدول طولانی به‌روزرسانی شماره‌گذاری فرمول algorithm2e فونت بولد proof equation bidipoem eps جدول افقی عکس پانویس چندستونی کمک مالی فاصله خطوط حروف‌چینی شعر زیرشکل minipage قلم پانویس پاراگرافی ltrfootnote پیوست computeautoilg متن فارسی و انگلیسی فرمول چندخطی neveshtuft غلط‌گیری املایی تک‌پارسی پیکان لاتکس tabular baselineskip شماره قسمت قسمت عنوان جدول
...