شما هنوز به سیستم وارد نشده اید.

اطلاعیه

#1 2020-07-17 18:41:43

Amir Rahmani
عضو
از : اصفهان
ثبت شده: 2020-07-10
ارسال ها: 14

راهنمای سریع لاتک.

راهنمای سریع لاتکس.

نکته:این آموزش ترجمهی سایت https://www.latex-tutorial.com/quick-start/ است.

نصب لاتکس بر روی گنو/لینوکس
در بیشتر مخازن(repository) های گنو/لینوکسی، بسته texlive موجود هست و میتونید با جستجو در گوگل و یا موتور های جستجوی دیگر از وضعیت این بسته را جویا شوید.
نصب این بسته در آرچ لینوکس:

pacman -S textlive-most

این بسته به ما برنامه pdflatex  را میدهد که مراد ما برای compile فایل های .tex به فایل های PDF را انجام میدهد.

برای compile کافیست:

 pdflatex yourfile.tex 

را وارد کنید تا چند فایل که شامل یک فایل PDF هم میشود به شما داده شود.

ساختار یک فایل LaTex
پرونده ها در لاتکس ساختارشان با پرونده های Word کمی متفاوت است.
پرونده های لاتکس شامل دو بخش میشوند، دیباچه و بخش اصلی.
اگر شما با برنامه نویسی آشنا هستید، شما شاید بخواهید ساختار رو با یک پرونده C/C++ مقایسه کنید. (اشاره به تابع main و بخش گلوبال این دو زبان)

دیباچه
هدف دیباچه: به LaTeX بگوید از چه نوعی پرونده میخواهید بسازید و چه بسته(package) هایی نیاز دارید.
بسته(package): مجموعهای از توابع اضافه مانند amsmath که برای انواع قالب(فورمت) های ریاضی. برای پروندهای که قرار است بسازیم، دیباچه به شکل زیر است.

% Preamble
% ---
\documentclass{article}

% Packages
% ---
\usepackage{amsmath} % Advanced math typesetting
\usepackage[utf8]{inputenc} % Unicode support (Umlauts etc.)
\usepackage[ngerman]{babel} % Change hyphenation rules
\usepackage{hyperref} % Add a link to your document
\usepackage{graphicx} % Add pictures to your document
\usepackage{listings} % Source code formatting and highlighting

شما میتوانید کلاس(class) پرونده را با دستور documentclass مشخص نمایید و  بسته هایی رو  توسط دستور usepackage اضافه کنید.

تنها دستور documentclass اجباری هست(در دیباچه باید استفاده شود)، شما همچنین میتوانید یک پرونده را compile کنید به همراه بسته ها، البته بضی توابع میتوانند در این حالت گم بشوند.

دستور usepackage حتما حتما نباید در قسمت اصلی(main) پرونده استفاده بشود.

قسمت اصلی یا Main
قسمت اصلی در پرونده شبیه این است:

\begin{document}
% ...
% ... Text goes here
% ...
\end{document}

بین آن دو بیانیه (begin و end)، ما میتوانیم محتویات پروندهمان را قرار دهیم. اما قرار دادن متن خالی کفایت نمیکند، از آنجایی که ما میخواهیم قالب دهی هم بکنیم.

قالبدهی در LaTeX
قالبدهی در لاتکس توسط دستورات و محیط(environment)ها اعمال میشوند. بالاترین و پرکاربردترین محیط، محیط document (در کد بالا آوردیم)است. بدیهی است که محیط های بیشتری موجود است، اما چگونه پیدایشان کنیم؟
راحت ترین راه بارگیری برگه تقلب(cheat sheet) برای لاتکس است که لیستی از پرکاربرد ترین دستورات و محیط هارو گرد آوری کرده باشد. همچنین برای بیشتر بسته ها یک راهنما موجود است.

حروفچینی ریاضیات
برای آشنا کردن شما با حروفچینی ریاضی ومحیط ها، من به شما نشان میدهم چگونه چند معادله زیر رو قالبدهی کنید:

f(x)=x2
f′(x)=2x
F(x)=∫f(x)dx
F(x)=13x3

برای قالبدهی(بعلاوهی کد های بالا) با لاتکس :

\documentclass{article}

% Packages
% ---
\usepackage{amsmath} % Advanced math typesetting
\usepackage[utf8]{inputenc} % Unicode support (Umlauts etc.)
\usepackage[ngerman]{babel} % Change hyphenation rules
\usepackage{hyperref} % Add a link to your document
\usepackage{graphicx} % Add pictures to your document
\usepackage{listings} % Source code formatting and highlighting

\begin{document}
    \begin{align}
    f(x) &= x^2\\
    f'(x) &= 2x\\
    F(x) &= \int f(x)dx\\
    F(x) &= \frac{1}{3}x^3
    \end{align}
\end{document}

یادآوری: برای compile از دستور pdflatex استفاده کنید.
و بعد فایل PDF ایجاد شده را بازکنید و از چهارمعادله که به صورت ریاضی قالبدهی شدهاند لذت ببرید.

همانطور که دیدید، ما دوباره یک begin و یک end داریم، این برای اعمال محیط align بر روی پرونده خود است. . با اینکار در علامت & تراز خواهند شد.

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

طرح بندی
معمولا یک پرونده فقط شامل یکسری معادله ها نمیشود، بلکه نیاز به ساختار هایی دارد. ما معمولا به حداقل هایی همچون:
*. عنوان/سربرگ
*. فهرست محتویات
*. سرفصل ها/ بخش بندی ها
*. فهرست کتب
نیاز داریم.

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

\section{Text goes here} % On top of document hierarchy; automatically numbered
\subsection{}
\subsubsection{}
\paragraph{} % Paragraphs have no numbering
\subparagraph{}

\author{Claudio Vellage} % The authors name
\title{A quick start to \LaTeX{}} % The title of the document
\date{\today{}} % Sets date you can remove \today{} and type a date manually
\maketitle{} % Generates title
\tableofcontents{} % Generates table of contents from sections and subsections

\\ % Linebreak
\newpage{} % Pagebreak

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

همچنین، لاتکس دستوراتی برای ساخت عنوان هم فراهم ساخته است با دستور maketitle. این نیاز دارد که دستورات نویسنده،عنوان،تاریخ از قبل مشخص شده باشند.
اگر شما دستورات maketitle و tableofcontents در پرونده خود استفاده کنید، دستورات در مکان مناسب جای میگیرند، پس شما احتمالا باید آنهارو در اول پرونده خود بگذارید.

نکته: اگر شما میخواهید عنوان در صفحهی جدا نوشته شود از دستور newpage اسفاده کنید.

اضافه کردن عکس
بیشتر پرونده ها علاوه بر موارد فوق نیاز به عکس هم دارند، اضافه کردن آنها بسیار آسان است:

\begin{figure}
\includegraphics[width=\textwidth]{picture.png}
\caption{This figure shows the logo of my website.}
\end{figure}

شما باید تصویر را در محیط figure تعبیه کنید، بعد از includegraphics اسفاده کنید تا عکس را انتخاب کنید.
نکته: عکس شما یا باید در همان مسیری و پوشهای باشد که فایل .tex شما موجود باشد، یا باید اینگونه آدرسدهی کنید:

...
\includegraphics[width=\textwidth]{FOLDERNAME/picture.png}
...

معقول است که شما عکس هایتان رو در یک زیر-پوشه قرار بدید اگر تعداد زیادی از آنها دارید.

قالبدهی سورس کد
برای اینکار ما از بسته listings استفاده میکنیم. شما میتوانید زبان خود را مشخص کنید، در این مثال من گفتم از لاتکس استفاده میکنم.

\begin{lstlisting}[language={[LaTeX]TeX},caption=Adding pictures in \LaTeX{}.,breaklines=true,frame=single]
...
\end{lstlisting}

برای انتخاب زبان اینگونه عمل میکنیم:  [گویش] زبان،  که در این مثال لاتکس یک گویش از TeX است. لیست تمام زبان های پشتیبانی شده را میتوانید توسط راهنمای بسته listings پیدا کنید.

فهرست منابع و کتب
شما میتوانید برچسب برای تمام چیز هایی که شماره گذاری شدهاند انتخاب کنید. اگر بخواهید این برچسب رو به یک بخشی از پرونده خود ارجاع بدید به به سادگی میتوانید از label و ref استفاده کنید.
label بیان میکند که به چه میخواهید ارجاع بدید. و منبع شماره عنصر پرونده شما را خواهد نوشت.

\section{}\label{sec:YOURLABEL}
...
I've written text in section \ref{sec:YOURLABEL}.

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

\usepackage[backend=bibtex,style=verbose-trad2]{biblatex} % Use biblatex package
\usepackage[backend=bibtex,style=verbose-trad2]{biblatex} % Use biblatex package

تمام اطلاعات مربوط به فهرست کتب  و منابع در فایل  .bib ذخیره میشوند.
و نباید در فایل tex شما باشند.
برای مثال فایل bib :

@ARTICLE=
{
VELLAGE:1,
AUTHOR="Claudio Vellage",
TITLE="A quick start to \LaTeX{}",
YEAR="2020",
PUBLISHER="",
}

حال که این فایل رو داریم من میتونم توسط دستور cite در فایل tex خود بهش ارجاع بدهم.

This feature works as I described in \cite{VELLAGE:1}.

biblatex بسیار هوشمند است و برای autogenerate کردن، ما معمولا در انتهای درونده خود از این دستور استفاده میکنیم:

\printbibliography

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

امیر رحمانی.

آخرین ویرایش توسط Amir Rahmani (2020-07-25 20:15:02)


بنگر ز جهان چه طَرْف بربستم؟ هیچ،
وَز حاصلِ عمر چیست در دستم؟ هیچ،
شمعِ طَرَبم، ولی چو بنشستم، هیچ،
من جامِ جَمَم، ولی چو بشکستم، هیچ

آفلاین

#2 2020-07-17 18:50:57

Arcush
Administrator
ثبت شده: 2015-09-15
ارسال ها: 1,558

پاسخ: راهنمای سریع لاتک.

عالی امیر عزیز و امیدوارم ادامه دار باشه. من هم با اجازه ت یک نکته را عنوان کنم. تقریبن می شه گفت هدف اصلی در لاتک حروف چینی فرمول های ریاضیه (نه این که در جاهای دیگه ازش بهره نبرند). به همین خاطر رایج هست از ویرایشگرهایی که کار را برای حروف چینی راحت می کنند استفاده بشه. یکی از بهترین این ویرایشگرها TexStudio هست. شاید با اغماض بشه گفت ارتباط ویرایشگر Tex با مجموعه ی TexLive مثل ارتباط یک IDE با زبان برنامه نویسی مربوط به اون هست. بسیار مشهور هست که می گن یادگیری Tex در اوایل کمی توأم با سختی و نارضایتی هست ولی به محض یادگیری، تقریبن دیگه امکان نداره شخص چیز دیگری را جایگزین کنه.

آفلاین

#3 2020-07-20 12:33:40

Arcush
Administrator
ثبت شده: 2015-09-15
ارسال ها: 1,558

پاسخ: راهنمای سریع لاتک.

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

امیرجان درباره ی نصب توضیح داد. ولی من به شخصه ترجیح میدم که کل فایل ایزوی تکسلایو را از وبسایتش بگیرم و مستقل از ریپوها در توزیعی که دارم نصب کنم. این فایل ایزو در تمام پلتفرم ها از قبیل ویندوز و لینوکس و مک و ... نصب میشه و هیچ مشکل خاصی برای نصب اش وجود نداره. فایل تورنت اش را از این جا (به عنوان یک آدرس رسمی) بگیرید:
https://www.tug.org/texlive/files/texli … so.torrent

اگر هم مایل هستید از میرورها بَرِش دارید اینجا یک آدرس رسمیه:
http://ctan.asis.ai/systems/texlive/Images/texlive.iso

این صفحه هم حالت های دیگه (و در بر گیرنده ی حالت های بالا) را در اختیار قرار می ده:
https://www.tug.org/texlive/

کافیه فایل را مانت یا اکسترکت کنید و سپس دستور perl install-tl را بزنید و سپس با خوندن اعلان هایی که در ترمینال داده میشه کل مجموعه ی تکسلایو را روی سیستم خودتون نصب کنید.


من می خوام نوشتن را شروع کنم.  ترجیح ام برای شروع، استفاده از یک ویرایشگر TEX [به جای استفاده از فرمان های موتورهای تک در ترمینال] هست (شما در نهایت ایمان خواهید آورد که TexStudio از همه شون بهتره. پس از همین الان کار با TexStudio را شروع کنید). فرض می کنیم texstudio را نصب کرده اید. یکی از راه های نوشتن فارسی در لاتک استفاده از بسته ی زیپرشین هست. برای این کار بایستی xelatex را به عنوان موتور اجرا کننده انتخاب کنید. به آدرس
options > configure texstudio > build
رفته و default compiler را روی Xelatex قرار بدهید. با این کار علاوه بر حروفچینی انگلیسی، قادر به حروفچینی فارسی هم خواهید بود.

یک فایل با نام hello.tex بسازید و ذخیره ش بکنید. با texstudio اون فایل را باز کنید و این دستورها را درون اش قرار بدهید:

\documentclass{article}
\usepackage{xepersian}
\settextfont{XB Yas}
\begin{document}
	خداحافظ دنیا.
\end{document}

دقت کنید که من مایل بوده ام از فونت XB Yas استفاده کنم. پس بدیهی هست که این فونت باید روی سیستم ام نصب باشه. الان دیگه میتونم F5 را بزنم تا فایل هم build بشه و هم pdf ساخته شده در همون دایرکتوری ای که فایل hello.tex قرار داره ، نشون داده بشه.

آفلاین

#4 2020-07-20 12:52:20

Arcush
Administrator
ثبت شده: 2015-09-15
ارسال ها: 1,558

پاسخ: راهنمای سریع لاتک.

حالا این فایل را اجرا کنید:

\documentclass{article}
\usepackage{xepersian}
\settextfont{XB Yas}
\setdigitfont{XB Yas}
\begin{document}
	خداحافظ دنیا.
\[
	\sin x + 0 = sin x.
\]
\end{document}

بیاید بررسی اش کنیم. در خط ۴ من مایل بوده ام تا فونت مربوط به فرمول های ریاضی را XB Yas قرار بدهم (مواظب بوده ام که فونتی انتخاب کنم که صفرهاش توخالی باشند). اگر این خط را اضافه نکرده باشم، عددهای فرمول های متن به صورت انگلیسی چاپ می شوند (امتحان کنید: با ٪ که SHIFT+5 هست خط ۴ را کامنت کرده و اجرا کنید). خط های ۷ و ۹ یک محیط فرمول نویسی هستند. "بک اسلَش براکتِ باز" و "بک اسلش براکت بسته" باعث می شوند تا فرمول بیفته وسط صفحه و هیچ شماره ای هم نخوره. به صورت پیشفرض، هیچ چیزی اعم از فرمول یا شکل یا جدول نباید شماره داشته باشه مگر این که بخواهیم بهش ارجاع بدهیم. اکنون ببینیم چه فرمولی تایپ شده. دستور "بک اسلش sin" باعث چاپ شدن تابع سینوس می شه. کاراکتر بعدی x هست که برای ما به عنوان متغیر هست. کاراکتر بعدی + هست که همون علامت جمعه و کاراکتر بعدی = که همون علامت تساویه. ولی اون طرف تساوی ما دچار یک اشتباه خنده دار شده ایم. قصد ما نوشتن تابع سینوس بوده که به صورت کاملن سطحی سه تا کاراکتر s , i, n را گذاشتیم کنار هم و سپس یه space ّم تایپ کردیم و سپس x را تایپ کردیم. فایل را اجرا کنید و زوم کنید روی pdf تا تفاوت سینوس های سمت چپ و راست تساوی بر شما آشکار بشه. نتیجه گیری: تابع های ریاضی را باید به صورت تابع تایپ کنیم. اگر به صورت پیش فرض وجود داشه باشند از اون حالت پیشفرض استفاده کنیم و اگر تابع خاصی تعریف کرده ایم، باید در یک environment "سبکی" برای نمایش اون تابع تعریف کنیم که در موردش حرف خواهیم زد. برخی از تابع های پیشفرض را در texstudio از این آدرس ببینید:
Math > Math Functions

در آخر اینکه ما تهِ فرمول نقطه گذاشتیم. اگر فرمول تمام کننده نیست یک ترجیح امروزه پذیرفته شده برای تقریبن همگان این هست که تَهِ فرمول یا ویرگول یا در موارد خاصی با نقطه ویرگول پُر کنیم. به هر حال، قرارداد ما این هست که تهِ فرمول باید با یه چیزی پُر بشه. ))

آفلاین

#5 2020-07-20 13:38:32

Arcush
Administrator
ثبت شده: 2015-09-15
ارسال ها: 1,558

پاسخ: راهنمای سریع لاتک.

حالا این را اجرا کنید:

\documentclass{article}
\usepackage{amsmath}
\usepackage{xepersian}
\settextfont{XB Yas}
\setdigitfont{XB Yas}
\begin{document}
	رضا نشان داد
\begin{equation}\label{reza1}
	\bar{A} - B^{i}_{jk} = 0,
\end{equation}
و امیر هم نشان داد که
\begin{equation}\label{amir1}
	\mathrm{e}^{x} - e = 0.
\end{equation}

از 
\eqref{reza1}
و
\eqref{amir1}
نتیجه میگیریم که 
\(
\frac{a}{b} = 5 %% arcush_result
\)
.
\end{document}

اکنون بررسی کنیم:
اول این که هر beginی یک endی داره. مثلن اگر شما begin document کردید باید هتمن end document هم بکنید. ما در این فایل، از یک محیط دیگر استفاده کردهایم به نام equation. در این محسط میتونیم به فرمول ها شماره بدهیم. فرض کنیم من و رضا و امیر داشتیم با هم یه کار انجام می دادیم. رضا متوجه می شه یک اتحاد خاص برقراره و امیر هم متوجه می شه شه اتحاد دیگه برقراره. من هم متوجه می شم به خاطر این که اون دو تا اتحاد برقرار هستند یه اتحاد دیگری برقراره. نقشه ی من برای نوشتن اینه: اول فرمول رضا را بنویسم و سپس فرمول امیر را. سپس توضیح بدهم که فرمول های امیر و رضا در کنار هم یک نتیجه ی خاص دیگر می دهند. در این جا تصمیم می گیرم که به فرمول ها شماره بدهم. این شماره زدن در لاتک می تونه به صورت خودکار انجام بشه. برای همین بهتره بهش بگیم سیستم label-reference. به این معنی که به اصطلاح ما به صورت دستی شماره گذاری نمی کنیم فرمول ها را.

به \label{reza1} در خط ۸ نگاه کنید. من با این کار به این فرمول یک لیبل زده ام. اما اسمی که به این لیبل میدم، می تونه دلخواه باشه. ولی به خاطر این که مایل ایم منظم باشیم،  ترجیح داده ام که برای این که یادمون بمونه این فرمول کار کی بوده اسم رضا را به عنوان اسم لیبل بنویسم. چون اولین فرمول رضا تو این کار بوده پس سه دونه ۱ هم کنار اسم رضا نوشته ام. قطعن می تونیم سیستم دیگری را هم برای نحوه ی انتخاب اسم لیبل ها درنظر بگیریم.

حالا خود فرمول رضا را نگاه کنیم: \bar{A} باعث شده که روی کاراکتر A یک خط گذاشته بشه.  پس \bar یک دستور هست که وختی چیزی جلوش قرار می گیره یک خط روی اون چیز چاپ میشه. مورد دوم B^{i}_{jk} هست. B یک موجود ریاضیه (که اصلن برامون مهم نیست چیه) که یک اندیس در بالای سمت راست خودش داره و دو تا اندیس هم در پائین سمت راست. اغندیس هایی را که قرار هست بروند در بالای سمت راست، در جلوی ^ و اندیس هایی را هم که قرار هست بروند پائین سمت راست، در جلوی ـ قرار داده ام.


برویم سراغ فرمول امیر. در فرمول امیر، تابع نمایی نپر (که امیر ترجیح داده با e نشون اش بده) به توان x می رسه و بعد یه چیزی که معلوم نیست متغیره یا ثابت ولی اسم اون هم e هست، اَزِش کم می شه. پس من باید یک فرقی بین تابع نمایی که با e نشون داده می شه و متغیر/ثابتی که امیر اون را هم با e نشون داده بگذارم. بنابراین از \mathrm{e} استفاده کرده ام برای این که این e به عنوان تابع با اون e به عنوان متغیر/ثابت متفاوت باشند (بک اسلش sin و sin را به یاد بیاورید و به جای \sin، \mathrm{sin} را قرار بدهید).

از\eqref{reza1} و \eqref{amir1} استفاده کرده ام تا به فرمول های رضا و امیر ارجاع بدهم. دستور \eqref در پکیج amsmath قرار داره. برای همین در خط ۲ نوشته ایم \usepackage{amsmath} و به این ترتیب این بسته را فراخوانی کرده ایم.


خطوط ۲۱ و ۲۳ را ببینید: "بک اسلش پرانتز باز" و "بک اسلش پرانتز بسته". این دستور باعث می شه تا فرمول بین متن قرار بگیره. در این جا ترجیح من این بوده تا فرمول بین متن نوشته بشه و بنابراین، شماره ای هم نخوره. پس از این دستور استفاده کرده ام. اما فرمول چی هست؟ قرار بوده تایپ کنم "خارج قسمتِ a بر b مساوی با ۵". برای نوشتن کسر از دستور \frac استفاده کرده ام که آرگومان اولش صورت کسر و آرگومان دومش هم مخرج کسر خواهد بود. هم چنین %% arcush_result فقط یک کامنت هست که نشون می ده این نتیجه گیری را من انجام داده ام (در حقیقت، این موضوع مربوط به من و امیر و رضا هست و لزومی نداره که در فایل pdf نوشته بشه).

نکته ی مهم: نقطه ی خط ۲۴ را نگاه کنید. این نطقه مربوط به متن هست و نه فرمول. بنابراین برخلافِ اولین مثال که با \[\]، نوشتیم نباید داخل محیط فرمول قرار بگیره.
نکته ی مهم بعدی: به جای \[\] و \(\)  تونیم به ترتیب از $$ $$ و  $ $ استفاده کنیم. ولی چون در آینده از makefile استفاده خواهیم کرد برای build کردن، استفاده از این جایگزین ها را ترجیح نمی دهیم.

پ.ن: فرمول ها فرضی هستند.

آفلاین

#6 2020-07-20 18:45:14

system76
عضو
از : میپرسی از من اهل كجايم؟
ثبت شده: 2018-02-03
ارسال ها: 27
وب سایت

پاسخ: راهنمای سریع لاتک.

همش رو خوندم ? بازم امیدوارم بیشتر در موردش بخونم smile



Arcush نوشته است که:

حالا این را اجرا کنید:
و .... .


ما را از مرگ می ترسانند،
انگار كه ما زنده ايم …
“شاملو”

آفلاین

#7 2020-07-20 18:49:14

Amir Rahmani
عضو
از : اصفهان
ثبت شده: 2020-07-10
ارسال ها: 14

پاسخ: راهنمای سریع لاتک.

تاریخچه مختصر لاتک
اول از همه تشکر کنم از آرکوش جان برای ادامه دادن و مشارکت در این تاپیک.

قبل از لاتک:

چاپ و حروف چینی در عصر های قدیم
آشوریان چند هزار سال پیش از میلاد بر خشتهایی از گل رس مُهر میزدند. در قرن نهم، کتابهای چاپی با تیراژ بالا در شو (ایالت چچوان امروز) عرضه شد و دلالان خصوصی امکان خرید آنها را داشتند. کمی بعد، فن چاپ به ایالت های دیگر نیز گسترش یافت و در اواخر قرن نهم، در تمام چین رواج یافت. این فن به سرعت پیشرفت کرد و در سال ۱۰۰۰ میلادی، کتابهای صحافی شده به سبک امروز، جانشین تومارها شد. در سال ۱۰۴۱ میلادی، فردی به نام بیشنگ (Bi Sheng) در چین، حروف مستقل چاپی را اختراع کرد این حروف بر روی سفال مرطوب حکاکی میشد و بعد از پختن در کوره، دوام زیادی مییافت و سرعت حروفچینی و تکثیر متون را بسیار بالا می برد.

مخترع صنعت چاپ، گوتنبرگ
یوهانس گوتنبرگ (Johannes Gutenberg) یک زرگر آلمانی بود که در سال ۱۳۹۸ میلادی ماینز آلمان چشم به جهان گشود. از گوتنبرگ اغلب به عنوان مخترع صنعت چاپ یاد میشود، اما آنچه که او انجام داد ابداع اولین روش استفاده از حروف چاپی قابل جابجایی و ماشین چاپ بود، که این امکان را فراهم میآورد تا بتوان مطالب نوشتهشدهی گوناگون را با سرعت و دقت به چاپ رساند. البته این صنعت ۴۰۰ سال قبل از وی توسط یک بیشنگ استفاده میشد و حدود ۲۰۰ سال قبل نیز در کره مورد استفاده قرار میگرفت.

گوتنبرگ فردی به نام یوهان فوست (Johann Fust) را راضی کرد تا از اختراع او را حمایت مالی کند. اما در سال ۱۴۵۵، در حالی که 57 سال داشت به دلیل عدم پرداخت پول فوست، با شکایت او در دادگاه مواجه شد. او نمی توانست پول فوست را پس دهد، پس مجبور شد که دستگاه چاپش را که دسترنج سال ها تحقیق بود، را به او بدهد. فوست چاپخانهای تاسیس نمود و با طراحی آرمی مخصوص به چاپ کتاب مقدس پرداخت و سرمایهای عظیم بدست آورد. گوتنبرگ در اواخر عمر، کار ساخت یک دستگاه چاپ جدید را از نو آغاز کرد، و توانست یک چاپخانه برای خود بوجود آورد.

عصر جدید کتاب
دگرگونی در صنعت چاپ و نشر، پس از گوتنبرگ روندی کند داشت و تا سده هفدهم میلادی تغییر عمدهای در آن رخ نداد. در این قرن، یوهان رینمان (Yohan Rynmann) است که در آوگسبورگ آلمان، پس از آشنایی با چاپ، به نشر کتاب روی آورد و حدود 200 کتاب منشتر ساخت. از سده هفدهم به بعد انقلاب صنعتی باعث و بانی پیشرفتهای عظیمی در صنعت چاپ شد. در سده هجدهم، چاپ به رشد تدریجی خود ادامه داد و در این قرن، آمریکا به عنوان کانونی تازه اما پرتوان، وارد صحنه نشر جهان شد و تاثیر بسزایی در پیشرفت و نوآوریهای نشر داشت. استفاده از نیروی بخار در ماشین چاپ و ساخت ماشین حروفچینی، دو نمونه از تحولات بزرگ در صنعت چاپ در این دوران محسوب میشود. در قرن نوزدهم ، تحولات چاپ و نشر کتاب به حدی سرعت و کیفیت چاپ را افزایش داد که این قرن را عصر جدید کتاب نامیدند.

عصر حروف چینی رایانه ایی
دستگاههای چاپ به کمک عکسبرداری، رشد و توسعه فراوانی پیدا نمودند. استفاده از لامپ پرتوی کاتدی (Cathode ray tube) نمونهای از این تحولات است. در دهه ۱۹۷۰، دستگاههایی به مانند IBM 2680 (1967)، ٰVideoComp (1973)، Linotron 202 (1978) و ... بوجود آمد که در آن، دستگاه چاپ به کمک عکسبرداری، میتوانست اطلاعات خود را از یک رایانه دریافت کند. گرچه در دهه ۱۹۸۰ این دستگاهها با دستگاههای تمام رایانهای جایگزین گشت.

در اواخر دهه ۱۹۸۰ میلادی مجله Time با همکاری دو برنامهنویس، نرمافزاری با عنوان QuarkXPress را طراحی کرد که برای حروفچینی در رایانههای رومیزی Macintash استفاده میشد. این رویداد باعث تحول بزرگی در عرصه حروفچینی رایانهای گشت. بدینسان هرکس قادر بود در منزل خود و در پشت رایانه شخصیاش بنشیند و نوشتار خود را براحتی تمام و با کیفیت مناسب تهیه کند.

پیدایش تک یا TeX
در سال ۱۹۶۹ میلادی، جلد اول از کتاب «هنر برنامهنویسی رایانه» توسط دونالد کنوث (Donald E. Knuth) منتشر گشت. این کتاب به وسیله حروف فلزی و با شیوهی قدیمی، توسط یک ماشین چاپ قرن ۱۹ میلادی چاپ و منتشر شد. اما در ۱۹۷۶، هنگامی که جلد دوم میخواست به چاپ برسد، تمام کتاب باید دوباره حروفچینی میشد، چرا که فناوری مونوتایپ به صورت گسترده با روشهای عکسبرداری جایگزین شده بود، و قلمهای قبلی دیگر در دسترس نبودند. به هر صورت، هنگامی که کنوث پیشنمایش کتاب جدیدش را در ۳۰ مارس ۱۹۷۷ دریافت کرد، متوجه شد که بسیار بدشکل است. در همین زمان بود که او کتاب Artificial Intelligence نوشته Patrick Winston که با حروفچینی دیجیتالی تهیه شده بود، را مشاهده نمود، و به این نوع از حروفچینی علاقهمند شد. پیشنمایشهای مأیوسکننده در نهایت موجب شدند که او تصمیم بگیرد با طراحی سیستم حروفچینی خود برمبنای حروفچینی دیجیتالی، این مشکل را یک بار و برای همیشه حل کند. کنوث دریافت که معنای حروفچینی دیجیتالی این است که بتوان یک چیدمان درست از صفرها و یکها (نقاط سفید و سیاه) را در کنار یکدیگر قرار داد. یافتن قواعد درست و زیبا برای نگارش متون ریاضی و تبدیل آن به چیدمان صحیحی از صفرها ویکها، کاری بود که کنوث فکر میکرد آنرا میتواند در ظرف شش ماه تا تعطيلات دانشگاهي سال ۱۹۷۸ به پایان برساند، اما آنچه که اتفاق افتاد این بود که در نهایت در ۱۹۸۹، یعنی ده سال بعد، این کار به اتمام رسید.

گای استیل (Guy Steele) در تابستان ۱۹۷۸، هنگامی که کنوث مشغول ایجاد اولین نسخهٔ TeX بود، در استنفورد بود. هنگامی که او در پاییز به MIT بازگشت، سیستم ورودی/خروجی TeX را بازنویسی کرد تا تحت سیستمعامل ITS[۱] اجرا شود. اولین نسخهٔ TeX به زبان «SAIL» نوشته شده بود تا بر روی یک PDP 10 تحت سیستمعامل WAITS استنفورد اجرا شود. برای نسخههای بعدی TeX، کنوث شیوهٔ «برنامهنویسی لفظی» را ابداع کرد که شیوهای برای تولید کد منبع سازگار و مستندات با کیفیت بالا و پیوندیافته(که البته با TeX حروفچینی میشود) از پروندهٔ اصلی میباشد. زبان استفاده شده وب نامیده میشود و برنامههایی به زبان پاسکال تولید میکند.

تلفظ TeX
نام TeX باید به صورت تِکْ(آی. پی. ای. : /tɛx/) تلفظ شود که در آن ک مشابه حرف j اسپانیایی اروپایی، یا صدای پایانی loch در اسکاتلندی یا اسم هنرمند آلمانی Bach تلفظ شود. حرف X برای نشان دادن حرف یونانی χ(خی) به کار رفتهاست. TeX خلاصهٔ تخنه (τέχνη) است که کلمهای یونانی به معنی «هنر» و «صنعت» است و منبع کلمهٔ technical(فنی) در انگلیسی است. انگلیسی زبانها عموماً آن را به صورت tek تلفظ میکنند که مشابه بخش اول کلمهٔ technical میباشد. برای حروفچینی درست نرمافزار، E باید پایینتر از خط باشد و فاصلهٔ بین حروف کاهش یابد(این، همانگونه که در کتاب «تک بوک» دانلد نوث به آن اشاره شدهاست، برای ایجاد تمایز بین تک و نام سامانههای دیگر مانند TEX شرکت «هانی ول»(که سرنام Text Executive producer است) انجام شدهاست).

ُشماره نسخه های TeX و عدد پی به علت پایداری زیاد
از نسخهٔ ۳، TeX سیستم نسخهگذاری جدیدی را استفاده کردهاست، به این صورت که بروز رسانی نرمافزار با افزودن رقم جدید در انتهای بخش اعشاری نسخهٔ قبلی مشخص میشود، و به این ترتیب این عدد به ثابت پی نزدیک میگردد. این نشان دهندهٔ این واقعیت است که TeX اکنون بسیار پایدار است، و تنها بروزرسانیهای جزیی بر روی آن انجام میگردد. نسخهی جاری TeX 3.14159265 است، و آخرین بار در سال ۲۰۱۴ بروزرسانی شدهاست. طراحی نرمافزار از نسخهٔ ۳٫۰ تغییری نکردهاست و هیچ ویژگی جدید یا تغییر اساسی بعد از آن افزوده نشده است، و بدین ترتیب نسخههای جدید تنها شامل رفع اشکال خواهند بود.

شروع LaTeX
TeX با همه مزايايي كه دارد، براي استفاده گسترده و كاربرپسند داراي يك مشكل اساسي است: TeX يك زبان برنامهنويسي واقعي، گسترده و مشكل است كه يادگيري و بهكارگرفتن آن براي كاربران عادي پرزحمت و غيراقتصادي است. در سالهای آغازین دههی ۱۹۸۰ میلادی، لزلی لمپورت (Leslie Lamport) شروع به کار بروی LaTeX کرد. LaTeX معمولاً به صورت لِیتِخ یا لاتِخ تلفظ میشود که در آن X صدای خ فارسی را میدهد زیرا نام TeX از واژه یونانی τεχνη (تِخنی به معنی هنر و مهارت) گرفته شده است. گرچه کنوت شخصاً تلفظ "tech" (تِخ) را استفاده میکند، ولی لمپورت گفته است که " او هیچ تلفظ خاصی را برای LaTeX ترجیح نمیدهد یا بد نمیداند.
LaTeX یک سامانهی آمادهسازی و حروفچینی نوشتار بر پایه TeX است، که از TeX به عنوان موتور حروفچینی استفاده میکند. در واقع هر دستور LaTeX، از مجموعهای پیچیده از دستورات TeX تشکیل شده است، که گردابهای بزرگ از صورتهای توسعهیافتهی TeX را تشکیل میدهد، با همه چيزهايي كه لازم بود به آن اضافه شود تا به محصولي قابل استفاده براي عموم تبديل گردد. تعداد زيادی امكانات امنيتی و پيغامهای خطا، همچنين قالبهای متن مختلف (كتاب، نامه، گزارش و ...)، امكانات فراوان براي ايجاد فصلها، بخشها، فهرست مطالب، فهرست راهنما (Index)، فهرست منابع (Bibliographic Index) و ايجاد پيوندهای مورد نياز براي ساختن اين فهرستها در متن سند، از جمله امكاناتی هستند كه در كنار سيستم حروفچيني و صفحهبندي TeX، LaTeX را به وجود ميآورند. یکی از کارهای بزرگ لمپورت اضافه کردن قابلیت فراخوانی بسته بود. بدینصورت هزاران بسته LaTeX در سرتاسر جهان بوجود آمد و هر کس میتوانست بهسادگی آنها را با دستور usepackage، در فایل خود فراخوانی کند. امروزه CTAN[۳] مخزن رسمی بستههای LaTeX محسوب میشود.
TeX و LaTeX هر دو با مجوزهاي نرمافزار آزاد منتشر شدهاند و كد منبع آنها در دسترس همگان قرار دارد، اما مجوزي كه LaTeX تحت آن انتشار مييابد LPPL[۴] است؛ نه GPL معروف. تفاوت اصلي LPPL باGPL در آن است كه بر اساس LPPL فايلهايي كه در هر نسخه يا توزيع جديد نسبت به نگارش قبلي تغيير محتوا پيدا ميكنند بايد تغيير نام هم داده شوند تا در ارجاعات ميان فايلها ناسازگاري ايجاد نشود. نسخه کنونی LaTeX به LaTeX2e مشهور است. LaTeX3 نیز به عنوان نسخه جدید LaTeX، در حال توسعه است.

PdfTeX
یکی از مهمترین توسعههای TeX، در دهه ۱۹۹۰ توسط Hàn Thế Thành به عنوان بحشی از رساله دکترایش صورت پذیرفت، و به نام PdfTeX منتشر شد. TeX در ابتدا تنها خروجی DVI[۶] به ما میداد، اما بعدها توانست خروجی postscript بدهد. در سال ۱۹۹۳، فرمت PDF پابه عرصه ظهور گذاشت. فرمت PDF قابلیتهای به مراتب بیشتری نسبت به postscript داشت، که مهمترین آنها پشتیبانی از ابرپیوند (hyperlink) بود. ایده اصلی PdfTeX این بود که TeX را به نحوی توسعه دهد که بتواند خروجی PDF نیز بدهد. البته تفاوتها به همینجا خاتمه نمییابد. در TeX شما تنها میتوانستید که تصاویر با فرمت eps را وارد کنید، اما در PdfTeX میتوانید از تصاویر با فرمت PDF، jpg، png نیز استفاده کنید.
LaTeX آمد تا کار کردن ما با TeX را سهولت بخشد. اکنون باید بگوییم که PdfLaTeX نیز آمد تا کار ما با PdfTex را آسانتر نماید. در واقع PdfLaTeX همان نقش LaTeX را برای Tex بازی میکند.

XeTeX
داستان به همینجا ختم نمیشود. در سال ۲۰۰۴ جوناتان کو (Jonathan Kew) زیتک (XeTeX) را به عنوان بهبودی بر TeX عرضه نمود. XeTeX استاندارد یونیکد را به کار میبرد و از فناوریهای امروزی فونت مانند OpenType و ATT[۷] پشتیبانی میکند. این امر موجب شد تا نوشتن TeX برای زبانهای غیرانگلیسی (به مانند فارسی) بیشاز پیش آسان گردد. زیتک در آغاز تنها در سیستمعامل Mac OS X کار میکرد، ولی امروزه در بیشتر سیستمعاملها موجود است. زیتک پروندهی ورودیاش را در کدگذاری UTF8[۸] میانگارد، در ضمن میتواند همهٔ فونتهای نصبشده در سیستمعامل را به کار ببرد. زیتک در توزیعهای معروف TeX مانند TexLive و MikTex، موجود است.


منابع:
۱. http://www.parsilatex.com/wiki/%D8%AA%D … 9%88_Latex
۲. https://fa.wikipedia.org/wiki/%D9%84%D8%A7%D8%AA%DA%A9


بنگر ز جهان چه طَرْف بربستم؟ هیچ،
وَز حاصلِ عمر چیست در دستم؟ هیچ،
شمعِ طَرَبم، ولی چو بنشستم، هیچ،
من جامِ جَمَم، ولی چو بشکستم، هیچ

آفلاین

#8 2020-07-20 18:52:19

هومان
عضو
ثبت شده: 2019-08-23
ارسال ها: 24

پاسخ: راهنمای سریع لاتک.

عالی عالی ممنون

آفلاین

#9 2020-07-20 21:55:40

Arcush
Administrator
ثبت شده: 2015-09-15
ارسال ها: 1,558

پاسخ: راهنمای سریع لاتک.

Amir Rahmani@، گزیده های خوبی انتخاب کرده بودید. فقط برای این که ممکنه جالب باشه: در یکی از همون لینک هایی که دادید، درباره ی فارسی تک هم توضیح داده شده بود. فارسی تک قبل از زیپرشین توسعه داده شده بود و به معنی واقعی عالی بود. یک ویرایشگر فوق العاده ای هم هست به نام WinEdit که متأسفانه ورژن لینوکسی نداره. فارسی تک به طور مستقیم در لینوکس نصب نمی شه. در حقیقت اگر نصب می شد، من برای نوشتنِ فارسی هرگز از زیپرشین استفاده نمی کردم. به هر حال یاد دو تا حسرت افتادم: WinEdit و ++DevC.

پ.ن: دِوْ-سی پلاس پلاس ربطی به این تاپیک نداره و توسعه ش هم متوقف شده.

آفلاین

#10 2020-07-23 16:50:12

Amir Rahmani
عضو
از : اصفهان
ثبت شده: 2020-07-10
ارسال ها: 14

پاسخ: راهنمای سریع لاتک.

section ها
هنگام نوشتن یک مقاله/کتاب/... لازم است که قسمت های مختلفی تقسیم و شماره گذاری کنیم.
لاتک این امر را به راختی با چند دستور برای ما انجام میدهد.
کد زیر را در نظر بگیرید:

\documentclass{article}
\usepackage{xepersian}
\begin{document}
\pagenumbering{gobble} % برای شماره گذاری نکردن صفحات

\section{my_section}

سلام بر دنیا!

\subsection{my_subsection}

ساختار یک پرونده بسیار آسان است.

\end{document}

خوب اگر کد بالا را کامپایل کنید به سادگی عملکرد section ها و subsection هارو میبینید.
نکته: % برای کامنت گذاری استفاده میشود.
نکته: دستور  pagenumbering{gobble} برای شماره گذاری نکردن صفحات استفاده میشود، همچنین دو نوع greek و arabic هم برای شماره گذاری به دو روش مختلف هستند.

حال، یک کد کامل تر و بیشتر رو مشاهده کنیم:

\documentclass{article}
\usepackage{xepersian}
\begin{document}

\section{MySection}

سلامی دوباره بر دنیا! 

\subsection{MySubsection}

ساختار بندی کردن آسان است.

\subsubsection{MySubsubsection}

متن اضافی ... .

\paragraph{MyParagraph}

کمی متن اضافه ی دیگر.

\subparagraph{MySubparagraph}

متن اضافه ی آخر.

\section{Another section}

\end{document}

در این کد، با پاراگراف و زیر-پاراگراف هم آشنا شدید. اما پاراگراف ها مانند section شماره گذاری نمی شوند و از تو رفتگی استفاده میکنند.
موفق باشید، امیر رحمانی.


بنگر ز جهان چه طَرْف بربستم؟ هیچ،
وَز حاصلِ عمر چیست در دستم؟ هیچ،
شمعِ طَرَبم، ولی چو بنشستم، هیچ،
من جامِ جَمَم، ولی چو بشکستم، هیچ

آفلاین

#11 2020-07-23 16:57:15

Arcush
Administrator
ثبت شده: 2015-09-15
ارسال ها: 1,558

پاسخ: راهنمای سریع لاتک.

درود امیرجان. آیا امکان داره که درباره ی هِدِر ها و فوتِرها هم مطالبی بگذارید؟

آفلاین

#12 2020-07-23 17:54:08

Amir Rahmani
عضو
از : اصفهان
ثبت شده: 2020-07-10
ارسال ها: 14

پاسخ: راهنمای سریع لاتک.

Arcush نوشته است که:

درود امیرجان. آیا امکان داره که درباره ی هِدِر ها و فوتِرها هم مطالبی بگذارید؟

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


بنگر ز جهان چه طَرْف بربستم؟ هیچ،
وَز حاصلِ عمر چیست در دستم؟ هیچ،
شمعِ طَرَبم، ولی چو بنشستم، هیچ،
من جامِ جَمَم، ولی چو بشکستم، هیچ

آفلاین

#13 2020-07-25 21:56:12

Amir Rahmani
عضو
از : اصفهان
ثبت شده: 2020-07-10
ارسال ها: 14

پاسخ: راهنمای سریع لاتک.

Headers & Footers & pagestyle
لاتک به طور پیشفرض دارای style هایی برای حروف چینی فوتر ها و هدر ها دارد.
برای مشخص کردن آنها، از دستور \pagestyle استفاده می کنیم.
سینتکسش به این صورت است:

\pagestyle{STYLE}

و به جای STYLE، استایل مورد نظر خودتون رو بزارید.
سه استایل از پیش تعیین شده:

plain: استایل پیشفرض است. هدر خالی و فوتر شامل شماره صفحه ها است.
empty: خالی، هم هدر و هم فوتر خالی هستند.
myheadings: فوتر خالی است. هدر شامل شماره صحفه در سمت راست-در صفحات زوج- یا در سمت چپ -در صفحات فرد- در کنار اطلاعاتی که شما در پرونده گذاشتید. در این استایل یک استثنا هست و آن هم این است که، در صفحه اول فوتر شامل شماره صفحه است و هدر خالی است.

گذاشتن pagestyle فقط برای یک صفحه
شاید تا الان در کتاب های انگلیسی متوجه جمله This page is intentionally blank شده باشید. اگر دقت کنید این صفحات دارای استایل خاصی نیستند. برای اینکار در لاتک از دستور \thispagestyle استفاده میکنیم. مثال زیر را مشاهده کنید. البته در نظر داشته باشید می توانیم از هر استایلی خواستیم در این دستور استفاده کنیم.

...

\thispagestyle{empty}
این صفحه عامدانه خالی گذاشته شده است. 

...

کنترل بهتر و شخصی سازی کردن هدر ها و فوتر ها
برای این کار، معمولا از پکیج fancyhdr که توسط Piet van Oostrum نوشته شده است استفاده میکنیم.

مثال زیر را در نظر داشته باشید:

\documentclass{article}
\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhf{}
\rhead{Arch Linux}
\lhead{LaTeX Topic}
\rfoot{Page \thepage}

\begin{document}

\section{First Section}

Hello,  here  is  some  text  without  a  meaning.   This  
text  should  show  what  a printed text will look like at 
this place.  If you read this text, you will get no information.  
Really?  Is there no information?  Is there a difference between 
this ...

\end{document}

ما پکیج گفته شده رو وارد پرونده خود کردیم و استایل صفحات خود را روی fancy گذاشتیم. که از این پکیج است.
دستور fancyhf هدر و فوتر را خالی و آماده شخصی سازی می کند. اگر این دستور رو نزنید، استایل پیش فرض plain روی صفحات اعمال می شود.

توضیحات دستورات استفاده شده ، دستوراتی دیگر:

\rhead{Arh Linux}
متن داخل {} را در سمت راست هدر چاپ می کند.

\lhead{LateX Topic}
متن داخل {} را در سمت چپ هدر چاپ می کند.

\chead{}
مشابه دو دستور قبل، اما متن را در وسط هدر چاپ می کند.

\rfoot{}
متن داخل {} را در سمت راست فوتر چاپ می کند.

\lfoot{}
متن داخل {} را در سمت چپ فوتر چاپ می کند.

\cfoot{}
مشابه دو دستور قبل، اما متن را در وسط فوتر چاپ می کند.

خطوط نمایشی در فوتر و هدر

شخصی سازی در پرونده های دو وجهی
اگر پرونده شما دو وجهی بود، مثلا یک کتاب. روش دیشنهاد یمن استفاده از دو دستور fancyhead و fancyfoot است.

\documentclass[a4paper,12pt,twoside]{book}

\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhf{}
\fancyhead[LE,RO]{LaTeX Topic}
\fancyhead[RE,LO]{Arch Linux}
\fancyfoot[CE,CO]{\leftmark}
\fancyfoot[LE,RO]{\thepage}


\begin{document}

\chapter{Using different page styles}

This is A TEXT!!!!

پارامتر هایی که میتوان به دو دستور fancyhead و fancyfoot داد:
ٍE برای صفحات فرد
O برای صفحات زوج
L برای سمت چپ
C برای مرکز\وسط
R برای سمت راست

برای مثال:

\fancyhead[LE,RO]{I use Arch btw}

عبارت I use Arch btw را در سمت چپ هدر برای صفحات فرد و سمت راست برای صفحات زوج چاپ می کند.

دستور chapter رو در نوشته بعدی توضیح خواهم داد.
thepage شماره صفحه را اضافه می کند.
leftmark نام و شماره ساختار بالایی مانند chapter و  reports و books و section ها و article ها را در حروف بزرگ اضافه میکند.

خطوط   نمایشی در هدر و فوتر
کد زیر را در نظر بگیرید:

 
\documentclass[a4paper,12pt,twoside]{book}

\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhf{}
\fancyhead[LE,RO]{Arch Linux}
\fancyhead[RE,LO]{Arch Topics}
\fancyfoot[CE,CO]{\leftmark}
\fancyfoot[LE,RO]{\thepage}

\renewcommand{\headrulewidth}{2pt}
\renewcommand{\footrulewidth}{1pt}

\begin{document}

\chapter{Using different page styles}

This is a text!

دو خط اضافه در این مثال هستند.

\renewcommand{\headrulewidth}{2pt}
قطر خط هدر را 2pt می گذارد.

\renewcommand{\footrulewidth}{1pt}
قطر خط فوتر  1pt می گذارد.


بنگر ز جهان چه طَرْف بربستم؟ هیچ،
وَز حاصلِ عمر چیست در دستم؟ هیچ،
شمعِ طَرَبم، ولی چو بنشستم، هیچ،
من جامِ جَمَم، ولی چو بشکستم، هیچ

آفلاین

#14 2020-07-29 22:38:59

joker
Moderator
ثبت شده: 2018-01-24
ارسال ها: 64

پاسخ: راهنمای سریع لاتک.

درود امیر جان
واقعن لذت بردم، عالی بودی.

آفلاین

#15 2020-07-31 21:32:53

Amir Rahmani
عضو
از : اصفهان
ثبت شده: 2020-07-10
ارسال ها: 14

پاسخ: راهنمای سریع لاتک.

joker نوشته است که:

درود امیر جان
واقعن لذت بردم، عالی بودی.

درود بر شما آرمان عزیز.
سپاس از دیدگاه نیکوی شما. امیدوارم بیشتر ادامه پیدا بکند.


بنگر ز جهان چه طَرْف بربستم؟ هیچ،
وَز حاصلِ عمر چیست در دستم؟ هیچ،
شمعِ طَرَبم، ولی چو بنشستم، هیچ،
من جامِ جَمَم، ولی چو بشکستم، هیچ

آفلاین

#16 2020-08-03 15:12:30

Amir Rahmani
عضو
از : اصفهان
ثبت شده: 2020-07-10
ارسال ها: 14

پاسخ: راهنمای سریع لاتک.

Amir Rahmani نوشته است که:

section ها
هنگام نوشتن یک مقاله/کتاب/... لازم است که قسمت های مختلفی تقسیم و شماره گذاری کنیم.
لاتک این امر را به راختی با چند دستور برای ما انجام میدهد.

در ادامه این مطلب، صحبت هایی اضافه هست که میخواهم عنوان کنم.
به طور کلی، ما در لاتک ۷ طبقه برای پرونده خود -بسته به کلاس پرونده- برای طبقه بندی  داریم.

-1    \part{part}
0     \chapter{chapter}
1     \section{section}
2     \subsection{subsection}
3     \subsubsection{subsubsection} 
4     \paragraph{paragraph} 
5     \subparagraph{subparagraph} 

نکته: \part و \chapter را فقط در کلاس های report و book میتوان استفاده کرد.
در نوشته ایی که روی آن نقل قول می کنم از شماره صفر به بعد را توضیح دادم.

حال کاربرد part و chapter را در یک پرونده از کلاس report ببینید:

\documentclass{report}

\begin{document}

\tableofcontents{}

\chapter{Arch Linux}

\section{What is it?!}

A simple, lightweight distribution

You've reached the website for Arch Linux, a lightweight and flexible Linux® distribution that tries to Keep It Simple.

\subsection{What is Arch's package manager?}

PACMAN package manager!

\chapter{Arch Applications}

\section{Console Browsers}

    browsh — A fully-modern text-based browser. Runs as a frontend to headless Firefox
    ELinks — Advanced and well-established feature-rich text mode web browser with mouse wheel scroll support (links fork, barely supported since 2009).
    Links — Graphics and text mode web browser. Includes a console version similar to Lynx.
    Lynx — Text browser for the World Wide Web.
    w3m — Pager/text-based web browser. It has vim-like keybindings, and is able to display images.
\end{document}

و کد رو کامپایل کنین و می بینید که chapter ها چگونه کار میکنن.

حالا بریم سراغ part و کلاس book.
مثال کامل زیر که شامل part و chapter و .. هست رو ببینید:

\documentclass{book}

\title{42}
\author{Amir Rahmani}
\date{\today}

\begin{document}

\maketitle

\tableofcontents

\part{First Part of this document}

\chapter{First}

\section{Introduction}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do 
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
enim ad minim veniam, quis nostrud exercitation ullamco...

\subsection{Sample subsection}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do 
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
enim ad minim veniam, quis nostrud exercitation ullamco laboris..

\subsubsection{Sample subsubsection}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do 
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
enim ad minim veniam, quis nostrud exercita...

نکته: دستور \today تاریخ امروز را وارد می کند.
نکته: متن ها از یک سایت خارجی گرفته شدند و هر متنی را میتوانید جایگزین کنید.

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


بنگر ز جهان چه طَرْف بربستم؟ هیچ،
وَز حاصلِ عمر چیست در دستم؟ هیچ،
شمعِ طَرَبم، ولی چو بنشستم، هیچ،
من جامِ جَمَم، ولی چو بشکستم، هیچ

آفلاین

پانوشت انجمن

پشتیبانی توسط تیم آرچ لینوکس ایران و نیرو گرفته با FluxBB