تالار گفتگوی پارسی‌لاتک

عمومی => انجمن تازه‌کاران => نويسنده: asadi در اوت 21, 2011, 11:59:23 pm

عنوان: تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها
رسال شده توسط: asadi در اوت 21, 2011, 11:59:23 pm
با سلام
در پستهای قبلی آورده شده بود که چگونه می‌توان فاصله بین خطوط را با \usepackage{setspace} کم و زیاد کرد. اینکار باعث می شود که فاصله بین خطوط پانویس و شکلها هم تغییر کند که  زیبایی متن را به هم می ریزد. در یکی از پستها آورده شده بود که برای حل این مشکل باید ماکروهای\@footnotetext و شبه آن را تغییر بدهیم. آیا کسی می دونه اینکارو چطوری میشه انجام داد؟
عنوان: پاسخ : تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها
رسال شده توسط: وحید دامن‌افشان در اوت 22, 2011, 11:31:12 am
با سلام
در پستهای قبلی آورده شده بود که چگونه می‌توان فاصله بین خطوط را با \usepackage{setspace} کم و زیاد کرد. اینکار باعث می شود که فاصله بین خطوط پانویس و شکلها هم تغییر کند که  زیبایی متن را به هم می ریزد. در یکی از پستها آورده شده بود که برای حل این مشکل باید ماکروهای\@footnotetext و شبه آن را تغییر بدهیم. آیا کسی می دونه اینکارو چطوری میشه انجام داد؟
یه راه حل ساده اینه که از دستور ‎

\baselineskip=‎1‎cm‎
‎ ‎‎استفاده کنین. در ضمن، توی سندتون بارها می‌تونین ازش استفاده کنین و مقدارشو کم و زیاد کنین.
عنوان: پاسخ : تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها
رسال شده توسط: asadi در اوت 22, 2011, 01:08:37 pm
ممنون آقا وحید
یعنی فقط با یکبار اضافه کردن دستور به اول سند تغییرات همه جا اعمال میشه؟
برای من که چنین اتفاقی نمی افته
یا باید برا هر قسمت جداجدا اعمال کرد؟
عنوان: پاسخ : تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها
رسال شده توسط: وحید دامن‌افشان در اوت 22, 2011, 01:32:25 pm
ممنون آقا وحید
یعنی فقط با یکبار اضافه کردن دستور به اول سند تغییرات همه جا اعمال میشه؟
برای من که چنین اتفاقی نمی افته
یا باید برا هر قسمت جداجدا اعمال کرد؟
ین دستور رو بعد از begin{document}\ قرار بدین و بعد از اون، هر جایی که داخل خود سند، دوست دارین، می‌تونین قرارش بدین.
عنوان: پاسخ : تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها
رسال شده توسط: vafa در اوت 22, 2011, 01:54:10 pm
تغییر دادن \baselineskip مناسب نیست:
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=linespace
عنوان: پاسخ : تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها
رسال شده توسط: asadi در اوت 22, 2011, 02:08:39 pm
ممنون آقا وفا
ولی \baselinestretch همون مشکل رو که در اول پست گفتم برای پانویس ها و شکلها  بوجود میاره
شما راه حلی برای این مشکل برای یک تازه کار دارید؟ در یک پست گفته بودید با تغییر ماکروها.
عنوان: پاسخ : تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها
رسال شده توسط: vafa در اوت 22, 2011, 02:11:11 pm
در یکی از پستها آورده شده بود که برای حل این مشکل باید ماکروهای\@footnotetext
یعنی تعریف ماکروی \@footnotetext را از پرونده footnote-xetex-bidi.def اینگونه تغییر بدهی:
\makeatletter
\long\def\@footnotetext#1{%
    \begingroup
    \setbox\footins
    \vbox{\if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi%
   \def\baselinestretch{1}%
   \reset@font\footnotesize
    \interlinepenalty\interfootnotelinepenalty
    \splittopskip\footnotesep
    \splitmaxdepth \dp\strutbox \floatingpenalty \@MM
    \hsize\columnwidth \@parboxrestore
    \bidi@footnotetext@dir{#1}%
    \protected@edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}\@makefntext
    {\rule{\z@}{\footnotesep}\ignorespaces#1\strut}}%
     \bidi@footnotetext@after
    \insert\footins{\unvbox\footins}%
    \endgroup}
\makeatother
نقل قول
و شبه آن را تغییر بدهیم.
یعنی علاوه بر ماکروی \@footnotetext که من روش تغییرش را در بالا نشان دادم، باید بصورت مشابهی تعریف دستورات \@LTRfootnotetext و \@RTLfootnotetext و \@mpfootnotetext و \@mpLTRfootnotetext و \@mpRTLfootnotetext را تغییر بدهید. توجه داشته باشید که تعریف مربوط به \baselinestretch بایستی قبل از دستور \reset@font بیاید.