• Welcome to پارسی‌لاتک.
 
از تاریخ ۱۳۹۳/۸/۱۴ به دلیل ارائه خدمات بهتر به سایت جدید پرسش و پاسخ مهاجرت کرده‌ایم؛ از این رو امکان عضویت و ارسال پست در تالار غیرفعال شده است. لطفاً برای پرسیدن سوال‌های خود به سایت جدید مراجعه کنید.

ورود به سایت جدید

تغییر فاصله فقط بین خطوط نه پانویس و زیرنویس شکلها

نویسنده asadi, آگوست 21, 2011, 11:59:23 بعد از ظهر

« قبلی - بعدی »

asadi

با سلام
در پستهای قبلی آورده شده بود که چگونه می‌توان فاصله بین خطوط را با \usepackage{setspace} کم و زیاد کرد. اینکار باعث می شود که فاصله بین خطوط پانویس و شکلها هم تغییر کند که  زیبایی متن را به هم می ریزد. در یکی از پستها آورده شده بود که برای حل این مشکل باید ماکروهای\@footnotetext و شبه آن را تغییر بدهیم. آیا کسی می دونه اینکارو چطوری میشه انجام داد؟

وحید دامن‌افشان

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

asadi

ممنون آقا وحید
یعنی فقط با یکبار اضافه کردن دستور به اول سند تغییرات همه جا اعمال میشه؟
برای من که چنین اتفاقی نمی افته
یا باید برا هر قسمت جداجدا اعمال کرد؟

وحید دامن‌افشان

نقل قول از: asadi در آگوست 22, 2011, 01:08:37 بعد از ظهر
ممنون آقا وحید
یعنی فقط با یکبار اضافه کردن دستور به اول سند تغییرات همه جا اعمال میشه؟
برای من که چنین اتفاقی نمی افته
یا باید برا هر قسمت جداجدا اعمال کرد؟
ین دستور رو بعد از begin{document}\ قرار بدین و بعد از اون، هر جایی که داخل خود سند، دوست دارین، می‌تونین قرارش بدین.


asadi

ممنون آقا وفا
ولی \baselinestretch همون مشکل رو که در اول پست گفتم برای پانویس ها و شکلها  بوجود میاره
شما راه حلی برای این مشکل برای یک تازه کار دارید؟ در یک پست گفته بودید با تغییر ماکروها.

vafa

نقل قول از: asadi در آگوست 21, 2011, 11:59:23 بعد از ظهر
در یکی از پستها آورده شده بود که برای حل این مشکل باید ماکروهای\@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 بیاید.