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

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

تغییر تعداد ستون و شکستن صفحه

نویسنده habib_seif, نوامبر 12, 2009, 10:03:36 بعد از ظهر

« قبلی - بعدی »

habib_seif

با سلام خدمت دوستان گرامی

در حال حاضر مشغول تایپ مقاله ای هستم که فایل cls آن با بسته multicols سازگار نیست. بنابراین برای تغییر تعداد ستون ها باید از دستورات twocolumn\ و onecolumn\ استفاده کنم ولی مشکل این فرمان ها این است که بعد از هر کدام از این دستورها صفحه شکسته شده که مطلوب من نیست. چگونه می توانم در دستورات فوق از شکست صفحه جلوگیری کنم؟

با تشکر فراوان
سیدحبیب سیف زاده

محمود امین‌طوسی

سلام.
آیا این مثال را که با زی‌پرشین است و در یک مقاله دوستونی، در یک صفحه خلاصه مقاله به صورت یک ستونی  و متن دوستونی است، دیده‌اید؟
سؤالتان را واضح‌تر بیان فرمایید.
آیا اصل سند دوستونی است؟ برای چه قسمتهایی می‌خواهید یک ستونی باشد؟ مثلا اگر مشکل شما با جدول و شکل است، فرم ستاره‌دار آنها مشکل شما را برطرف می‌کند.
اگر مشکلتان برطرف نشد، یک مثال کوچک ضمیمه نمایید.
حضرت علی (علیه السلام):دوستی و محبت را از دل بپرسید، چرا که دلها گواهانی رشوه ناپذیرند.
‎کمک مالی به پارسی‌لاتک‎

habib_seif

اولا از جواب شما ممنونم....

مقاله ای که ارسال نموده اید در حالتی است که بخواهیم یک مقدمه تک ستونی را در ابتدای یک متن دوستونی بنویسیم که به نظرم بهترین روش برای این کار [twocolumn[my text\ باشد. ولی در مورد مقاله من متن تک ستونی در ابتدای متن نیست...

همانطور که جنابعالی حدس زده اید کل متن دوستونی (IEEEtran) است که در وسط آن می خواهم جدولی را نشان دهم که عرض آن به اندازه پهنای کاغذ و طول آن در چند صفحه گسترش پیدا کند. به دلیل اینکه طول جدول بیش از یک صفحه است از بسته longtable استفاده نموده ام که تا آنجا که اطلاع دارم نسخه ستاره دار ندارد. بنابراین مجبور بوده ام قبل از جدول با دستور onecolumn\ به لاتک بگویم که جدول را تک ستونی نشان دهد و این کار باعث شده جدول از صفحه بعد شروع شود.

چیزی که دقیقا می خواهم در لاتک تولید شود را در اپن آفیس ساختم که به پیوست ضمیمه است. امیدوارم توضیحات واضح باشد. اگر اطلاعات دیگر مانند فایل تک مورد نیاز است بفرمایید.

باتشکر
سیف زاده

vafa

می‌تونی فایل cls را بفرستی تا نگاه کنم. در حالت کلی بستهٔ multicol در گزینهٔ دوستونی یک طبقهٔ نوشتار کار نخواهد کرد.

محمود امین‌طوسی

#4
من چیزی به ذهنم نمی‌رسد. البته اگر فایل لاتک را می‌فرستادید بهتر بود. در کل توصیه می‌شود که تصاویر و جداول در بالای صفحه قرار گیرند. که همان چیزی است که در حال حاضر دارید.
-  با clearpage و کمی جابجایی محل جدول در سندتان مشکل خالی ماندن صفحه قبل باید حل شود.
- اگر مقاله برای داوری ارسال می‌شود، احتمالاً مشکلی نداشته باشد که جدول را به آخر منتقل کنید.
حضرت علی (علیه السلام):دوستی و محبت را از دل بپرسید، چرا که دلها گواهانی رشوه ناپذیرند.
‎کمک مالی به پارسی‌لاتک‎

habib_seif

اولا از اینکه مهربانانه و سریع به سئوالات پاسخ می دهید کمال تشکر را دارم. به نظر من این گروه از لحاظ تعداد پاسخ به سئوالات حرف اول را می زند...

راستش نمی خواستم با پرحرفی سر دوستان را درد بیارم ولی مثل اینکه مجبورم این کار را بکنم...

مقاله ای در حال نوشتن دارم که فعلا مشخص نشده برای چه مجله ای خواهم فرستاد: IEEE یا ACM یا Springer یا ... بنابراین نمی دانم که کل مقاله تک ستونی است یا دو ستونی. چیزی که الان مشخص است این است که در وسط این مقاله جدولی دارم که می خواهم حتما تک ستونی باشد. دو دلیل هم برای این کار دارم: یکی اینکه عرض جدول زیاد است و دوم اینکه جدول را با longtable ساخته ام و longtable فقط در حالت تک ستونی کار می کند. بنابراین نیاز داشتم که محیطی مثلا به نام OneColumn داشته باشم که جدول را درون آن قرار دهم. هرچه گشتم چنین محیطی وجود نداشت مثلا بسته multicols فقط محیط هایی برای ستون های ۲ و بیشتر دارد. بنابراین این محیط را خودم به همراه دوستان LaTeX Community ایجاد کردم که به این صورت است:

\newcommand*{\restorecolumns}{}
\makeatletter
\newenvironment*{OneColumn}{%
   \if@twocolumn
      \balance
      \let\restorecolumns\twocolumn
      \onecolumn
   \else
      \let\restorecolumns\@empty
   \fi
   \ignorespaces
}{%
   \nobalance   
   \restorecolumns
   \ignorespacesafterend
}
\makeatother

این محیط خیلی خوب وظیفه خود را عمل می کند و اما مشکل....
اگر محیط OneColumn را در یک قالب تک ستونی استفاده کنم به دلیل اینکه هم خود مقاله و هم جدول تک ستونی هستند بین جدول و متن مقاله هیچ فاصله ای نمی افتد و خیلی عالی جواب می دهد ولی اگر محیط OneColumn را در یک قالب دو ستونی مانند IEEEtran استفاده کنم سوییچ کردن بین تک ستونی و دو ستونی باعث می شود که قبل و بعد از جدول صفحه شکسته شود که خیلی فضا هدر خواهد رفت

بنابراین اگر بتوانیم کاری کنیم که دستورات twocolumn\ و onecolumn\ باعث شکت صفحه نشوند این مشکل رفع می شود. این همان سئوالی است که اول پرسیده بودم.

ضمنا یک متن ساده و یک جدول تک ستونی را یک بار با قالب article و یک بار با قالب IEEE ساختم که مشکل را ملاحضه بفرمایید. قالب IEEEtran را هم ضمیمه کردم.

باتشکر
سیف زاده

vafa

مشکلی که در مورد جدول اشاره کردی دقیقاً مشکل بسته longtable است به جای longtable از supertabular یا xtab استفاده کن.

vafa

این مثالی است که بستهٔ multicol در آن کار می‌کند و فکر می‌کنم همان چیزی باشد که انتظارش را داری.

habib_seif

جناب آقای وفا و سایر دوستان عزیز

در مورد استفاده از بسته های غیر از longtable باید بگم در مثالی که ارسال کردم فرقی بین longtable و supertabular وجود ندارد ولی نمی دانم چرا جدول واقعی فقط با longtable جواب می دهد؟؟؟ نمونه این جدول را ضمیمه می کنم

و اما در مورد مثالی که شما ارسال کردید این ایده را نمی توانم بکار ببرم زیرا نمی خواهم قالب سایر قسمتهای مقاله را دستکاری کنم. این ایده باعث می شود که حتی اگر قالب کلی IEEEtran هم نبود مقاله دوستونی باقی بماند. مضافا اینکه مثال شما به خاطر این جواب می دهد که متن دارای عنوان اسم نویسنده چکیده و ... نیست وگرنه دچار به هم ریختگی می شد...

حالا چه پیشنهادی برای این جدول دارید؟ آیا جدول را می شود به صورت دیگری با supertabular ساخت که دیگر نیازی به longtable و تک ستونی کردن آن نباشد یا راهی برای عدم شکست صفحات هنگام استفاده از onecolumn\ و twocolumn\ سراغ دارید تا همچنان از longtable اسفاده کنم؟

از لطف شما ممنون
سیف زاده

vafa

نقل قول از: habib_seif در نوامبر 13, 2009, 04:37:29 بعد از ظهر
و اما در مورد مثالی که شما ارسال کردید این ایده را نمی توانم بکار ببرم زیرا نمی خواهم قالب سایر قسمتهای مقاله را دستکاری کنم. این ایده باعث می شود که حتی اگر قالب کلی IEEEtran هم نبود مقاله دوستونی باقی بماند. مضافا اینکه مثال شما به خاطر این جواب می دهد که متن دارای عنوان اسم نویسنده چکیده و ... نیست وگرنه دچار به هم ریختگی می شد...
۱- شما چجوری قالب قسمتهای مقاله را با مثالی که من فرستادم به هم می‌ریزید؟ من متوجه منظورتان نمی‌شوم.

۲- نه مقاله دستونی باقی نخواهد ماند، هر جا که شما از محیط multicols استفاده کنید دو ستونی خواهد بود و هر جا که استفاده نکنید یک ستونی خواهد بود.

۳- مثال زیر هم دارای عنوان، نام نویسنده و حتی چکیده است و هیچ به هم ریختگی وجود ندارد.

vafa

در مورد جدول هم راهنمای supertabular و xtab را مطالعه کنید. supertabular و xtab از longtable بهتر هستند.

habib_seif

حالا مثالی را که برای من فرستادید یک بار دیگر بدون اسفاده از multicol کامپایل کرده و تفاوت فونت در abstract را مشاهده کنید

سیف زاده

vafa

من تفاوتی نمی‌بینم و این موضوع را تمام شده تلقی می‌کنم. پیشنهاد می‌کنم قبل از نوشتن مقاله اول تک را یاد بگیری.

habib_seif

شرمنده که شما موضوع را تمام شده تلقی کردید ولی من باز پست دادم. ولی فکر می کنید در این دو مقاله ای که ارسال می کنم abstract ها یکسان است؟؟؟

درمورد یادگیری لاتک هم حق با شماست. من بسیار مبتدی بوده و راه طولانی را پیش رو دارم...

حالا اصلا فرض کنیم که multicol باعث هیچ بهم ریختگی نشود. با این مشکل چکار کنم؟؟؟:

نقل قول از: habib_seif در نوامبر 13, 2009, 04:37:29 بعد از ظهر
... این ایده باعث می شود که حتی اگر قالب کلی IEEEtran هم نبود مقاله دوستونی باقی بماند.  ...

با کمال تشکر و عذرخواهی اگر از دست من ناراحت شده اید...
سیف زاده

vafa

از این دو مثالی که فرستاده‌اید، یکی همانند مال من است و در دیگری فقط برای چکیده کلمهٔ abstract به حالت bold و italic است و متن خود محیط abstract هم به حالت bold است. فکر کنم شما می‌خواهید به این حالت باشد والا فایل قبلی مناسب بود. این را می‌توان به راحتی حل کرد. فایل ضمیمه را نگاه کنید. در کل فکر نمی‌کنم این مسئله مهمی باشد.