diff options
Diffstat (limited to 'Master/texmf-dist/doc/xelatex/yazd-thesis/chapter1.tex')
-rw-r--r-- | Master/texmf-dist/doc/xelatex/yazd-thesis/chapter1.tex | 260 |
1 files changed, 260 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/xelatex/yazd-thesis/chapter1.tex b/Master/texmf-dist/doc/xelatex/yazd-thesis/chapter1.tex new file mode 100644 index 00000000000..91d3b2783d5 --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/yazd-thesis/chapter1.tex @@ -0,0 +1,260 @@ +\chapter{معرفی سیستم حروفچینی علمی \lr{\TeX}} +\section{مقدمه} +نرمافزار (یا به بیان دقیقتر زبان برنامهنویسی) حروفچینی \TeX\footnote{تلفظ این کلمه به صورت «تِک» است. البته +در برخی زبانها با «تِخ» نیز تلفظ میشود.} +یکی از نرمافزارهای معروف +حروفچینی متون علمی است +که با توجه به قابلیتهای متعدد آن؛ امروزه در سطح وسیعی مخصوصاً در مجلات و کتب ریاضی و فنی مهندسی، +جهت حروفچینی مجلات و کتب استفاده میشود. + در این متن مختصر بر آنیم +که این سیستم را معرفی نموده و قابلیتهای آن را به صورت موجز بیاوریم تا با توجه به این که بسیاری از مجلات +مخصوصاً در علوم پایه و فنی مهندسی، درخواست تایپ و ارسال مقالات با این سیستم را دارند، مورد استفاده +محققین قرار گیرد. + +در اواخر دهۀ 1970 میلادی هنگامی که دونالد کانوث\footnote{\lr{Donald Knuth}} +مشغول آمادهسازی نسخه نهایی کتاب معروفش با عنوان «هنر برنامهنویسی کامپیوتر» +بود، اولین نمونههای متن تایپ شده را از ناشر دریافت کرد در حالی که کیفیت +آن بسیار پایینتر از انتظارات او بود، زیرا تکنولوژی مونوتایپ +به طور وسیعی با تکنیکهای فتوکپی جایگزین شده بود و فونتهای +اصلی برای آن در دسترس نبود. در همان حوالی، او کتابی را دید که به صورت دیجیتالی +تولید شده بود و در نهایت این ایده به ذهن او رسید که حروفچینی به معنی چیدن صفر و +یکها (وجود یا عدم وجود جوهر) است. لذا با خود گفت به عنوان یک دانشمند +علوم کامپیوتر، باید قادر باشم کاری در این خصوص انجام دهم. یک سال بعد از آن، او +به انجمن ریاضی آمریکا دعوت شد تا یکی از سخنرانیهای مدعو را در جلسه سالیانۀ +آنها داشته باشد و در این جلسه او تصمیم گرفت در خصوص علوم کامپیوتر در خدمت ریاضی +صحبت کند. موضوع سخنرانی او روی کار جدید او در \TeX\ (برای حروفچینی) +و متافونت (برای توسعۀ فونتها برای استفاده در \TeX) بود. هرچند در آن زمان +\TeX\ بیشتر به یک پروژه تحقیقاتی نزدیک بود تا یک محصول قوی صنعتی، +اما دارای خواص جذاب زیر بود: +\begin{itemize} +\item جهتگیری اصلی آن این بود که مستقیماً توسط نویسندگان استفاده شود که +دقیقاً میدانند در مورد چه چیزی مینویسند، +\item از یک مرجع دانشگاهی بود و لذا انتظار بود که به صورت رایگان عرضه شود، +\item توسعۀ آن به صورتی بود که روی هر سیستم کامپیوتری با هر سیستمعامل +قابل استفاده و حمل باشد، یعنی روی هر ماشین یک خروجی را تولید کند. +\item سایر برنامههای در آن زمان برای حروفچینی متون ریاضی، دارای مالک، خیلی +گرانقیمت، اغلب برای سختافزارهای محدود و روی سیستمهای مختلف با خروجیهای +مختلف بودند. +\end{itemize} +کانوث در فرصت مطالعاتی خود در سال 1978 میلادی روی این پروژه کار کرد و اولین +نگارش آن را آماده نمود. + +طی سالهای بعد از آن کانوث و افراد دیگری روی آن کار کردند. اما با توجه به سطح +پایین بودن دستورات آن، کار با آن کمی سخت بود. در اوایل دهۀ 1980 میلادی +لِسلی لمپورت\footnote{\lr{Leslie Lamport}} +یک مجموعه از ماکروهای \TeX\ را جمعآوری و به نام \LaTeX\footnote{تلفظ این +کلمه «لِیتِک» یا «لاتِک» است.} ارائه کرد. این نگارش دستوراتی را در اختیار کاربران قرار میداد +که بیشتر نیازهای آنها را برآورد میکرد و لذا استفاده از آن مشابه استفاده از زبانهای +برنامهنویسی سطح بالا، برای سطح وسیعتری از کاربران قابل استفاده میکرد، بدون آن که +نیاز به یادگیری مفاهیم زیادی داشته باشند. طی سالیان بعدی، \TeX به سطح وسیعی +پیشرفت کرد و به تبع آن توسط بسیاری افراد، ناشرین و مجلات علمی مورد استفاده +قرار گرفت و این پیشرفت و استفاده با سرعت بالای هنوز نیز ادامه دارد. +در خصوص تاریخچه به همین مقدار بسنده میکنیم و خواننده علاقهمند را به مرجع +\cite{TeXHis} +ارجاع میدهیم. + +\section{چرا \TeX یا \LaTeX؟} +اگر نشریه یا کتابی آماده کرده باشید و قصد چاپ آن را داشته باشید چه میکنید؟ بدیهی +است ابتدا باید متن شما (که به فرض دستنویس است) حروفچینی شود و سپس برای +چاپ فرستاده شود. البته در بیشتر موارد، حروفچینی با تایپ هم معنی در نظر گرفته +میشود که از نظر حرفهای این دو تفاوت بسیار دارند. کارِ حروفچین، یک کار تخصصی است +که بسته به کاربرد متن، مشخص میکند مثلاً در هر خط از کتاب، چند کلمه یا کاراکتر باشد +و در هر صفحه چند خط قرار بگیرد و یا اشکال کتاب در کجا قرار بگیرند و هر خط در +کدام قسمت شکسته شود و بسیاری موارد دیگر. کیفیت کار حروفچین در محصول نهایی +بسیار موثر است و گاهی یک کتاب بسیار مفید به دلیل کیفیت پایین حروفچینی +که باعث ناخرسندی خواننده از بسیاری جهات میشود، با اقبال خوبی مواجه نمیشود. + +لذا برای ایجاد یک محصول خوب و استاندارد، لازم است از حروفچینی استفاده +شود که تبحر لازم در این حرفه را داشته باشد و با پیشرفتهای این رشته آشنا باشد +و از آخرین تکنیکهای حروفچینی در کار خود استفاده کند. با توجه به کامپیوتری +شدن کارها، حروفچینی نیز به کامپیوترها منتقل شده است و برنامههای بسیاری +برای حروفچینی ارائه شده است. بحث اصلی این است که ما از کدام حروفچین +کامپیوتری برای کار خود استفاده کنیم؟ اولین جواب و شاید تنها جواب اکثر کاربران +به این پرسش نرمافزار \lr{Word} از مجموعۀ \lr{Office} است. اما اولین نکته اینجاست +که \lr{Word} اصلاً یک نرمافزار حروفچین نیست بلکه یک واژهپرداز یا +\lr{Word Processor} است (مراجع \cite{Word,beuty,Art} را ببینید). یک واژهپرداز، یک محیطی در اختیار شما قرار +میدهد تا مشابه یک دستگاه تایپ، شما متن خود را وارد کنید. هرچند در نگارشهای +جدید واژهپردازها امکانات زیادی اضافه شده است ولی هنوز هم این نرمافزارها را +به عنوان حروفچین نمیشناسند. لذا استفاده از یک نرمافزار واژهپرداز برای حروفچینی +مصداق بردن «بوریا باف» به «کارگاه حریر» در مثل فارسی است. + +البته افراد حرفهای در صنعت چاپ احتمالاً به نرمافزار \lr{InDesign} اشاره میکنند +که البته یک نرمافزار حروفچین است، اما علاوه بر قیمت بالای این محصول و تخصصی +بودن استفاده از آن، به اعتقاد بسیاری از کارشناسان حروفچینی، محصول تولید شده +توسط \TeX\ کیفیت بالاتری نسبت به محصول \lr{InDesign} دارد. در ذکر کیفیت +\TeX\ همین بس که در تبلیغات \lr{InDesign} در جایی گفته شده است که این نرمافزار +از الگوریتمهای استفاده شده در \TeX\ استفاده میکند. + +چند مورد از مزایای \TeX \ را میتوان به شرح زیر بیان کرد: +\begin{itemize} +\item اولاً تِک مجانی و متن-باز است و نسخههای مجانی آن روی تمام سیستمعاملها موجود است. از +جمله توزیعهای مجانی تِک میتوان به \lr{TeXLive}، \lr{MikTeX} اشاره کرد. +برای دیدن لیست کامل از توزیعهای تِک و مقایسۀ قابلیتهای آنها به مرجع~\cite{Latex} مراجعه کنید. +\item تِک هم پایدار و هم قابل انعطاف است. اهمیت موضوع پایداری برای افرادی که متونی +را در \lr{Word} آماده کردهاند کاملاً قابل فهم است. زیرا ممکن نیست با مشکلات عدم پایداری +آن که به نوعی برخورد نکرده باشند. این عدم پایداری در \lr{Word} به حدی است که +به طنزهای بسیاری نیز برای آن بیان شده است، مثل این که احتمال قاطی کردن \lr{Word} +با میزان اهمیت متن تایپ شده نسبت مستقیم و با زمان باقیمانده شخص +برای کامل کردن متن، نسبت عکس دارد! از دید قابلیت انعطاف همین بس که کاربر حتی +میتواند فاصله بین کاراکترها را کم یا زیاد کند. +\item امکان فرمولنویسی با استفاده از تِک، اولاً نسبتاً ساده است و ثانیاً خروجی +ایجاد شده بسیار شکیل است. حتی فرمولهای بسیار پیچیده را به راحتی میتوان +در تِک با استفاده از دستوراتی نوشت و کیفیت خروجی فرمول به حدی است که به جرأت +میتوان گفت، همتا ندارد. +\item امکان گرفتن خروجی \lr{PDF} مستقیم از آن وجود دارد و خروجی \lr{PDF} +تولید شده، هم دارای کیفیت بسیار بالایی است و هم حجم بسیار کمی نسبت به سایر نرمافزارها +دارد. میزان این کیفیت به نوعی است که برخی برای تولید تصاویر با کیفیت برداری +از تِک استفاده میکنند. نرمافزارهای گرافیکی وجود دارند که نیازهای کاربر را از طریق یک رابط +گرافیکی دریافت میکند و آن را تبدیل به فایل مناسب حروفچینی با تِک کرده و سپس محصول نهایی +را با استفاده از تک تولید میکند. امکانات و بستههای گرافیکی موجود برای تِک بسیار کامل +است. برای نمونه بارکد تولید شده در انتهای همین مقاله، با استفاده از یکی از این بستهها +ایجاد شده است. تاکید میکنم که این بارکد مربعی مستقیماً در همین مقاله تولید شده و اینطور نیست +که در نرمافزار دیگری تولید شود و در این مقاله درج شود. +\item قابل حمل است به این معنی که یک فایل آماده شده با تِک را برای هر فردی بفرستید، +اولاً آن شخص صرفنظر از این که از کدام توزیع تِک و در کدام سیستمعامل +استفاده میکند، میتواند آن را استفاده کرده و با خروجی دقیقاً یکسان با آنچه شما دریافت میکنید +آن را بسازد. این خاصیت وقتی با حجم کم فایلهای آن (زیرا فایلهای آن فایلهای متنی ساده است) + نیز در نظر گرفته شود، یک امکان +منحصر به فرد برای انجام پژوهشهای مشترک بین افرادی که از راه دور ارتباط دارند، فراهم +میکند. +\item بسیار پویا است و به راحتی قابل توسیع است. همین امر با در نظر گرفتن متن-باز +بودن آن امکانی را فراهم کرده است که افراد بتوانند بر مبنای آن بستههایی را برای +کارهای خود آماده و ضمن استفاده، در اختیار سایر کاربران قرار دهند. لذا خیلی دور از ذهن +نیست کاری را که شما قصد انجام آن را دارید، قبلاً در بستهای آماده شده باشد و شما +به راحتی بتوانید از آن استفاده کنید. مثلاً فرض کنید بخواهید نوتهای موسیقی خود را +در تِک تایپ کنید. با یک جستجوی ساده در موتورهای جستجو به مرجع~\cite{Music} +میرسید. +\item امکان استفاده از آن در حروفچینی زبانهای مختلف وجود دارد، حتی زبانهایی +کاملاً متفاوت با انگلیسی نظیر زبانهای فارسی و عربی که از راست به چپ نوشته میشوند +و زبانهای پیچیدهای نظیر چینی~\cite{Art}. +\item متون تهیه شده در تِک بسیار ساختاریافته است و لذا به راحتی و بدون نیاز به +ویرایش مجدد، میتوان قالب آن را عوض کرد. این مزیت، یکی از اصلیترین دلایلی است +که مجلات از این نرمافزار استفاده میکنند زیرا به راحتی با دریافت فایل اصلی تِک مقاله +و با اندک تغییراتی میتوانند آن را در فرمت مجلۀ خود آماده کنند. البته بسیاری نیز با توجه +به سادگی کار، فرمت را که در قالب یک فایل آماده شده است در اختیار نویسنده قرار میدهند +تا مقاله را با آن فرمت تهیه کند. متون آماده شده با تِک را به ظرفی پر از مایع تشبیه +میکنند که به راحتی میتوان به ریختن مایع در یک قالب، آن مایع را به شکل آن + قالب درآورد. + \item استفاده از تِک برای حروفچینی از طریق خط فرمان است و هیچ رابط گرافیکی + خاصی نیاز ندارد. البته، محیطهای مختلف برای نوشتن و حروفچینی آن موجود و برخی + مجانی و برخی غیرمجانی در دسترس است ولی آنها نیز از دستورات خط فرمانی + تِک برای کار خود استفاده میکنند. از این محیطها میتوان به + \lr{Winedit}\footnote{\url{http://www.winedt.com/}} + و \lr{TeXMaker}\footnote{\url{http://www.xm1math.net/texmaker/}} + اشاره کرد. لیست محیطهای مربوط به تِک و مقایسۀ آنها + را میتوانید در مرجع~\cite{Editors} ببینید. + \item انجام بسیاری از کارهای حروفچینی نظیر شماره گذاری + فصلها و بخش و زیربخشها، فرمولها، اشکال و جداول به صورت اتوماتیک است. +همچنین استفاده از یک سیستم ارجاع + مبتنی بر برچسب جهت به روزرسانی خودکار ارجاعات و تهیه خودکار مواردی چون + فهرست مطالب، فهرست اشکال و اندکس برای متون که انجام آن به صورت معمول هم + زمانبر است و هم با اشتباهات متعددی روبرو میشود را به صورت خودکار انجام میدهد. + ضمن این که به دلیل انجام خودکار + این کارها، در صورت انجام تغییراتی در متن، تمام این موارد قابل انجام به صورت مجدد جهت + به روزرسانی است. فقط تصور کنید که در ویرایش کتاب شما، فقط یک فصل به یکی از + فصول اولیه کتاب اضافه شده است. با این تغییر مختصر باید اولاً شماره تمام فصول بعدی + تغییر کند و ثانیاً در ارجاعات به این فصول نیز این تغییرات اعمال شود که حتی فکر کردن + به انجام دستی آن باعث سردرد میشود! + \item در متون، برخی قسمتها نظیر جداول و اشکال را اشیاء شناور مینامند به این معنی + که حروفچین میتواند آن را در قسمتهای مختلفی بیاورد و مکان ثابتی برای آنها وجود ندارد. + تِک از یک الگوریتم مناسب جهت جایابی این اشیاء شناور استفاده میکند به صورتی که + نتیجه بسیار مناسب است. همزمان این امکان را به نویسنده میدهد که اگر برای شیء شناوری، + محل خاصی مد نظر دارد، بتواند آن را نیز اعمال کند. + \end{itemize} + + در اینجا به بیان همین مزایا بسنده میکنیم. لازم است در کنار مزایا، به موارد و افرادی + نیز اشاره کنیم که استفاده از تِک توصیه نمیشود. + \begin{itemize} + \item اگر زمان کافی برای یادگیری تِک ندارید، مطمئناً این انتخاب مناسبی + برای شما نیست. زیرا ممکن است با نرمافزارهایی نظیر \lr{Word} حتی با فرض + عدم آشنایی بتوانید متنی را آمادهسازی کنید ولی این اتفاق در تِک نمیافتد. لذا در شروع + کار لازم است زمان کافی برای یادگیری حداقل اصول آن صرف کنید. هرچند به شما + اطمینان میدهیم چندین برابر وقتی را که در اینجا صرف میکنید در تهیه متن خود + با این سیستم صرفهجویی خواهید کرد. + \item اگر محیطهای \lr{WYSIWYG}\footnote{\lr{What You See Is What You Get}} + نظیر \lr{Word} را میپسندید. در استفاده از تِک شما باید فایل منبعی را آماده کنید + که یک فایل متنی اسکی یا یونیکد است. سپس این فایل را به حروفچین تِک + میدهید تا متن حروفچینی شده را آماده کرده و به شما تحویل دهد. لذا امکان دیدن همزمان + نتیجه در زمان تایپ متن ورودی وجود ندارد. البته اخیرا پروژهای برای این + منظور به نام \lr{LyX}\footnote{http://www.lyx.org/} + معرفی شده است که سعی در اضافه کردن این قابلیت + به تِک دارد ولی پیشبینی میشود با توجه به مشکلاتی که این قابلیت ایجاد میکند، + استفاده از آن خیلی جذاب نباشد. + \item هیچ زمینهای در برنامهنویسی کامپیوتر ندارید. در نهایت تِک یک زبان برنامهنویسی + حروفچینی است و لذا در روند حروفچینی، ممکن است با خطاهای متعددی +روبرو شوید که لازم است مشابه رفع خطاهای گرامری\footnote{\lr{Syntax error}} +یک برنامه، آنها را پیدا و رفع کنید. یادآوری میشود که در نهایت تِک یک زبان برنامهنویسی است. + \end{itemize} + +\section{ساختار فایل و روش استفاده} + برای استفاه از حروفچین تِک، متن خام باید در یک ویرایشگر تایپ شده و + سپس فایل حاصل (که پسوند آن \lr{.tex} است) + به برنامۀ حروفچین + با استفاده از خط فرمان داده شود. ویرایشگرهایی وجود دارند که امکان وارد کردن + متن خام + و به طور همزمان، امکان دادن فایل به موتور \TeX\ و نشان دادن نتیجۀ حروفچینی را دارند. + اما تمام آنها بر مبنای همان دستورات خط فرمان عمل میکنند و هیچکدام به تنهایی و بدون + دسترسی به یک موتور \TeX\ نمیتوانند خروجی تولید کنند. البته هیچ وابستگی بین + ویرایشگر و فایل تولید شده توسط آن وجود ندارد و یک فایل توسط هر کدام میتواند + تولید یا ویرایش شود یا فایل ایجاد شده توسط یک ویرایشگر، در دیگری تغییر یابد. + +برای حروفچینی فایل، میتوان از طریق خط فرمان به صورت زیر عمل کرد. در ویندوز +وارد \lr{Command Prompt } شوید و به محل قرار گرفتن فایل مربوطه (همان فایل با پسوند +\lr{.tex}) بروید. بسته به کاربرد خود و شکل خروجی مورد نظر +یکی از دستورات زیر را بزنید تا فایل خروجی مربوطه ایجاد شود. به جای \lr{filename} نام +فایل با پسوند \lr{.tex} گذاشته شود. + + +\begin{center} +\begin{tabular}{|c|c|} +\hline +برای خروجی .dvi با فایل ورودی انگلیسی & \lr{latex filename}\\ \hline +برای خروجی .pdf با فایل ورودی انگلیسی & \lr{pdflatex filename}\\ \hline +برای خروجی .pdf با فایل ورودی فارسی یا انگلیسی & \lr{xelatex filename}\\ \hline +\end{tabular} +\end{center} + +فایل آماده شدۀ خام، شامل دستوراتی است که قسمتهای مختلف متن نظیر عنوان فصل و بخش +و سایر موارد را مشخص میکند. این دستورات در راهنمای تِک آمده است. +اگر این دستورات درست استفاده نشده باشند، حروفچین تِک در زمان +حروفچینی خطا میدهد که پیام خطا شامل شماره خطی است که در آن خطا اتفاق افتاده است. +لذا، در این موارد باید مشابه خطاگیری از یک برنامۀ کامپیوتری، نسبت به رفع خطا اقدام کرد. +توجه کنید که وجود خطا ممکن است متن را به صورتی به غیر از آنچه مورد نظر است حروفچینی +کند و اگر تعداد خطاها زیاد باشد ممکن است قسمت یا کل متن را حروفچینی نکند و خروجی +نداشته باشد یا خروجی حاصل ناقص باشد. + + در اینجا به نمونهای کوچک از فایل خام حروفچینی و نتیجۀ حروفچینی میآوریم. + برای فایل حاوی متن زیر (سمت راست) + خروجی شکل روبرویش ایجاد میشود. + + \begin{minipage}{0.4\textwidth} + \latin \small + \begin{verbatim} +\documentclass[12pt]{article} +\begin{document} +\title{Title of paper} +\author{First LastName} +\maketitle +\section{Section title} +some text here and formula +$$\sum_{i=1}^\infty +\frac{e^x}{1+\frac{1}{x}}.$$ +\subsection{sub-section} +And here ... +\section{Section two} +Something +\end{document} + \end{verbatim} + \end{minipage} + \begin{minipage}{0.6\textwidth} + \includegraphics[width=0.9\textwidth]{test-crop.pdf} + \end{minipage} + +\section{منابع آموزشی و فایلهای نمونه} +جهت یادگیری دستورات و شکل استفاده از تِک، منابع زیادی وجود دارد که اکثراً به رایگان +در دسترس هستند. در لینک زیر برخی از این منابع و همچنین اسلایدهایی برای آموزش این +سیستم آمده است. + +\centerline{\centering \url{http://cs.yazd.ac.ir/farshi/LaTeX/LaTeX.html}} + +به خاطر داشته باشید که یادگیری تِک نیاز به زمان و حوصله دارد اما مطمئن باشید ارزش آن را دارد. |