diff options
author | Karl Berry <karl@freefriends.org> | 2009-05-19 18:44:51 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-05-19 18:44:51 +0000 |
commit | 5e95554e8a27149efa07e88004c49b3facd863d3 (patch) | |
tree | 61ad57ca2db6a8c665d6058c6eb2c58681ca937c /Master/texmf-dist/doc/latex/lshort-vietnamese | |
parent | 19094150bf87145633b1203ab91b0244e589a2aa (diff) |
move lshort-vietnamese out of texmf-doc
git-svn-id: svn://tug.org/texlive/trunk@13258 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/lshort-vietnamese')
23 files changed, 6257 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/README b/Master/texmf-dist/doc/latex/lshort-vietnamese/README new file mode 100644 index 00000000000..6b7065cc903 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/README @@ -0,0 +1,32 @@ +The not so Short Introduction to LaTeX, Vietnamese edition. + +Original Author: T.Oetiker, H.Partl, E.Schlegl, I.Hyna + +Translator: Nguyen Tan Khoa + +License of the translation: LPPL, version 1.3 or newer, +according to http://www.latex-project.org/lppl.txt + +Files: + src/abbr.tex + src/biblio.tex + src/contrib.tex + src/custom.tex + src/fancyhea.sty + src/graphic.tex + src/lshort-print-vi.tex + src/lshort.sty + src/lshort-vi.tex + src/lssym.tex + src/Makefile + src/math.tex + src/mylayout.sty + src/overview.tex + src/spec.tex + src/things.tex + src/tiengviet.tex + src/title.tex + src/typeset.tex + src/README + lshort-print-vi.pdf + lshort-vi.pdf diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/lshort-vi.pdf b/Master/texmf-dist/doc/latex/lshort-vietnamese/lshort-vi.pdf Binary files differnew file mode 100644 index 00000000000..7c042b8d2d2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/lshort-vi.pdf diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/LocalVariables b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/LocalVariables new file mode 100644 index 00000000000..1971bea3986 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/LocalVariables @@ -0,0 +1,4 @@ + +% Local Variables: +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/Makefile b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/Makefile new file mode 100644 index 00000000000..70910a04193 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/Makefile @@ -0,0 +1,43 @@ +# Copyright Reinhard Kotucha and Nguyen Tan Khoa +# License: LPPL version 1.3 or newer + + +default: print screen + +screen: + pdflatex lshort-vi.tex + pdflatex lshort-vi.tex + pdflatex lshort-vi.tex + makeindex lshort-vi.idx + pdflatex lshort-vi.tex + thumbpdf lshort-vi.pdf + pdflatex lshort-vi.tex + +print: + pdflatex lshort-print-vi.tex + pdflatex lshort-print-vi.tex + pdflatex lshort-print-vi.tex + makeindex lshort-print-vi.idx + pdflatex lshort-print-vi.tex + +clean: + rm -vf *.{aux,lo?,out,idx,toc,exa,ilg,ind,tpt} + +distclean: clean + rm *.pdf + +ctan: screen print clean + cp -pf README.txt .. + mv *.pdf .. + (cd ../.. && tar -czvf vietnamese.tar.gz vietnamese) + + +#### + +USER=reinhard-k@shells.sourceforge.net +DIR=home/groups/v/vn/vntex/htdocs/doc/lshort-vi + +LSHORTDIR="$(USER):/$(DIR)" + +vntex: + cd .. && scp -pr * $(LSHORTDIR)
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/README.txt b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/README.txt new file mode 100644 index 00000000000..6b7065cc903 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/README.txt @@ -0,0 +1,32 @@ +The not so Short Introduction to LaTeX, Vietnamese edition. + +Original Author: T.Oetiker, H.Partl, E.Schlegl, I.Hyna + +Translator: Nguyen Tan Khoa + +License of the translation: LPPL, version 1.3 or newer, +according to http://www.latex-project.org/lppl.txt + +Files: + src/abbr.tex + src/biblio.tex + src/contrib.tex + src/custom.tex + src/fancyhea.sty + src/graphic.tex + src/lshort-print-vi.tex + src/lshort.sty + src/lshort-vi.tex + src/lssym.tex + src/Makefile + src/math.tex + src/mylayout.sty + src/overview.tex + src/spec.tex + src/things.tex + src/tiengviet.tex + src/title.tex + src/typeset.tex + src/README + lshort-print-vi.pdf + lshort-vi.pdf diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/abbr.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/abbr.tex new file mode 100644 index 00000000000..621b0607984 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/abbr.tex @@ -0,0 +1,125 @@ +\ifx\abbrloaded\relax + \let\next=\endinput +\else + \let\next=\relax +\fi + +\next + +\let\abbrloaded=y + +\def\<#1>{% + \expandafter\ifx\csname<#1>\endcsname\relax + \errmessage{abbreviation <#1> undefined!} + \else + \csname<#1>\endcsname + \fi +} +\def\abbr#1#2{% + \expandafter\def\csname<#1>\endcsname{#2}% +} + +\abbr{...}{\dots} +\abbr{3B2}{3B2} +\abbr{ADOBE}{Adobe} +\abbr{AFM}{AFM} +\abbr{AMIGA}{Amiga} +\abbr{ASCII}{ASCII} +\abbr{BS}{\char92} +\abbr{CMACTEX}{CMac\TeX} +\abbr{CMR}{CMR} +\abbr{CMSS}{CMSS} +\abbr{CM}{Computer Modern} +\abbr{CPP}{C++} +\abbr{CS}{CS} +\abbr{C}{C} +\abbr{DANTE}{DANTE} +\abbr{DOS}{DOS} +\abbr{DTP}{DTP} +\abbr{DVIPDFM}{\textsf{dvipdfm}} +\abbr{DVIPS}{\textsf{dvips}} +\abbr{DVI}{DVI} +\abbr{EK}{\textit{{\Large$\varepsilon$\kern-.1em}k}} +\abbr{EMACS}{Emacs} +\abbr{EOF}{EOF} +\abbr{ET5}{ET5} +\abbr{ETEX}{$\varepsilon$-\TeX} +\abbr{FPTEX}{fp\TeX} +\abbr{GS}{\textsf{ghostscript}} +\abbr{GUST}{GUST} +\abbr{GUT}{GUTenberg} +\abbr{HJ}{H\kern.1em\&\kern.1emJ} +\abbr{HREF}{hyperref} +\abbr{HTML}{HTML} +\abbr{HZ}{\textit{hz}} +\abbr{ID}{InDesign} +\abbr{JAVA}{Java} +\abbr{JP}{\textit{jp}} +\abbr{KF}{\textit{kf\kern-.05em}} +\abbr{KR}{\textit{K$\varrho$}} +\abbr{LATEX}{\LaTeX} +\abbr{LF}{\textrm{\it letter\!\_\kern.1emfit}} +\abbr{LIBPNG}{LIBPNG} +\abbr{LIBTIFF}{LIBTIFF} +\abbr{LINUX}{Linux} +\abbr{LISP}{LISP} +\abbr{MAC}{Macintosh} +\abbr{MF}{\MF} +\abbr{MIKTEX}{Mik\TeX} +\abbr{MIRKA}{Miroslava Mis\'akov\'a} +\abbr{MMINSTANCE}{MMInstance} +\abbr{MMTOOLS}{MMTOOLS} +\abbr{MM}{Multiple Master} +\abbr{MVISCII}{Mac VISCII} +\abbr{NL}{\hfil\break} +\abbr{NTG}{NTG} +\abbr{NTS}{NTS} +\abbr{OMEGA}{$\Omega$} +\abbr{PASCAL}{Pascal} +\abbr{PDFETEX}{pdf\<ETEX>} +\abbr{PDFTEX}{pdf\TeX} +\abbr{PDF}{PDF} +\abbr{PERL}{Perl} +\abbr{PFB}{PFB} +\abbr{PLAIN}{plain \TeX} +\abbr{PS}{PS} +\abbr{RA}{$\longrightarrow$} +\abbr{SGML}{SGML} +\abbr{STL}{STL} +\abbr{T1}{Type\nobreak\,1} +\abbr{T5}{T5} +\abbr{TCVN}{TCVN1} +\abbr{TCX}{TCX} +\abbr{TETEX}{\textsf{te\TeX}} +\abbr{TEXINFO}{texinfo} +\abbr{TEXNICCENTER}{TeXnicCenter} +\abbr{TEX}{\TeX} +\abbr{TFM}{TFM} +\abbr{TFTOPL}{TFtoPL} +\abbr{THANH}{H\`an Th\^e\llap{\raise 0.5ex\hbox{\'{}}} Th\`anh} +\abbr{TRUETYPE}{TrueType} +\abbr{TUG}{TUG} +\abbr{UNIX}{UNIX} +\abbr{URW}{URW} +\abbr{UTF8}{UTF8} +\abbr{VB}{Visual Basic} +\abbr{VC6}{Visual~C++~6.0} +\abbr{VIM}{Vim} +\abbr{VISCII}{VISCII} +\abbr{VNCMR}{\textsf{vncmr}} +\abbr{VNI}{VNI} +\abbr{VNR}{VNR} +\abbr{VNTEX}{\textsf{vntex}} +\abbr{VPS}{VPS} +\abbr{WIN32}{Win32} +\abbr{WINEDT}{WinEdt} +\abbr{WWW}{WWW} +\abbr{XML}{XML} +\abbr{XPDF}{XPDF} +\abbr{ZLIB}{ZLIB} +\abbr{percent}{\,\%} +\abbr{M2}{\,m$^2$} +\abbr{SP}{\hskip1cm} +\abbr{.}{.\,} + +\endinput diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/biblio.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/biblio.tex new file mode 100644 index 00000000000..4fd7793e1de --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/biblio.tex @@ -0,0 +1,75 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: The Bibliography +% File: biblio.tex (lshort2e.tex) +% $Id: biblio.tex,v 1.1.1.1 2002/02/26 10:04:20 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{thebibliography}{99} +\addcontentsline{toc}{chapter}{\bibname} +\bibitem{manual} Leslie Lamport. \newblock \emph{{\LaTeX:} A Document + Preparation System}. \newblock Addison-Wesley, Reading, + Massachusetts, second edition, 1994, ISBN~0-201-52983-1. + +\bibitem{texbook} Donald~E. Knuth. \newblock \textit{The \TeX{}book,} + Volume~A of \textit{Computers and Typesetting}, Addison-Wesley, + Reading, Massachusetts, second edition, 1984, ISBN~0-201-13448-9. + +\bibitem{companion} Michel Goossens, Frank Mittelbach and Alexander + Samarin. \newblock \emph{The {\LaTeX} Companion}. \newblock + Addison-Wesley, Reading, Massachusetts, 1994, ISBN~0-201-54199-8. + +\bibitem{local} Each \LaTeX{} installation should provide a so-called + \emph{\LaTeX{} Local Guide}, which explains the things that are + special to the local system. It should be contained in a file called + \texttt{local.tex}. Unfortunately, some lazy sysops do not provide such a + document. In this case, go and ask your local \LaTeX{} guru for help. + +\bibitem{usrguide} \LaTeX3 Project Team. \newblock \emph{\LaTeXe~for + authors}. \newblock Comes with the \LaTeXe{} distribution as + \texttt{usrguide.tex}. + +\bibitem{clsguide} \LaTeX3 Project Team. \newblock \emph{\LaTeXe~for + Class and Package writers}. \newblock Comes with the \LaTeXe{} + distribution as \texttt{clsguide.tex}. + +\bibitem{fntguide} \LaTeX3 Project Team. \newblock \emph{\LaTeXe~Font + selection}. \newblock Comes with the \LaTeXe{} distribution as + \texttt{fntguide.tex}. + +\bibitem{graphics} D.~P.~Carlisle. \newblock \emph{Packages in the + `graphics' bundle}. \newblock Comes with the `graphics' bundle as + \texttt{grfguide.tex}, available from the same source your \LaTeX{} + distribution came from. + +\bibitem{verbatim} Rainer~Sch\"opf, Bernd~Raichle, Chris~Rowley. +\newblock \emph{A New Implementation of \LaTeX's verbatim + Environments}. + \newblock Comes with the `tools' bundle as + \texttt{verbatim.dtx}, available from the same source your \LaTeX{} + distribution came from. + +\bibitem{catalogue} Graham~Williams. \newblock \emph{The TeX + Catalogue} is a very complete listing of many \TeX{} and \LaTeX{} + related packages. + \newblock Available online from \texttt{CTAN:/tex-archive/help/Catalogue/catalogue.html} + +\bibitem{eps} Keith~Reckdahl. \newblock \emph{Using EPS Graphics in + \LaTeXe{} Documents}, which explains everything and much more than + you ever wanted to know about EPS files and their use in \LaTeX{} + documents. \newblock Available online from + \texttt{CTAN:/tex-archive/info/epslatex.ps} + +\bibitem{xy-pic} Kristoffer H. Rose + \newblock \emph{\Xy-pic User's Guide}. \newblock + Downloadable from CTAN with \Xy-pic distribution + +\end{thebibliography} + +\endinput + +% + +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End:
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/contrib.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/contrib.tex new file mode 100644 index 00000000000..b25bf2bd9cb --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/contrib.tex @@ -0,0 +1,129 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Who contributed to this Document +% $Id: contrib.tex,v 1.1.1.1 2002/02/26 10:04:20 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Cám ơn!} + +\noindent Phần lớn nội dung của tài liệu này được lấy từ bản giới +thiệu về \LaTeX{} 2.09 bằng tiếng Đức của: + +\begin{verse} +\contrib{Hubert Partl}{partl@mail.boku.ac.at}% +{Zentraler Informatikdienst der Universit\"at f\"ur Bodenkultur Wien} +\contrib{Irene Hyna}{Irene.Hyna@bmwf.ac.at}% + {Bundesministerium f\"ur Wissenschaft und Forschung Wien} +\contrib{Elisabeth Schlegl}{no email}% + {in Graz} +\end{verse} + +Nếu bạn quan tâm đến tài liệu bằng tiếng Đức, bạn có thể tải về +bản cập nhật của J\"org Knappen tại +\texttt{CTAN:/tex-archive/info/lshort/german}. + +\newpage +\noindent %Khi soạn thảo tài liệu này, tôi đã liên hệ với một số +%thành viên của nhóm tin \texttt{comp.text.tex}. +Trong thời gian thực hiện tài liệu này, tôi đã tham vấn ý kiến của một số người có chuyên môn về \LaTeX{} ở nhóm tin \texttt{comp.text.tex} và đã nhận được +nhiều sự hưởng ứng và đóng góp ý kiến của mọi người. Chính nhờ vào sự nhiệt tình giúp +đỡ trong việc chỉnh sửa lỗi, đưa ra các ý kiến đề nghị cũng tài liệu tham khảo của mọi người tôi mới có thể hoàn tất tài liệu này. Tôi chân thành cám ơn mọi người. Tất cả các lỗi trong tài liệu này là +của tôi !!! (tôi là người soạn thảo mà). Nếu bạn tìm thấy một từ nào đó viết sai lỗi chính tả thì có lẽ rằng một trong những người bạn sau đã bỏ xót nó! + +{ \flushleft\small +Rosemary~Bailey, %r.a.bailey@qmw.ac.uk 0.2 +Marc~Bevand, % <bevand_m@epita.fr> +Friedemann~Brauer, %fbrauer@is.dal.ca 3.4 +Jan~Busa, % <busaj@ccsun.tuke.sk> +Markus~Br\"uhwiler, % <m.br@switzerland.org> +Pietro~Braione, % <braione@elet.polimi.it> +David~Carlisle, %GONE carlisle@cs.man.ac.uk 1.0 +Jos\'e~Carlos~Santos, % <jcsantos@fc.up.pt> +Mike~Chapman, %chapman@eeh.ee.ethz.ch 3.16 +Pierre~Chardaire, % <pc@sys.uea.ac.uk +Christopher~Chin, %chris.chin@rmit.edu.au 3.1 +Carl~Cerecke, %cdc@cosc.canterbury.ac.nz> +Chris~McCormack, %GONE chrismc@eecs.umich.edu 0.1 +Wim~van~Dam, %GONE wimvdam@cs.kun.nl 2.2 +Jan~Dittberner, %jan@jan-dittberner.de 3.15 +Michael~John~Downes, %<mjd@ams.org> 14 Oct 1999 +Matthias~Dreier, %dreier@ostium.ch +David~Dureisseix, %dureisse@lmt.ens-cachan.fr 1.1 +Elliot, %GONE enh-a@minster.york.ac.uk 1.1 +Hans~Ehrbar, %ehrbar@econ.utah.edu +Daniel~Flipo, %Daniel.Flipo@univ-lille1.fr +David~Frey, %david@eos.lugs.ch 2.2 +Hans~Fugal, %hans@fugal.net +Robin~Fairbairns, %Robin.Fairbairns@cl.cam.ac.uk 0.2 1.0 +J\"org~Fischer, %j.fischer@xpoint.at 3.16 +Erik~Frisk, %frisk@isy.liu.se 3.4 +Mic~Milic~Frederickx, % <mic.milic@web.de> +Frank, %frank@freezone.co.uk 11 Feb 2000 +Kasper~B.~Graversen, % <kbg@dkik.dk> +Arlo~Griffiths, % <A.Griffiths@let.leidenuniv.nl> +Alexandre~Guimond, %guimond@IRO.UMontreal.CA 0.9 +Cyril~Goutte, %goutte@ei.dtu.dk 2.1 2.2 +Greg~Gamble, %gregg@maths.uwa.edu.au 2.2 +Neil~Hammond, %nfh@dmu.ac.uk 0.3 +Rasmus~Borup~Hansen, %GONE rbhfamos@math.ku.dk 0.2 0.9 0.91 0.92 1.9.9 +Joseph~Hilferty, % <hilferty@fil.ub.es> +Bj\"orn Hvittfeldt, %bjorn@hvittfeldt.com 3.13 +Martien~Hulsen, %M.A.Hulsen@WbMt.TUDelft.NL 1.0 1.1 +Werner~Icking, %<Werner.Icking@gmd.de> 3.1 +Jakob, %diness@get2net.dk +Eric~Jacoboni, %GONE jacoboni@enseeiht.fr 0.1 0.9 +Alan~Jeffrey, %alanje@cogs.sussex.ac.uk 0.2 +Byron~Jones, %bj@dmu.ac.uk 1.1 +David~Jones, %GONE djones@CA.McMaster.dcss.insight 1.1 +Johannes-Maria~Kaltenbach, %<kaltenbach@zeiss.de> 3.01 +Michael~Koundouros, % <mkoundouros@hotmail.com> +Andrzej~Kawalec, %GONE akawalec@prz.rzeszow.pl 1.9.9 +Alain~Kessi, %ALAIN_KESSI@HOTMAIL.COM 2.2 +Christian Kern, %ck@unixen.hrz.uni-oldenburg.de 2.1 +J\"org~Knappen, %knappen@vkpmzd.kph.uni-mainz.de 0.1 +Kjetil~Kjernsmo, %<kjetil.kjernsmo@astro.uio.no> 3.2 +Maik~Lehradt, %greek@uni-paderborn.de 0.1 +R\'emi~Letot, % <r_letot@yahoo.com> +Johan~Lundberg, %p99jlu@physto.se +Alexander~Mai, %Alexander.Mai@physik.tu-darmstadt.de 3.8 +Martin~Maechler, %<maechler@stat.math.ethz.ch> 2.2 +Aleksandar~S~Milosevic, % <aleksandar.milosevic@yale.edu> +Henrik~Mitsch, % <Henrik.Mitsch@gmx.at> +Claus~Malten, %GONE <ASI138%BITNET.DJUKFA11@BITNET.CEARN> 1.1 +Kevin~Van~Maren, % <vanmaren@fast.cs.utah.edu> 24 Nov 1999 +Lenimar~Nunes~de~Andrade, % <lenimar@mat.ufpb.br> Fri, 12 Nov 1999 +Demerson~Andre~Polli, % polli@linux.ime.usp.br +Maksym~Polyakov % <polyama@myrealbox.com> +Hubert~Partl, %partl@mail.boku.ac.at 0.2 1.1 +John~Refling, %refling@sierra.lbl.gov 0.1 0.9 +Mike~Ressler, %ressler@cougar.jpl.nasa.gov 0.1 0.2 0.9 1.0 1.9.9 +Brian~Ripley, %ripley@stats.ox.ac.uk 2.1 +Young~U.~Ryu, %ryoung@utdallas.edu 2.1 +Bernd~Rosenlecher, %9rosenle@informatik.uni-hamburg.de 10 Feb 2000 +Chris~Rowley, %C.A.Rowley@open.ac.uk 0.91 +Risto~Saarelma, %risto.saarelma@cs.helsinki.fi +Hanspeter~Schmid, %schmid@isi.ee.ethz.ch +Craig~Schlenter, %cschle@lucy.ee.und.ac.za 0.1 0.2 0.9 +Baron~Schwartz, % <bps7j@cs.virginia.edu> +Christopher~Sawtell, %<csawtell@xtra.co.nz> 1 Sep 1999 +Geoffrey~Swindale, % <geofftswin@ntlworld.com> +Boris~Tobotras, % <tobotras@jet.msk.su> +Josef~Tkadlec, %tkadlec@math.feld.cvut.cz 2.0 2.2 +Scott~Veirs, %scottv@ocean.washington.edu +Didier~Verna, %verna@inf.enst.fr 2.2 +Fabian~Wernli, %wernli@iap.fr 3.2 +Carl-Gustav~Werner, % <Carl-Gustav.Werner@math.lu.se> 11 Oct 1999,3.16 +David~Woodhouse, % <dwmw2@infradead.org> 3.16 +Chris~York, % <c.s.york@Cummins.com> 21 Nov 1999 +Fritz~Zaucker, %zaucker@ee.ethz.ch 3.0 +Rick~Zaccone, %zaccone@bucknell.edu 2.2 +and Mikhail~Zotov. %zotov@eas.npi.msu.su 3.1 + +} + +\vspace*{\stretch{1}} +\pagebreak +% +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End:
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/custom.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/custom.tex new file mode 100644 index 00000000000..8600e38e24c --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/custom.tex @@ -0,0 +1,737 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Customising LaTeX output +% $Id: custom.tex,v 1.1.1.1 2002/02/26 10:04:20 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Tuỳ biến các thành phần của \LaTeX{}} + +\begin{intro} +Với các lệnh đã học từ chương 1 đến nay, bạn đã có thể soạn thảo được các tài liệu đẹp mắt, có tình chuyên nghiệp khá cao. Dù chúng chưa đạt đến được sự tinh xảo cao nhưng tài liệu của bạn đã tuân theo những qui tắc định dạng chung do đó chúng rất dễ đọc và có tính chất chuyên nghiệp. + +Tuy nhiên, trên thực tế của việc soạn thảo với \LaTeX{}, bạn vẫn còn gặp phải một số tình huống mà \LaTeX{} không cung cấp các lệnh hay môi trường phù hợp với yêu cầu của bạn hay kết quả có được từ các lệnh sẵn có không làm cho bạn hài lòng. + +Trong chương này, chúng ta sẽ cùng tìm hiểu một vài thủ thuật để ``dạy'' cho \LaTeX{} những kỹ năng mới nhằm tạo ra các tài liệu có kiểu mẫu khác với các kiểu mẫu mặc định. +\end{intro} + + +\section{Tạo lệnh, gói lệnh và môi trường mới} +Nếu chú ý thì bạn sẽ thấy rằng tất cả các lệnh trong tài liệu này đều được đóng khung và bạn có thể dễ dàng tìm thấy chúng trong phần chỉ mục của tài liệu. Thay vì trực tiếp sử dụng các lệnh của \LaTeX{}, tôi đã tạo ra một \wi{gói} mới định nghĩa cách các lệnh và môi trường mới này. Khi này, tôi chỉ cần nhập vào như sau: + +\begin{example} +\begin{lscommand} +\ci{dum} +\end{lscommand} +\end{example} +Trong ví dụ này, tôi đã sử dụng một môi trường mới gọi là \ei{lscommand} và một lệnh mới là \ci{ci}. Môi trường mới này sẽ +vẽ đóng khung các lệnh. Còn lệnh \ci{ci} được dùng để soạn thảo tên lệnh và đưa nó vào bảng chỉ mục. Bạn có thể kiểm tra điều này bằng cách nhìn qua mục \ci{dum} trong phần chỉ mục của tài liệu này. + +Khi tôi muốn thay đổi định dạng cho các lệnh sang một kiểu khác (chẳng hạn như không đóng khung nữa), tôi chỉ cần thay đổi định nghĩa của môi trường \texttt{lscommand}. Điều này giúp cho việc thay đổi được thực hiện khá dễ dàng mà không cần phải tìm kiếm trong suốt tài liệu và tiến hành sửa đổi. + +\subsection{Tạo lệnh mới} +Để thêm vào một lệnh mới của riêng bạn, sử dụng lệnh sau: + +\begin{lscommand} +\ci{newcommand}\verb|{|% + \emph{name}\verb|}[|\emph{num}\verb|]{|\emph{definition}\verb|}| +\end{lscommand} +\noindent Thông thường, một lệnh sẽ đòi hỏi hai tham số: \emph{name} là tên của lệnh mà bạn muốn tạo và \emph{definition} là định nghĩa của lệnh. Tham số \emph{num} trong dấu ngoặc vuông là tuỳ chọn và xác định số các tham số mà lệnh mới cần đến (một lệnh có khả năng có tối đa là 9 tham số). Nếu ta bỏ qua tham số này thì lệnh này sẽ được gọi mà không có tham số nào cả. + +Dưới đây là một ví dụ nhằm giúp bạn hiểu rõ hơn. Trong ví dụ này, trước tiên, ta sẽ tạo ra một lệnh mới gọi là \ci{tnss}. Lệnh này sẽ xuất ra chuỗi ``The Not So Short Introduction to \LaTeXe{}.'' + +\begin{example} +\newcommand{\tnss}{The not + so Short Introduction to + \LaTeXe} +Đây là tựa đề gốc của tài +liệu này: ``\tnss'' \ldots{} +``\tnss'' +\end{example} +Ví dụ tiếp theo sẽ minh hoạ cho việc tạo lệnh mới và lệnh này sẽ có 1 tham số. Thẻ lệnh \verb|#1| sẽ được thay thế bởi nội dung do bạn cung cấp. Nếu bạn muốn có nhiều hơn 1 tham số, bạn có thể sử dụng thẻ lệnh \verb|#2|, \ldots. + +\begin{example} +\newcommand{\txsit}[1] + {Xin chào + \emph{#1}. Chúc một ngày tốt lành!} +% trong phần thân của tài liệu: +\begin{itemize} +\item \txsit{Nguyễn Tân Khoa} +\item \txsit{Babymilky} +\end{itemize} +\end{example} +\LaTeX{} không cho phép việc tạo ra các lệnh mới trùng tên với các lệnh sẵn có. Tuy nhiên, trong trường hợp này, bạn có thể dùng lệnh sau: \ci{renewcommand} một cách tường minh. Lệnh \verb|renewcommand| cũng có cú pháp tương tự như lệnh \verb|\newcommand|. + +Trong một số trường hợp cụ thể, bạn có thể sử dụng lệnh \ci{providecommand}. Lệnh này giống như lệnh \ci{newcommand} nhưng khi mà lệnh đã được định nghĩa thì \LaTeXe{} sẽ tự động bỏ qua nó. + +Xem thêm trang \pageref{khoảng trắng} để biết thêm chi tiết về các vấn đề liên quan đến khoảng trắng ở sau một lệnh. + +\subsection{Tạo môi trường mới} +Cũng như lệnh \verb|\newcommand|, có một lệnh hỗ trợ cho việc tạo ra các môi trường mới. Đó là lệnh \ci{newenvironment} với cú pháp như sau: + +\begin{lscommand} +\ci{newenvironment}\verb|{|% + \emph{name}\verb|}[|\emph{num}\verb|]{|% + \emph{before}\verb|}{|\emph{after}\verb|}| +\end{lscommand} +Tương tự như lệnh \ci{newcommand}, lệnh \ci{newenvironment} cũng có các tham số tuỳ chọn riêng. Dữ liệu trong phần \emph{before} sẽ được xử lý trước khi phần văn bản được xử lý và dữ liệu trong phần \emph{after} sẽ được xử lý khi lệnh +\verb|\end{|\emph{name}\verb|}| được xử lý. + +Dưới đây là một ví dụ minh hoạ cho việc sử dụng lệnh \ci{newenvironment}. + +\begin{example} +\newenvironment{king} + {\rule{1ex}{1ex}% + \hspace{\stretch{1}}} + {\hspace{\stretch{1}}% + \rule{1ex}{1ex}} + +\begin{king} +Đề tài bé nhỏ của tôi \ldots +\end{king} +\end{example} +Tham số \emph{num} sẽ cho biết số đối số của lệnh. \LaTeX{} sẽ kiểm tra xem bạn có định nghĩa lại một môi trường đã tồn tại hay không. Khi này, nếu bạn muốn thay đổi một môi trường đã tồn tại, bạn có thể sử dụng lệnh \ci{renewenvironment}. Cú pháp của lệnh này cũng tương tự như cú pháp của lệnh \ci{renewcommand}. + +Các lệnh được sử dụng trong ví dụ trên sẽ được giải thích sau. Đối với các lệnh \ci{rule} và \ci{stretch}, bạn có thể tham khảo thêm ở trang~\pageref{cmd:rule} và~\pageref{sec:rule}. Còn với lệnh \ci{hspace} thì xem thêm ở trang~\pageref{sec:hspace} + +\subsection{Tạo một gói lệnh mới} +Khi mà bạn đã định nghĩa nhiều môi trường và nhiều lệnh mới, phần tựa đề của tài liệu của bạn sẽ trở nên khá dài. Do đó, bạn nên tạo một gói mới chứa định nghĩa của tất cả các lệnh và môi trường mới này. Sau đó, bạn có thể sử dụng lệnh \ci{usepackage} để đưa gói mới này vào sử dụng trong tài liệu của bạn. + +\begin{figure}[!htbp] +\begin{lined}{\textwidth} +\begin{verbatim} +% Demo Package by Tobias Oetiker +\ProvidesPackage{demopack} +\newcommand{\tnss}{The not so Short Introduction to \LaTeXe} +\newcommand{\txsit}[1]{The \emph{#1} Short + Introduction to \LaTeXe} +\newenvironment{king}{\begin{quote}}{\end{quote}} +\end{verbatim} +\end{lined} +\caption{Ví dụ về một gói lệnh tự tạo.} \label{package} +\end{figure} +Việc viết một gói lệnh mới bao gồm việc sao chép nội dung của phần tựa đề của tài liệu vào một tập tin riêng lẻ với phần mở rộng là \texttt{.sty}. Có một lệnh đặc biệt: +\begin{lscommand} +\ci{ProvidesPackage}\verb|{|\emph{package name}\verb|}| +\end{lscommand} +\noindent để sử dụng ở đầu của tập tin lưu gói lệnh. Lệnh \verb|\ProvidePackage| cho \LaTeX{} biết tên của gói lệnh; đồng +thời, nó cũng cho phép \LaTeX{} thông báo các lỗi cơ bản như việc đưa gói lệnh vào hai lần. Hình~\ref{package} cho thấy một ví dụ nhỏ về gói lệnh tự tạo chứa các lệnh đã được định nghĩa trong các ví dụ trên. + +\section{Font chữ và kích thước font chữ} + +\subsection{Các lệnh thay đổi font chữ} +\index{font}\index{kích thước font chữ} \LaTeX{} sẽ tự động lựa chọn font chữ và kích thước font chữ dựa trên cấu trúc logic của tài liệu (mục, chú thích chân, \ldots). Trong một số tình huống, bạn sẽ muốn tự thay đổi font chữ. Để thực hiện điều này, bạn có thể sử dụng các lệnh trong bảng~\ref{fonts} và~\ref{sizes}. Kích thước phù hợp của font chữ là một kĩ thuật thiết kế dựa trên kiểu tài liệu và các mục chọn của nó. Bảng~\ref{tab:pointsizes} liệt kê các kích thước tương ứng cho các lệnh thay đổi kích thước font chữ trong các lớp tài liệu chuẩn. + +\begin{example} +{\small Chữ nhỏ \textbf{bold} +dạng Romans} {\Large Chữ lớn +\textit{Italy}.} +\end{example} +Một tính năng quan trọng của \LaTeXe{} là các thuộc tính của font chữ là độc lập. Điều này có nghĩa là bạn có thể thay đổi font chữ hay kích thước của font chữ mà vẫn giữa được các định dạng in đậm, in nghiêng đã được đặt từ trước. + +Trong \emph{chế độ toán học}, bạn có thể dùng các lệnh thay đổi font chữ để tạm thời thoát ra khỏi \emph{chế độ toán học} và nhập vào các đoạn văn bản thông thường. Để thay đổi font chữ trong chế độ toán học, bạn cần sử dụng một tập lệnh đặc biệt. Xem thêm bảng~\ref{mathfonts}. + +\begin{table}[!bp] +\caption{Font chữ.} \label{fonts} +\begin{lined}{13cm} +% +% Alan suggested not to tell about the other form of the command +% eg \verb|\sffamily| or \verb|\bfseries|. This seems a good thing to me. +% +\begin{tabular}{@{}rl@{\qquad}rl@{}} +\fni{textrm}\verb|{...}| & \textrm{\wi{roman}}& +\fni{textsf}\verb|{...}| & \textsf{\wi{sans serif}}\\ +\fni{texttt}\verb|{...}| & \texttt{đánh máy}\\[6pt] +\fni{textmd}\verb|{...}| & \textmd{trung bình}& +\fni{textbf}\verb|{...}| & \textbf{\wi{in đậm}}\\[6pt] +\fni{textup}\verb|{...}| & \textup{\wi{thắng đứng}}& +\fni{textit}\verb|{...}| & \textit{\wi{in nghiêng}}\\ +\fni{textsl}\verb|{...}| & \textsl{\wi{nghiêng}}& +\fni{textsc}\verb|{...}| & \textsc{\wi{chữ nhỏ}}\\[6pt] +\ci{emph}\verb|{...}| & \emph{nhấn mạnh} & +\fni{textnormal}\verb|{...}| & font chữ \textnormal{bình +thường} +\end{tabular} + +\bigskip +\end{lined} +\end{table} + + +\begin{table}[!bp] +\index{font size} \caption{Kích thước của font chữ.} \label{sizes} +\begin{lined}{12cm} +\begin{tabular}{@{}ll} +\fni{tiny} & \tiny font chữ nhỏ \\ +\fni{scriptsize} & \scriptsize font chữ rất nhỏ\\ +\fni{footnotesize} & \footnotesize font chữ tương đối nhỏ \\ +\fni{small} & \small font chữ nhỏ \\ +\fni{normalsize} & \normalsize font chữ thường \\ +\fni{large} & \large font chữ lớn +\end{tabular}% +\qquad\begin{tabular}{ll@{}} +\fni{Large} & \Large font chữ lớn hơn \\[5pt] +\fni{LARGE} & \LARGE font chữ rất lớn \\[5pt] +\fni{huge} & \huge font chữ ``khổng lồ'' \\[5pt] +\fni{Huge} & \Huge font chữ lớn nhất +\end{tabular} + +\bigskip +\end{lined} +\end{table} + +\begin{table}[!tbp] +\caption{Kích thước tính theo điểm (pt) của các tài liệu +chuẩn.}\label{tab:pointsizes} \label{tab:sizes} +\begin{lined}{13cm} +\begin{tabular}{lrrr} +\multicolumn{1}{c}{Cỡ} & \multicolumn{1}{c}{10pt (mặc định) } & + \multicolumn{1}{c}{11pt tuỳ chọn} & + \multicolumn{1}{c}{12pt tuỳ chọn}\\ +\verb|\tiny| & 5pt & 6pt & 6pt\\ +\verb|\scriptsize| & 7pt & 8pt & 8pt\\ +\verb|\footnotesize| & 8pt & 9pt & 10pt \\ +\verb|\small| & 9pt & 10pt & 11pt \\ +\verb|\normalsize| & 10pt & 11pt & 12pt \\ +\verb|\large| & 12pt & 12pt & 14pt \\ +\verb|\Large| & 14pt & 14pt & 17pt \\ +\verb|\LARGE| & 17pt & 17pt & 20pt\\ +\verb|\huge| & 20pt & 20pt & 25pt\\ +\verb|\Huge| & 25pt & 25pt & 25pt\\ +\end{tabular} + +\bigskip +\end{lined} +\end{table} + + +\begin{table}[!bp] +\caption{Các font chữ để soạn thảo trong chế độ toán học.} +\label{mathfonts} +\begin{lined}{\textwidth} +\begin{tabular}{@{}lll@{}} +\textit{Lệnh}&\textit{Ví dụ}& \textit{Kết quả}\\[6pt] +\fni{mathcal}\verb|{...}|& \verb|$\mathcal{B}=c$|& $\mathcal{B}=c$\\ +\fni{mathrm}\verb|{...}|& \verb|$\mathrm{K}_2$|& $\mathrm{K}_2$\\ +\fni{mathbf}\verb|{...}|& \verb|$\sum x=\mathbf{v}$|& $\sum x=\mathbf{v}$\\ +\fni{mathsf}\verb|{...}|& \verb|$\mathsf{G\times R}$|& $\mathsf{G\times R}$\\ +\fni{mathtt}\verb|{...}|& \verb|$\mathtt{L}(b,c)$|& $\mathtt{L}(b,c)$\\ +\fni{mathnormal}\verb|{...}|& \verb|$\mathnormal{R_{19}}\neq R_{19}$|& +$\mathnormal{R_{19}}\neq R_{19}$\\ +\fni{mathit}\verb|{...}|& \verb|$\mathit{ffi}\neq ffi$|& $\mathit{ffi}\neq ffi$ +\end{tabular} + +\bigskip +\end{lined} +\end{table} + +Liên quan đến các lệnh thay đổi kích thước font chữ, \wi{dấu ngoặc +vuông} đóng một vai trò rất quan trọng. Chúng được dùng để tạo ra +các \emph{nhóm}. Các \emph{nhóm} sẽ giới hạn phạm vi tác dụng của +các lệnh trong \LaTeX{}.\index{nhóm}. + +\begin{example} +Tôi thích {\LARGE Toán-Tin học +và {\small Văn học}}. +\end{example} +Các lệnh liên quan đến kích thước của font chữ cũng sẽ thay đổi +khoảng cách giữa các hàng khi mà một đoạn văn kết thúc bên trong +phạm vi tác dụng của lệnh này. Do đó, dấu đóng ngoặc \verb|}| +không nên xuất hiện trước khi kết thúc đoạn văn. Hãy chú ý đến vị +trí của lệnh \ci{par} trong hai ví dụ sau +đây.\footnote{\texttt{\bs{}par} tương đương với một hàng trắng.} + +\begin{example} +{\Large Đừng tin cô gái ấy. +Tôi nói ``thiệt'' đấy!!!\par} +\end{example} + +\begin{example} +{\Large Đừng tin chàng trai ấy. +Tôi không ``quan tâm'' đến anh +ta.}\par +\end{example} +Khi bạn muốn kích hoạt việc thay đổi kích thước font chữ cho cả +doạn văn bản hay nhiều hơn, bạn có thể sử dụng môi trường lệnh để +thay đổi. +\begin{example} +\begin{Large} +Đừng tin những gì con +gái nói. Nhưng như vậy +thì còn biết tin vào +gì nữa đây???!!! \ldots +\end{Large} +\end{example} + +\noindent Giải pháp này sẽ giúp bạn tránh được việc nhập thiếu dấu +đóng ngoặc \verb|}|. + +\subsection{Lưu ý khi sử dụng các lệnh thay đổi định dạng} +Như đã nói đến ở đầu chương, việc thay đổi định dạng của font chữ, +kích thước thông qua các lệnh tác động trực tiếp sẽ làm cho tài +liệu của chúng ta trở nên không còn trong sáng như ý tưởng ban +đầu. Do đó, khi cần thay đổi định dạng của văn bản tại nhiều nơi +trong văn bản, bạn nên tạo ra một lệnh mới với lệnh +\verb|\newcommand|. + +\begin{example} +\newcommand{\oops}[1]{\textbf{#1}} +Đừng \oops{bước vào} căn +phòng này!! Bên trong căn +phòng này đang +có một \oops{con vật lạ} +từ hành tinh khác!. +\end{example} +Hướng tiếp cận này có những lợi điểm riêng bởi vì bạn có thể thay +đổi cách định dạng về sau với rất ít công sức. Ngược lại, nếu bạn +sử dụng lệnh thay đổi trực tiếp như \verb|\textbf| thì khi muốn +thay đổi định dạng, bạn cần phải tìm kiếm tất cả các lệnh +\verb|\textbf| trong tài liệu và thay thế nó bởi lệnh định dạng +khác. Hãy nghĩ đến sự phức tạp khi mà bạn muốn thay đổi một loạt +các định dạng phức tạp!!! + +\subsection{Vài lời khuyên} +Để kết thúc phần giới thiệu về font chữ và kích thước của font +chữ, dưới đây là một số lời khuyên:\nopagebreak + +\begin{quote} + \underline{\textbf{Hãy nhớ là\Huge!}} \textit{Sử dụng} + \textsf{nhiều\textbf{\LARGE FONT} \texttt{chữ}\textsl{khác nhau}} \Huge + Bạn \tiny sẽ \footnotesize \textbf{tạo} ra \small \texttt{một tài liệu đẹp}, + \large \textit{và} \normalsize dễ \textsc{đọc}. +\end{quote} + +\section{Các khoảng trắng} + +\subsection{Khoảng cách giữa cách hàng} + +\index{khoảng trắng giữa các hàng} Bạn có thể thay đổi khoảng cách +giữa các hàng bên trong một tài liệu với lệnh sau: +\begin{lscommand} +\ci{linespread}\verb|{|\emph{factor}\verb|}| +\end{lscommand} +\noindent ở phần tựa đề của tài liệu. Lệnh \verb|\linespread{1.3}| +xác định khoảng cách giữa các hàng là ``một rưỡi''; lệnh +\verb|\linespread{1.6}| xác định khoảng cách giữa các hàng là +``gấp đôi''. Bình thường thì khoảng cách giữa các hàng không được +căng ra cho nên khoảng cách mặc định là~1.\index{khoảng cách hàng +kép}. + +\subsection{Định dạng đoạn văn}\label{parsp} +Trong \LaTeX{}, có hai tham số ảnh hưởng đến việc trình bày các +đoạn văn. Thông qua các lệnh sau + +\begin{code} +\ci{setlength}\verb|{|\ci{parindent}\verb|}{0pt}| \\ +\verb|\setlength{|\ci{parskip}\verb|}{1ex plus 0.5ex minus 0.2ex}| +\end{code} +trong phần tựa đề của tập tin dữ liệu vào, bạn có thể thay đổi +cách trình bày các đoạn văn. Hai lệnh này sẽ tăng khoảng cách giữa +các đoạn văn trong khi thiết lập việc canh lề các đoạn văn là 0. + +Phần tham số \texttt{plus} và \texttt{minus} của lệnh trên sẽ cho +\TeX{} biết rằng nó có thể co hẹp lại hay dãn rộng ra việc cách +đoạn theo một lượng được xác định khi mà đoạn văn tương ứng cần +phải nằm vừa vặn trong một trang. + +Theo định dạng văn bản thông thường ở châu Âu, các đoạn văn thường +cách nhau bởi một khoảng trắng và không được canh lề. Nhưng bạn +nên lưu ý rằng, cách định dạng này cũng có những ảnh hưởng riêng +đến bảng mục lục: khoảng cách giữa các hàng sẽ tương đối lớn làm +cho bảng mục lục trở nên ``lỏng lẽo''. Để tránh điều này, bạn có +thể đặt hai lệnh định dạng khoảng cách ở trong phần tựa đề vào +phần nội dung của tài liệu, ở sau lệnh \verb|\tableofcontent| hoặc +bạn có thể không sử dụng hai lệnh định dạng trên. Hầu hết các tài +liệu chuyên nghiệp đều sử dụng định dạng đoạn văn bằng cách canh +lề chứ không dùng khoảng trắng để cách đoạn. + +Để canh lề một đoạn văn chưa được canh lề, hãy sử dụng lệnh sau: + +\begin{lscommand} +\ci{indent} +\end{lscommand} +\noindent ở phần đầu của đoạn văn.\footnote{Để canh lề cho đoạn +văn đầu tiên nằm ở sau tựa đề mục, bạn có thể sử dụng gói +\pai{indentfirst} trong bộ các công cụ}. Hiển là lệnh này sẽ không +có tác động khi lệnh \verb|\parindent| được chỉnh là 0. + +Để chỉnh cho đoạn văn không được canh lề, bạn có thể sử dụng lệnh +sau: + +\begin{lscommand} +\ci{noindent} +\end{lscommand} +\noindent ở vị trí đầu tiên của đoạn văn. Lệnh này rất có ích khi +bạn bắt đầu một tài liệu bằng phần văn bản chứ không phải lệnh tạo +đề mục. + +\subsection{Khoảng trắng ngang} +\label{sec:hspace} \LaTeX{} tác động xác định khoảng trắng giữa +các từ và các câu một cách tự động. Để thêm vào khoảng trắng +ngang, bạn có thể dùng lệnh:\index{khoảng trắng!ngang} + +\begin{lscommand} +\ci{hspace}\verb|{|\emph{length}\verb|}| +\end{lscommand} +Trong tình huống bạn muốn giữ nguyên các khoảng trắng này tại vị +trí cuối hàng hoặc đầu hàng, bạn có thể sử dụng lệnh +\verb|\hspace*| thay cho lệnh \verb|\hspace|. Tham số +\emph{length} chỉ đơn thuần là một con số và đơn vị đo tương ứng +(trong tình huống đơn giản nhất). Các đơn vị thường dùng được liệt +kê trong bảng~\ref{units}.\index{đơn vị}\index{kích thước}. + +\begin{example} +Đây là một khoảng +trắng dài \hspace{1.5cm} + 1.5 cm. +\end{example} +\suppressfloats +\begin{table}[tbp] +\caption{Các đơn vị trong \TeX{}.} \label{units}\index{units} +\begin{lined}{9.5cm} +\begin{tabular}{@{}ll@{}} +\texttt{mm} & millimetre $\approx 1/25$~inch \quad \demowidth{1mm} \\ +\texttt{cm} & centimetre = 10~mm \quad \demowidth{1cm} \\ +\texttt{in} & inch $=$ 25.4~mm \quad \demowidth{1in} \\ +\texttt{pt} & điểm $\approx 1/72$~inch $\approx \frac{1}{3}$~mm \quad\demowidth{1pt}\\ +\texttt{em} & xấp xỉ chiều rộng của chữ `M' trong font chữ hiện thời \quad \demowidth{1em}\\ +\texttt{ex} & xấp xỉ chiều cao của chữ `x' trong font chữ hiện +thời \quad \demowidth{1ex} +\end{tabular} + +\bigskip +\end{lined} +\end{table} + +\label{cmd:stretch} Lệnh +\begin{lscommand} +\ci{stretch}\verb|{|\emph{n}\verb|}| +\end{lscommand} +\noindent sẽ tạo ra các khoảng trắng đặc biệt. Nó sẽ dãn ra cho +đến khi nó sử dụng hết tất cả các khoảng trắng trên hàng. Nếu hai +lệnh \verb|\hspace{\stretch{|\emph{n}\verb|}}| xuất hiện trên cùng +một hàng thì việc dãn rộng các khoảng trắng sẽ được quyết định dựa +trên tham số \emph{n}. + +\begin{example} +x\hspace{\stretch{1}} +x\hspace{\stretch{3}}x +\end{example} + +When using horizontal space together with text, it may make sense to make +the space adjust its size relative to the size of the current font. +This can be done by using the text-relative units \texttt{em} and +\texttt{en}: + +\begin{example} +{\Large{}big\hspace{1em}y}\\ +{\tiny{}tin\hspace{1em}y} +\end{example} + +\subsection{Khoảng trắng dọc} +Khoảng cách giữa các đoạn văn, mục, mục con, \ldots\ được xác định +một cách tự động bởi \LaTeX{}. Khi cần thiết, các khoảng trắng dọc +\emph{giữa hai đoạn văn} có thể được thêm vào với lệnh sau: + +\begin{lscommand} +\ci{vspace}\verb|{|\emph{length}\verb|}| +\end{lscommand} +Lệnh này nên được sử dụng giữa hai hàng trắng. Khi cần giữ khoảng +trắng ở đầu hay cuối trang, bạn có thể sử dụng lệnh +\verb|\vspace*| thay cho lệnh \verb|\vspace|.\index{khoảng +trắng!dọc}. + +Lệnh \verb|\stretch| cùng với lệnh \verb|\pagebreak| có thể được +sử dụng để soạn thảo phần văn bản ở hàng cuối cùng của một trang +hay canh giữa văn bản theo chiều dọc của trang giấy. +\begin{code} +\begin{verbatim} +Một vài lưu ý \ldots + +\vspace{\stretch{1}} +Đây sẽ là hàng cuối của trang.\pagebreak +\end{verbatim} +\end{code} + +Lệnh sau sẽ cho phép bạn thay đổi khoảng cách giữa các hàng trong +cùng một đoạn văn hay trong cùng một biểu bảng: + +\begin{lscommand} +\ci{\bs}\verb|[|\emph{length}\verb|]| +\end{lscommand} +Với lệnh \ci{bigskip} và \ci{smallskip}, bạn có thể cách quãng một +khoảng cách định trước theo chiều dọc. + +\section{Trình bày trang} +\begin{figure}[!hp] +\begin{center} +\makeatletter\@layout\makeatother +\end{center} +\vspace*{1.8cm} \caption{Các tham số trong việc trình bày trang.} +\label{fig:layout} +\end{figure} +\index{trình bày trang} + +\LaTeXe{} cho phép bạn xác định kích thước trang giấy trong lệnh \\ +\verb|\documentclass|. Sau khi được cung cấp kích thước giấy, +\LaTeX{} sẽ tự động xác định kích thước các biên. Tuy nhiên, đôi +khi thao tác tự động này không đáp ứng được yêu cầu định dạng của +bạn. Và với \LaTeX{}, bạn hoàn toàn có khả năng tuỳ biến điều này +cho phù hợp với yêu cầu công việc.\thispagestyle{fancyplain}. +Hình~\ref{fig:layout} sẽ cung cấp cho bạn một cái nhìn tổng quát +về các tham số có thể thay đổi nhằm thực hiện việc định dạng theo +yêu cầu.% +\footnote{\texttt{CTAN:/tex-archive/macros/latex/required/tools}} + +Tuy nhiên, bạn cần phải \textbf{cẩn thận} trước khi quyết định +việc thay đổi định dạng. Bản thân \LaTeX{} đã cố gắng lựa chọn cho +bạn những mẫu định dạng mang tính chất chuyên nghiệp và tương đối +chuẩn trong soạn thảo tài liệu. Do đó, đôi khi việc tuỳ biến các +định dạng này sẽ cho các bạn một kết quả ngoài dự kiến (thông +thường thì kết quả sẽ tệ hơn!!!). + +Để bạn hiểu rõ hơn, ta bắt đầu đi vào phân tích vấn đề. Khi bạn tự +so sánh một trang tài liệu của mình với một trang tài liệu được +soạn thảo bằng MS Word, bạn sẽ thấy rằng trang tài liệu được soạn +bằng \LaTeX{} nhỏ hơn. Tuy nhiên, nếu bạn nhìn kĩ vào các quyển +sách đã được xuất bản\footnote{các quyển sách được in bởi các nhà +xuất bản danh tiếng.} và đếm số kí tự trên một hàng, bạn sẽ thấy +rằng mỗi hàng thường không chứ quá \emph{66} kí tự. Bây giờ, bạn +hãy tiến hành kiểm tra tài liệu được soạn thảo bằng \LaTeX{}, bạn +cũng sẽ có kết quả tương tự. Kinh nghiệm trong ngành in ấn đã cho +thấy rằng các hàng quá dài sẽ gây khó khăn cho người đọc, dễ làm +cho người đọc bị mỏi mắt (đây cũng là lý do vì sao mà các tờ báo +lại chọn cách in dạng nhiều cột). + +Như vậy, nếu bạn tự ý tăng độ rộng của phần văn bản, bạn đã vô +tình gây khó khăn cho người đọc. Tuy nhiên, chúng ta vẫn giới +thiệu cho các bạn biết về các lệnh để thực hiện việc này (nhưng +bạn nên để \LaTeX{} tự động lựa chọn cách trình bày chuẩn nhất). + +\LaTeX{} cung cấp 2 lệnh để thay đổi các tham số này. Thông +thường, các lệnh này thường được đặt trong phần tựa đề của tài +liệu. + +Lệnh đầu tiên này sẽ gán một giá trị cố định cho một tham số bất +kỳ: + +\begin{lscommand} +\ci{setlength}\verb|{|\emph{parameter}\verb|}{|\emph{length}\verb|}| +\end{lscommand} + +Lệnh thứ hai này sẽ cộng thêm vào giá trị hiện tại của tham số: +\begin{lscommand} +\ci{addtolength}\verb|{|\emph{parameter}\verb|}{|\emph{length}\verb|}| +\end{lscommand} +Lệnh thứ hai này hữu ích hơn lệnh thứ nhất (\ci{setlength}) bởi vì +bạn có thể thao tác dựa trên các định dạng sẵn có. Để thêm vào vào +chiều rộng của phần nội dung 1cm, bạn thêm lệnh sau vào phần tựa +đề của tài liệu: +\begin{code} +\verb|\addtolength{\hoffset}{-0.5cm}|\\ +\verb|\addtolength{\textwidth}{1cm}| +\end{code} +Trong tình huống này, bạn có thể xem thêm gói \pai{calc}. Gói này +sẽ cho phép bạn sử dụng các toán tử số học trong tham số của lệnh +\ci{setlength} và các vị trí khác khi bạn nhập giá trị vào tham số +của một hàm. + +\section{Các vấn đề khác với việc định dạng chiều dài} +Khi có thể, tôi thường tránh việc sử dụng các chiều dài thuần tuý +trong các tài liệu được soạn thảo bởi \LaTeX{}. Thông thường, ta +nên dựa vào các tham số cơ bản như chiều dài, rộng của các phần tử +khác của một trang. Đối với chiều rộng của một hình minh họa, bạn +nên sử dụng lệnh \verb|\textwidth| để chỉnh cho hình minh họa nằm +trọn trong một trang. + +3 lệnh dưới đây sẽ giúp bạn xác định chiều rộng, cao và sâu của +chuỗi văn bản. + +\begin{lscommand} +\ci{settoheight}\verb|{|\emph{variable}\verb|}{|\emph{text}\verb|}|\\ +\ci{settodepth}\verb|{|\emph{variable}\verb|}{|\emph{text}\verb|}|\\ +\ci{settowidth}\verb|{|\emph{variable}\verb|}{|\emph{text}\verb|}| +\end{lscommand} + +\noindent Ví dụ dưới đây cho thấy tác dụng của 3 lệnh trên. + +\begin{example} +\flushleft +\newenvironment{vardesc}[1]{% + \settowidth{\parindent}{#1:\ } + \makebox[0pt][r]{#1:\ }}{} + +\begin{displaymath} +a^2+b^2=c^2 +\end{displaymath} + +\begin{vardesc}{Với}$a$, +$b$ -- là hai cạnh kề của +góc vuông của tam giác vuông. + +$c$ -- là cạnh huyền của +tam giác vuông. + +$d$ -- chưa được đề cập ở đây!!!! +\end{vardesc} +\end{example} + +\section{Các hộp} +\LaTeX{} xây dựng các trang bằng cách kết hợp các hộp. Đầu tiên, +mỗi kí tự là một hộp nhỏ. Chúng sẽ được gắn lại với nhau để tạo +nên các từ. Sau đó, các từ này lại được gắn lại với nhau để tạo ra +các từ khác. Tuy nhiên, với loại ``keo'' kết dính đặc biệt thì +chúng có thể co dãn được để có thể nằm trọn trên một hàng. + +Đây chỉ là một cách nói nôm na cơ chế làm việc của \LaTeX{}. Không +chỉ các kí tự mới có thể được đóng hộp. Chúng ta có thể đặt hầu +hết mọi thứ vào trong một cái hộp (ngay cả một cái hộp khác). Khi +này, mỗi một hộp sẽ được \LaTeX{} xem như một kí tự đơn. + +Trong các chương trước, chúng ta đã bắt gặp các hộp (bao quanh các +lệnh, \ldots). Môi trường \ei{tabular} và lệnh +\ci{includegraphics} sẽ hỗ trợ bạn tạo nên các hộp trong tài liệu. +Điều này có nghĩa là bạn có thể sắp xếp hai biểu bảng hay hình ảnh +kế bên nhau. Điều duy nhất bạn cần quan tâm ở đây là tổng chiều +rộng của hai đối tượng này không được vượt quá chiều rộng của văn +bản. + +Ngoài ra, bạn cũng có thể đóng khung một đoạn văn với lệnh + +\begin{lscommand} +\ci{parbox}\verb|[|\emph{pos}\verb|]{|\emph{width}\verb|}{|\emph{text}\verb|}| +\end{lscommand} + +\noindent hay môi trường + +\begin{lscommand} +\verb|\begin{|\ei{minipage}\verb|}[|\emph{pos}\verb|]{|\emph{width}\verb|}| text +\verb|\end{|\ei{minipage}\verb|}| +\end{lscommand} + +\noindent Tham số \texttt{pos} có thể có các giá trị như +\texttt{c,t} hay \texttt{b} để canh lề hộp theo chiều dọc trong +mối quan hệ với vạch giới hạn xung quanh phần văn bản. Tham số +\texttt{width} sẽ xác định chiều rộng của hộp. Điểm khác biệt +chính giữa môi trường \ei{minipage} và lệnh \ci{parbox} là bạn +không thể sử dụng tất cả các lệnh và môi trường bên trong một hộp +được tạo bởi lệnh \ci{parbox}. Ngược lại, bạn có thể làm mọi việc +bên trong môi trường \ei{minipage}. + +Trong khi lệnh \ci{parbox} đóng khung cả đoạn văn bản gồm cả việc +xuống hàng, \ldots ta có một lớp các lệnh đóng khung khác chỉ làm +việc với các văn bản được canh lề theo chiều ngang. Đó là lệnh +\ci{mbox}. Lệnh này chỉ đơn thuần xếp chặt một loạt các hộp vào +trong một hộp khác. Bạn có thể ngăn chặn việc \LaTeX{} tách rời 2 +từ bằng cách sử dụng lệnh này. Lệnh này có tính linh hoạt rất cao. + +\begin{lscommand} +\ci{makebox}\verb|[|\emph{width}\verb|][|\emph{pos}\verb|]{|\emph{text}\verb|}| +\end{lscommand} + +\noindent Tham số \texttt{width} xác định độ rộng của +hộp.\footnote{Điều này có nghĩa là hộp có thể nhỏ hơn phần nội +dung bên trong. Bạn có thể chỉnh độ rộng của hộp là 0pt để phần +văn bản bên trong hộp được soạn thảo mà không bị ảnh hưởng bởi hộp +bao quanh.} Bên cạnh các tham số về độ dài, bạn có thể sử dụng các +lệnh \ci{width}, \ci{height}, \ci{depth} và \ci{totalheight} bên +trong biểu thức về độ dài. Các tham số này có thể được chỉnh dựa +trên các giá trị có được bằng cách đo độ rộng của phần văn bản +\texttt{text}. Tham số \emph{pos} lấy các giá trị sau: \textbf{c}: +văn bản sẽ được canh giữa, \textbf{l}: văn bản sẽ được dồn về +trái, \textbf{r}: văn bản sẽ được dồn về bên phải hay \textbf{s}: +văn bản sẽ được dàn trải ra trong hộp. + +Lệnh \ci{framebox} hoạt động tương tự như lệnh \ci{makebox} nhưng +nó chỉ đơn thuần vẽ một hộp bên ngoài phần văn bản. + +Ví dụ dưới đây cho thấy một số ứng dụng của lệnh \ci{makebox} và +lệnh \ci{framebox} + +\begin{example} +\makebox[\textwidth]{% + ở giữa}\par +\makebox[\textwidth][s]{% + dàn trải}\par +\framebox[1.1\width]{Đóng +khung một văn bản!} \par + +\framebox[0.8\width][r]{Ô kìa, + phần văn bản quá dài!!!} \par +\framebox[1cm][l]{không có + chi, tôi cũng vậy} +Bạn đọc được phần văn bản này chứ? +\end{example} + +Bây giờ, bạn đã có thể điều khiển việc định dạng theo chiều ngang, +bước tiếp theo là việc thực hiện những định dạng theo chiều +dọc.\footnote{Việc điều khiển định dạng hoàn toàn phải là sự tổng +hợp hài hoà của việc điều khiển theo chiều ngang và theo chiều +dọc}. + +\begin{lscommand} +\ci{raisebox}\verb|{|\emph{lift}\verb|}[|\emph{depth}\verb|][|\emph{height}\verb|]{|\emph{text}\verb|}| +\end{lscommand} + +\noindent lệnh này cho phếp bạn định nghĩa thuộc tính theo chiều +dọc của hộp. Bạn cũng có thể sử dụng các lệnh \ci{width}, +\ci{height}, \ci{depth} và \ci{totalheight} ở 3 tham số đầu để xác +định kích thước của hộp bên trong tham số \emph{text}. + +\begin{example} +\raisebox{0pt}[0pt][0pt]{\Large% +\textbf{Aaaa\raisebox{-0.3ex}{a}% +\raisebox{-0.7ex}{aa}% +\raisebox{-1.2ex}{r}% +\raisebox{-2.2ex}{g}% +\raisebox{-4.5ex}{h}}} +Hãy chú ý khả năng định +dạng hết sức tinh +tế và thú vị của \LaTeX{}. +\end{example} + +\section{Đường kẻ và thanh ngang} +\label{sec:rule} Trong một số trang ở các phần trước, bạn đã thấy +lệnh: + +\begin{lscommand} +\ci{rule}\verb|[|\emph{lift}\verb|]{|\emph{width}\verb|}{|\emph{height}\verb|}| +\end{lscommand} + +\noindent Thông thường, lệnh này được sử dụng để vẽ các hộp đen. +\newpage +\begin{example} +\rule{3mm}{.1pt}% +\rule[-1mm]{5mm}{1cm}% +\rule{3mm}{.1pt}% +\rule[1mm]{1cm}{5mm}% +\rule{3mm}{.1pt} +\end{example} + +\noindent Lệnh này rất hữu dụng để vẽ các hàng ngang và hàng dọc. +Ví dụ như đường kẻ ngang trong phần tựa đề của trang được tạo với +lệnh \ci{rule}. + +Một đường kẻ ngang không có chiều rộng và chỉ có một chiều cao xác +định là một trường hợp đặc biệt. Trong ngành soạn thảo chuyên +nghiệp, nó được gọi là ``\wi{strut}''. Nó được sử dụng để đảm bảo +rằng một thành phần trên trang giấy có một chiều cao nhỏ nhất xác +định. Bạn có thể sử dụng nó trong môi trường \texttt{bảng} để chắc +chắn rằng mỗi hàng có một chiều cao xác định nhỏ nhất. + +\begin{example} +\begin{tabular}{|c|} +\hline +\rule{1pt}{4ex}Pitprop \ldots\\ +\hline +\rule{0pt}{4ex}Strut\\ +\hline +\end{tabular} +\end{example} + +\bigskip +{\flushright Hết.\par} + +% +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/fancyhea.sty b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/fancyhea.sty new file mode 100644 index 00000000000..13cfb623ec6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/fancyhea.sty @@ -0,0 +1,129 @@ +% fancyheadings.sty version 1.7 +% Fancy headers and footers. +% Piet van Oostrum, Dept of Computer Science, University of Utrecht +% Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht, The Netherlands +% Telephone: +31-30-531806. piet@cs.ruu.nl (mcvax!sun4nl!ruuinf!piet) +% Sep 16, 1994 +% version 1.4: Correction for use with \reversemargin +% Sep 29, 1994: +% version 1.5: Added the \iftopfloat, \ifbotfloat and \iffloatpage commands +% Oct 4, 1994: +% version 1.6: Reset single spacing in headers/footers for use with +% setspace.sty or doublespace.sty +% Oct 4, 1994: +% version 1.7: changed \let\@mkboth\markboth to +% \def\@mkboth{\protect\markboth} to make it more robust + +\def\lhead{\@ifnextchar[{\@xlhead}{\@ylhead}} +\def\@xlhead[#1]#2{\gdef\@elhead{#1}\gdef\@olhead{#2}} +\def\@ylhead#1{\gdef\@elhead{#1}\gdef\@olhead{#1}} + +\def\chead{\@ifnextchar[{\@xchead}{\@ychead}} +\def\@xchead[#1]#2{\gdef\@echead{#1}\gdef\@ochead{#2}} +\def\@ychead#1{\gdef\@echead{#1}\gdef\@ochead{#1}} + +\def\rhead{\@ifnextchar[{\@xrhead}{\@yrhead}} +\def\@xrhead[#1]#2{\gdef\@erhead{#1}\gdef\@orhead{#2}} +\def\@yrhead#1{\gdef\@erhead{#1}\gdef\@orhead{#1}} + +\def\lfoot{\@ifnextchar[{\@xlfoot}{\@ylfoot}} +\def\@xlfoot[#1]#2{\gdef\@elfoot{#1}\gdef\@olfoot{#2}} +\def\@ylfoot#1{\gdef\@elfoot{#1}\gdef\@olfoot{#1}} + +\def\cfoot{\@ifnextchar[{\@xcfoot}{\@ycfoot}} +\def\@xcfoot[#1]#2{\gdef\@ecfoot{#1}\gdef\@ocfoot{#2}} +\def\@ycfoot#1{\gdef\@ecfoot{#1}\gdef\@ocfoot{#1}} + +\def\rfoot{\@ifnextchar[{\@xrfoot}{\@yrfoot}} +\def\@xrfoot[#1]#2{\gdef\@erfoot{#1}\gdef\@orfoot{#2}} +\def\@yrfoot#1{\gdef\@erfoot{#1}\gdef\@orfoot{#1}} + +\newdimen\headrulewidth +\newdimen\footrulewidth +\newdimen\plainheadrulewidth +\newdimen\plainfootrulewidth +\newdimen\headwidth +\newif\if@fancyplain \@fancyplainfalse +\def\fancyplain#1#2{\if@fancyplain#1\else#2\fi} + +% Command to reset various things in the headers: +% a.o. single spacing (taken from setspace.sty) +% and the catcode of ^^M (so that epsf files in the header work if a +% verbatim crosses a page boundary) +\def\fancy@reset{\restorecr + \def\baselinestretch{1}% + \ifx\undefined\@newbaseline% NFSS not present; 2.09 or 2e + \ifx\@currsize\normalsize\@normalsize\else\@currsize\fi% + \else% NFSS (2.09) present + \@newbaseline% + \fi} + +% Initialization of the head and foot text. + +\headrulewidth 0.4pt +\footrulewidth\z@ +\plainheadrulewidth\z@ +\plainfootrulewidth\z@ + +\lhead[\fancyplain{}{\sl\rightmark}]{\fancyplain{}{\sl\leftmark}} +% i.e. empty on ``plain'' pages \rightmark on even, \leftmark on odd pages +\chead{} +\rhead[\fancyplain{}{\sl\leftmark}]{\fancyplain{}{\sl\rightmark}} +% i.e. empty on ``plain'' pages \leftmark on even, \rightmark on odd pages +\lfoot{} +\cfoot{\rm\thepage} % page number +\rfoot{} + +% Put together a header or footer given the left, center and +% right text, fillers at left and right and a rule. +% The \lap commands put the text into an hbox of zero size, +% so overlapping text does not generate an errormessage. + +\def\@fancyhead#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset\vbox{\hbox +{\rlap{\parbox[b]{\headwidth}{\raggedright#2\strut}}\hfill +\parbox[b]{\headwidth}{\centering#3\strut}\hfill +\llap{\parbox[b]{\headwidth}{\raggedleft#4\strut}}}\headrule}}#5} + + +\def\@fancyfoot#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset\vbox{\footrule +\hbox{\rlap{\parbox[t]{\headwidth}{\raggedright#2\strut}}\hfill +\parbox[t]{\headwidth}{\centering#3\strut}\hfill +\llap{\parbox[t]{\headwidth}{\raggedleft#4\strut}}}}}#5} + +\def\headrule{{\if@fancyplain\headrulewidth\plainheadrulewidth\fi +\hrule\@height\headrulewidth\@width\headwidth \vskip-\headrulewidth}} + +\def\footrule{{\if@fancyplain\footrulewidth\plainfootrulewidth\fi +\vskip-0.3\normalbaselineskip\vskip-\footrulewidth +\hrule\@width\headwidth\@height\footrulewidth\vskip0.3\normalbaselineskip}} + +\def\ps@fancy{ +\def\@mkboth{\protect\markboth} +\@ifundefined{chapter}{\def\sectionmark##1{\markboth +{\uppercase{\ifnum \c@secnumdepth>\z@ + \thesection\hskip 1em\relax \fi ##1}}{}} +\def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne + \thesubsection\hskip 1em\relax \fi ##1}}} +{\def\chaptermark##1{\markboth {\uppercase{\ifnum \c@secnumdepth>\m@ne + \@chapapp\ \thechapter. \ \fi ##1}}{}} +\def\sectionmark##1{\markright{\uppercase{\ifnum \c@secnumdepth >\z@ + \thesection. \ \fi ##1}}}} +\ps@@fancy +\global\let\ps@fancy\ps@@fancy +\headwidth\textwidth} +\def\ps@fancyplain{\ps@fancy \let\ps@plain\ps@plain@fancy} +\def\ps@plain@fancy{\@fancyplaintrue\ps@@fancy} +\def\ps@@fancy{ +\def\@oddhead{\@fancyhead\@lodd\@olhead\@ochead\@orhead\@rodd} +\def\@oddfoot{\@fancyfoot\@lodd\@olfoot\@ocfoot\@orfoot\@rodd} +\def\@evenhead{\@fancyhead\@rodd\@elhead\@echead\@erhead\@lodd} +\def\@evenfoot{\@fancyfoot\@rodd\@elfoot\@ecfoot\@erfoot\@lodd} +} +\def\@lodd{\if@reversemargin\hss\else\relax\fi} +\def\@rodd{\if@reversemargin\relax\else\hss\fi} + +\let\latex@makecol\@makecol +\def\@makecol{\let\topfloat\@toplist\let\botfloat\@botlist\latex@makecol} +\def\iftopfloat#1#2{\ifx\topfloat\empty #2\else #1\fi} +\def\ifbotfloat#1#2{\ifx\botfloat\empty #2\else #1\fi} +\def\iffloatpage#1#2{\if@fcolmade #1\else #2\fi} diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/graphic.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/graphic.tex new file mode 100644 index 00000000000..bea786e48ff --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/graphic.tex @@ -0,0 +1,524 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\setcounter{chapter}{4} +\newcommand{\graphicscompanion}{\emph{The \LaTeX{} Graphics Companion}~\cite{graphicscompanion}} +\newcommand{\hobby}{\emph{A User's Manual for MetaPost}~\cite{metapost}} +\newcommand{\hoenig}{\emph{\TeX{} Unbound}~\cite{unbound}} +\newcommand{\graphicsinlatex}{\emph{Graphics in \LaTeXe{}}~\cite{ursoswald}} + +\chapter{Biên soạn hình ảnh toán học} + +\begin{intro} +Hiện nay rất nhiều người dùng \LaTeX{} để biên soạn tài liệu. Bên cạnh việc hỗ trợ biên soạn các tài liệu thông thường, \LaTeX{} còn hỗ trợ biên soạn hình ảnh dựa trên những mô tả thuần văn bản. Ban đầu, tính năng này có phần bị hạn chế nhưng theo thời gian, một số lượng lớn các gói mở rộng của \LaTeX{} đã khiến tác vụ này trở nên đơn giản, góp phần khắc phục những hạn chế trước đây. Trong chương này, bạn sẽ làm quen với một vài gói tiêu biểu. +\end{intro} + +\section{Tổng quan} + +Môi trường \ei{picture} cho phép chúng ta dùng \LaTeX{} để biên soạn trực tiếp các hình ảnh. Bạn có thể tham khảo trong \manual\ để biết thêm chi tiết. Một mặt, môi trường này vẫn còn một số hạn chế lớn như hệ số góc của các đoạn thẳng cũng như bán kính của đường trọn bị giới hạn trong một số ít các giá trị lựa chọn. Mặt khác, môi trường \ei{picture} trong \LaTeXe{} có lệnh \ci{qbezier}, ``\texttt{q}'' có nghĩa là ``bậc hai' (quadratic)'. Các đường cong thường dùng như đường tròn, ellipse hay các đường cong liên tiếp nhau có thể được thay thế bằng đường cong B\'ezier bậc hai, tuy nhiên, điều này đòi hỏi chúng ta phải thực hiện các tính toán toán học không đơn giản. Nếu bạn sử dụng ngôn ngữ lập trình như Java để tạo ra tập tin nhập liệu của \LaTeX{} chứa các lệnh \ci{qbezier} thì sức mạnh của gói \ei{picture} sẽ tăng lên rất nhiều. + +Mặc dù việc lập trình để xuất ra hình ảnh một cách trực tiếp với \LaTeX\ là một công việc không đơn giản, mệt nhọc và gặp phải những hạn chế nhất định nhưng chúng ta có lý do để thực hiện việc này: tài liệu của chúng ta sẽ chiếm rất ít bộ nhớ cũng như chúng ta không phải lo lắng việc chép thiếu tập tin hình ảnh minh hoạ khi mang tài liệu từ nơi này đến nơi khác. + +Các gói như \pai{epic} và \pai{eepic} (được mô tả trong tài liệu \companion) hay \pai{pstricks} sẽ giúp chúng tra vượt qua những hạn chế của gói \ei{picture} và mở rộng sức mạnh soạn thảo hình ảnh của \LaTeX. + +Trong khi hai gói \pai{epic} và \pai{eepic} chỉ mở rộng môi trường \ei{picture}, gói \pai{pstricks} có riêng môi trường vẽ của mình là \ei{pspicture}. Gói \pai{pstricks} có được sức mạnh này nhờ vào việc sử dụng rất nhiều ngôn ngữ \PSi{}. Ngoài ra, một số lượng lớn các gói đã được thiết kế nhằm phục vụ cho các mục đích nhất định. Một trong số đó là \texorpdfstring{\Xy}{Xy}-pic, được mô tả ở cuối chương này. Hầu hết các gói này đều được giới thiệu trong \graphicscompanion{} (bạn không nên nhầm lẫn giữa tài liệu này và \companion). + +Có lẽ công cụ đồ hoạ mạnh nhất của \LaTeX\ là \texttt{MetaPost}, người anh em song sinh với \texttt{METAFONT} của Donald E. Knuth. \texttt{MetaPost} có ngôn ngữ lập trình rất tinh tế, linh hoạt của \texttt{METAFONT}. Tuy nhiên \texttt{METAFONT} tạo ra tập tin ảnh dạng bitmap còn \texttt{MetaPost} tạo ra ảnh dạng \PSi{} để thêm thêm vào trong tài liệu. Để biết thêm thông tin bạn có thể tham khảo ở \hobby hay \cite{ursowald}. + +Các cách sử dụng hình ảnh (font chữ) trong \LaTeX{} và \TeX{} được thảo luận chi tiết trong \hoenig. + +\section{Môi trường \texttt{picture}} +\secby{Urs Oswald}{osurs@bluewin.ch} + +\subsection{Các lệnh cơ bản} + +Môi trường \ei{picture}\footnote{Môi trường picture hoạt động độc lập, không cần thêm bất kỳ một gói nào khác ngoài trừ \LaTeXe{} chuẩn} được tạo ra bởi một trong hai lệnh sau +\begin{lscommand} +\ci{begin}\verb|{picture}(|$x,y$\verb|)|\ldots\ci{end}\verb|{picture}| +\end{lscommand} +\noindent hay +\begin{lscommand} +\ci{begin}\verb|{picture}(|$x,y$\verb|)(|$x_0,y_0$\verb|)|\ldots\ci{end}\verb|{picture}| +\end{lscommand} +Các giá trị $x,\,y,\,x_0,\,y_0$ sẽ dựa vào \ci{unitlength}, bạn có thể gán lại giá trị này vào bất kỳ lúc nào (bên ngoài môi trường \ei{picture}) với lệnh như sau +\begin{lscommand} +\ci{setlength}\verb|{|\ci{unitlength}\verb|}{1.2cm}| +\end{lscommand} +Giá trị mặc định của \ci{unitlength} là \texttt{1pt}. Cặp giá trị đầu tiên, $(x,y)$ là toạ độ bắt đầu, bên trong tài liệu, của hình chữ nhật bao quanh hình. Cặp giá trị tùy chọn thứ hai, $(x_0, y_0)$, là toạ độ góc dưới bên trái của hình chữ nhật này. + +Hầu hết các lệnh vẽ có hai dạng +\begin{lscommand} +\ci{put}\verb|(|$x,y$\verb|){|\emph{đối tượng}\verb|}| +\end{lscommand} +\noindent hay +\begin{lscommand} +\ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{đối tượng}\verb|}|\end{lscommand} +Đường cong B\'ezier là một ngoại lệ. Các đường cong này được vẽ với lệnh +\begin{lscommand} +\ci{qbezier}\verb|(|$x_1,y_1$\verb|)(|$x_2,y_2$\verb|)(|$x_3,y_3$\verb|)| +\end{lscommand} + +\subsection{Các đoạn thẳng} + +\begin{example} +\setlength{\unitlength}{5cm} +\begin{picture}(1,1) + \put(0,0){\line(0,1){1}} + \put(0,0){\line(1,0){1}} + \put(0,0){\line(1,1){1}} + \put(0,0){\line(1,2){.5}} + \put(0,0){\line(1,3){.3333}} + \put(0,0){\line(1,4){.25}} + \put(0,0){\line(1,5){.2}} + \put(0,0){\line(1,6){.1667}} + \put(0,0){\line(2,1){1}} + \put(0,0){\line(2,3){.6667}} + \put(0,0){\line(2,5){.4}} + \put(0,0){\line(3,1){1}} + \put(0,0){\line(3,2){1}} + \put(0,0){\line(3,4){.75}} + \put(0,0){\line(3,5){.6}} + \put(0,0){\line(4,1){1}} + \put(0,0){\line(4,3){1}} + \put(0,0){\line(4,5){.8}} + \put(0,0){\line(5,1){1}} + \put(0,0){\line(5,2){1}} + \put(0,0){\line(5,3){1}} + \put(0,0){\line(5,4){1}} + \put(0,0){\line(5,6){.8333}} + \put(0,0){\line(6,1){1}} + \put(0,0){\line(6,5){1}} +\end{picture} +\end{example} +Các đoạn thẳng được vẽ thông qua lệnh +\begin{lscommand} +\ci{put}\verb|(|$x,y$\verb|){|\ci{line}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}| +\end{lscommand} +Lệnh \ci{line} có hai tham số: +\begin{enumerate} + \item vector chỉ phương, + \item độ dài. +\end{enumerate} +Các thành phần của vector chỉ phương phải là các số nguyên +\[ + -6,\,-5,\,\ldots,\,5,\,6, +\] +\noindent nguyên tố cùng nhau (không có ước chung trừ số 1). Hình vừa rồi minh họa 25 giá trị hệ số góc khác nhau trong gốc phần tư thứ nhất. Chiều dài của đoạn thẳng phụ thuộc vào giá trị của \ci{unitlength}. + + +\subsection{Mũi tên} + +\begin{example} +\setlength{\unitlength}{1mm} +\begin{picture}(60,40) + \put(30,20){\vector(1,0){30}} + \put(30,20){\vector(4,1){20}} + \put(30,20){\vector(3,1){25}} + \put(30,20){\vector(2,1){30}} + \put(30,20){\vector(1,2){10}} + \thicklines + \put(30,20){\vector(-4,1){30}} + \put(30,20){\vector(-1,4){5}} + \thinlines + \put(30,20){\vector(-1,-1){5}} + \put(30,20){\vector(-1,-4){5}} +\end{picture} +\end{example} +Các dấu mũi tên được vẽ thông qua lệnh +\begin{lscommand} +\ci{put}\verb|(|$x,y$\verb|){|\ci{vector}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}| +\end{lscommand} +Đối với mũi tên, các thành phần của vectơ chỉ phương bị giới hạn nhiều hơn so với đoạn thẳng, chúng phải là các số nguyên +\[ + -4,\,-3,\,\ldots,\,3,\,4. +\] +\noindent nguyên tố cùng nhau (không có ước chung ngoại trừ 1). Bạn cần chú ý đến tác động của lệnh \ci{thicklines} đến hai mũi tên hướng lên góc trên bên trái. + +\subsection{Đường tròn} + +\begin{example} +\setlength{\unitlength}{1mm} +\begin{picture}(60, 40) + \put(20,30){\circle{1}} + \put(20,30){\circle{2}} + \put(20,30){\circle{4}} + \put(20,30){\circle{8}} + \put(20,30){\circle{16}} + \put(20,30){\circle{32}} + + \put(40,30){\circle{1}} + \put(40,30){\circle{2}} + \put(40,30){\circle{3}} + \put(40,30){\circle{4}} + \put(40,30){\circle{5}} + \put(40,30){\circle{6}} + \put(40,30){\circle{7}} + \put(40,30){\circle{8}} + \put(40,30){\circle{9}} + \put(40,30){\circle{10}} + \put(40,30){\circle{11}} + \put(40,30){\circle{12}} + \put(40,30){\circle{13}} + \put(40,30){\circle{14}} + + \put(15,10){\circle*{1}} + \put(20,10){\circle*{2}} + \put(25,10){\circle*{3}} + \put(30,10){\circle*{4}} + \put(35,10){\circle*{5}} +\end{picture} +\end{example} +Lệnh +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|){|\ci{circle}\verb|{|\emph{đường kính}\verb|}}| +\end{lscommand} +\noindent vẽ đường tròn có tâm là $(x,y)$ và đường kính (không phải bán kính) là \emph{đường kính}. +Môi trường \ei{picture} chỉ chấp nhận giá trị đường kính tối đa là 14\,mm; tuy nhiên, trong một số trường hợp dù giá trị đường kính nhỏ hơn giới hạn nhưng vẫn không được chấp nhận. Lệnh \ci{circle*} được dùng để vẽ hình tròn. + +Khi vẽ các đoạn thẳng, đôi khi ta cần phải sử dụng thêm các gói như \pai{eepic} hay \pai{pstricks}. Bạn có thể tham khảo thêm \graphicscompanion\ để biết thêm thông tin chi tiết. + +Trong môi trường \pai{picture}, nếu bạn không ngại tính toán (hay dùng phần mềm hỗ trợ để tính), bạn có thể thay thế việc vẽ các đường tròn và ellipse bằng các đường cong B\'ezier. Xem thêm ví dụ trong \graphicsinlatex\ để biết thêm chi tiết. + +\subsection{Văn bản và công thức} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,5) + \thicklines + \put(1,0.5){\line(2,1){3}} + \put(4,2){\line(-2,1){2}} + \put(2,3){\line(-2,-5){1}} + \put(0.7,0.3){$A$} + \put(4.05,1.9){$B$} + \put(1.7,2.95){$C$} + \put(3.1,2.5){$a$} + \put(1.3,1.7){$b$} + \put(2.5,1.05){$c$} + \put(0.3,4){$F= + \sqrt{s(s-a)(s-b)(s-c)}$} + \put(3.5,0.4){$\displaystyle + s:=\frac{a+b+c}{2}$} +\end{picture} +\end{example} +Thông qua ví dụ trên, bạn có thể thấy rằng văn bản và các công thức có thể được đặt vào môi trường \ei{picture} với lệnh \ci{put} như bình thường. + +\subsection{Lệnh \ci{multiput} và \ci{linethickness}} + +\begin{example} +\setlength{\unitlength}{2mm} +\begin{picture}(30,20) + \linethickness{0.075mm} + \multiput(0,0)(1,0){31}% + {\line(0,1){20}} + \multiput(0,0)(0,1){21}% + {\line(1,0){30}} + \linethickness{0.15mm} + \multiput(0,0)(5,0){7}% + {\line(0,1){20}} + \multiput(0,0)(0,5){5}% + {\line(1,0){30}} + \linethickness{0.3mm} + \multiput(5,0)(10,0){3}% + {\line(0,1){20}} + \multiput(0,5)(0,10){2}% + {\line(1,0){30}} +\end{picture} +\end{example} +Lệnh +\begin{lscommand} + \ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{đối tượng}\verb|}| +\end{lscommand} +\noindent có 4 tham số: điểm bắt đầu, vectơ tịnh tiến từ đối tượng này đến đối tượng tiếp theo, số đối tượng và đối tượng cần vẽ. Lệnh \ci{linethickness} áp dụng cho các đoạn thẳng nằm ngang hay thẳng đứng nhưng không có tác dụng đối với các đoạn xiên hay đường tròn. Tuy nhiên lệnh này có tác dụng với các đường cong B\'ezier! + +\subsection{Hình oval. Lệnh \ci{thinlines} và \ci{thicklines}} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,4) + \linethickness{0.075mm} + \multiput(0,0)(1,0){7}% + {\line(0,1){4}} + \multiput(0,0)(0,1){5}% + {\line(1,0){6}} + \thicklines + \put(2,3){\oval(3,1.8)} + \thinlines + \put(3,2){\oval(3,1.8)} + \thicklines + \put(2,1){\oval(3,1.8)[tl]} + \put(4,1){\oval(3,1.8)[b]} + \put(4,3){\oval(3,1.8)[r]} + \put(3,1.5){\oval(1.8,0.4)} +\end{picture} +\end{example} +Lệnh +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)}| +\end{lscommand} +\noindent hay +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)[|\emph{vị trí}\verb|]}| +\end{lscommand} +\noindent xuất ra một hình oval tại $(x,y)$, có độ rộng $w$ và chiều cao $h$. Tham số vị trí là \texttt{b}, \texttt{t}, \texttt{l}, \texttt{r} tương ứng với ``cuối trang'', ``đầu trang'', ``bên trái'', ``bên phải''. Bạn có thể kết hợp các tham số vị trí này lại với nhau. + +Độ dày của hàng có thể được điều khiển bởi hai lệnh:\\ +\ci{linethickness}\verb|{|\emph{length}\verb|}|, \ci{thinlines} và \ci{thicklines}. Lệnh \ci{linethickness}\verb|{|\emph{length}\verb|}| +chỉ có tác dụng với các đường thẳng nằm ngang hay thẳng đứng (và các đường cong B\'ezier) còn lệnh \ci{thinlines} và \ci{thicklines} có tác dụng với các đường thẳng nằm xiên cũng như đối với đường tròn và oval. + +\subsection{Các cách sử dụng các khung hình được định nghĩa trước} + +\begin{example} +\setlength{\unitlength}{0.5mm} +\begin{picture}(120,168) +\newsavebox{\foldera}% declaration +\savebox{\foldera} + (40,32)[bl]{% definition + \multiput(0,0)(0,28){2} + {\line(1,0){40}} + \multiput(0,0)(40,0){2} + {\line(0,1){28}} + \put(1,28){\oval(2,2)[tl]} + \put(1,29){\line(1,0){5}} + \put(9,29){\oval(6,6)[tl]} + \put(9,32){\line(1,0){8}} + \put(17,29){\oval(6,6)[tr]} + \put(20,29){\line(1,0){19}} + \put(39,28){\oval(2,2)[tr]} +} +\newsavebox{\folderb}% declaration +\savebox{\folderb} + (40,32)[l]{% definition + \put(0,14){\line(1,0){8}} + \put(8,0){\usebox{\foldera}} +} +\put(34,26){\line(0,1){102}} +\put(14,128){\usebox{\foldera}} +\multiput(34,86)(0,-37){3} + {\usebox{\folderb}} +\end{picture} +\end{example} +Một khung hình (picture box) có thể được \emph{khai báo} thông qua lệnh +\begin{lscommand} + \ci{newsavebox}\verb|{|\emph{tên}\verb|}| +\end{lscommand} +\noindent sau đó \emph{định nghĩa} bởi lệnh +\begin{lscommand} + \ci{savebox}\verb|{|\emph{tên}\verb|}(|\emph{chiều rộng,chiều cao}\verb|)[|\emph{vị trí}\verb|]{|\emph{nội dung}\verb|}| +\end{lscommand} +\noindent và cuối cùng được \emph{vẽ} ra với lệnh +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|)|\ci{usebox}\verb|{|\emph{tên}\verb|}| +\end{lscommand} + +Tham số \emph{vị trí} có tác dụng xác định `điểm mốc' của khung (savebox). Trong ví dụ trên, chúng ta đã sử dụng tham số là \texttt{bl} để đặt điểm mốc ở góc dưới bên trái của khung. Các tham số khác là \texttt{t} -- ở trên, \texttt{r} -- bên phải. + +Các khung hình có thể được lồng vào nhau: trong ví dụ trên, ta thấy khung \ci{foldera} được dùng bên trong định nghĩa của khung \ci{folderb} + +Lệnh \ci{oval} được sử dụng như lệnh \ci{line} sẽ không có tác dụng nếu kích thước của đoạn thẳng nhỏ hơn 3\,mm. + +\subsection{Các đường cong B\'ezier} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,4) + \linethickness{0.075mm} + \multiput(0,0)(1,0){7} + {\line(0,1){4}} + \multiput(0,0)(0,1){5} + {\line(1,0){6}} + \thicklines + \put(0.5,0.5){\line(1,5){0.5}} + \put(1,3){\line(4,1){2}} + \qbezier(0.5,0.5)(1,3)(3,3.5) + \thinlines + \put(2.5,2){\line(2,-1){3}} + \put(5.5,0.5){\line(-1,5){0.5}} + \linethickness{1mm} + \qbezier(2.5,2)(5.5,0.5)(5,3) + \thinlines + \qbezier(4,2)(4,3)(3,3) + \qbezier(3,3)(2,3)(2,2) + \qbezier(2,2)(2,1)(3,1) + \qbezier(3,1)(4,1)(4,2) +\end{picture} +\end{example} +Trong ví dụ trên, việc chia đường tròn thành 4 đường cong B\'ezier là không thoả đáng, chúng ta cần ít nhất là 8 đường cong. Hình minh hoạ cũng cho thấy tác dụng của lệnh \ci{linethickness} đối với các đường thẳng nằm ngang và nằm thẳng đứng, lệnh \ci{thicklines} đối với các đướng thẳng nằm xiên. Ngoài ra chúng ta cũng thấy được tác dụng của các lệnh này đối với các đường cong B\'ezier. Bạn cần lưu ý rằng lệnh nằm sau sẽ có tác dụng. + +Đặt $P_1=(x_1,\,y_1),\,P_2=(x_2,\,y_2)$ là các điểm cuối và $m_1,\,m_2$ là các hệ số góc tương ứng của đường cong B\'ezier. Điểm giữa điều khiển $S=(x,\,y)$ sẽ được xác định bởi +\begin{equation} \label{zwischenpunkt} + \left\{ + \begin{array}{rcl} + x & = & \displaystyle \frac{m_2 x_2-m_1x_1-(y_2-y_1)}{m_2-m_1}, \\ + y & = & y_i+m_i(x-x_i)\qquad (i=1,\,2). + \end{array} + \right. +\end{equation} +\noindent Xem \graphicsinlatex\ để biết thêm thông tin về chương trình Java hỗ trợ việc tạo các đường cong B\'ezier từ lệnh. + +\subsection{Catenary} + +\begin{example} +\setlength{\unitlength}{1.3cm} +\begin{picture}(4.3,3.6)(-2.5,-0.25) + \put(-2,0){\vector(1,0){4.4}} + \put(2.45,-.05){$x$} + \put(0,0){\vector(0,1){3.2}} + \put(0,3.35){\makebox(0,0){$y$}} + \qbezier(0.0,0.0)(1.2384,0.0) + (2.0,2.7622) + \qbezier(0.0,0.0)(-1.2384,0.0) + (-2.0,2.7622) + \linethickness{.075mm} + \multiput(-2,0)(1,0){5} + {\line(0,1){3}} + \multiput(-2,0)(0,1){4} + {\line(1,0){4}} + \linethickness{.2mm} + \put( .3,.12763){\line(1,0){.4}} + \put(.5,-.07237){\line(0,1){.4}} + \put(-.7,.12763){\line(1,0){.4}} + \put(-.5,-.07237){\line(0,1){.4}} + \put(.8,.54308){\line(1,0){.4}} + \put(1,.34308){\line(0,1){.4}} + \put(-1.2,.54308){\line(1,0){.4}} + \put(-1,.34308){\line(0,1){.4}} + \put(1.3,1.35241){\line(1,0){.4}} + \put(1.5,1.15241){\line(0,1){.4}} + \put(-1.7,1.35241){\line(1,0){.4}} + \put(-1.5,1.15241){\line(0,1){.4}} + \put(-2.5,-0.25){\circle*{0.2}} +\end{picture} +\end{example} + +Trong hình trên, các nữa đối xứng nhau của đồ thị hàm số $y = \cosh x - 1$ được sắp xỉ bởi đường cong B\'ezier. Phần nữa bên phải của đường cong kết thúc bởi điểm \((2,\,2.7622)\), hệ số góc là \(m=3.6269\). Sử dụng phương trình (\ref{zwischenpunkt}), ta có thể tính được điểm điều khiển giữa là $(1.2384,\,0)$ và $(-1.2384,\,0)$. Độ sai lệch là rất thấp và thường nhỏ hơn một phần trăm. + +Ví dụ này cũng cho ta thấy được cách sử dụng tham số tuỳ chọn của lệnh \verb|\begin{picture}|. +Hình ảnh sẽ được định nghĩa một dựa vào các hệ trục ``toán học'' dựa vào lệnh +\begin{lscommand} + \ci{begin}\verb|{picture}(4.3,3.6)(-2.5,-0.25)| +\end{lscommand} +\noindent góc dưới bên trái (đánh dấu bởi hình tròn màu đen) được xác định toạ độ là $(-2.5,-0.25)$. + +\subsection{Tốc độ trong thuyết tương đối đặc biệt} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,4)(-3,-2) + \put(-2.5,0){\vector(1,0){5}} + \put(2.7,-0.1){$\chi$} + \put(0,-1.5){\vector(0,1){3}} + \multiput(-2.5,1)(0.4,0){13} + {\line(1,0){0.2}} + \multiput(-2.5,-1)(0.4,0){13} + {\line(1,0){0.2}} + \put(0.2,1.4) + {$\beta=v/c=\tanh\chi$} + \qbezier(0,0)(0.8853,0.8853) + (2,0.9640) + \qbezier(0,0)(-0.8853,-0.8853) + (-2,-0.9640) + \put(-3,-2){\circle*{0.2}} +\end{picture} +\end{example} +Điểm điều khiển của hai đường cong B\'ezier được tính bởi công thức (\ref{zwischenpunkt}). Nhánh dương được xác định bởi $P_1=(0,\,0),\,m_1 = 1$ và $P_2 = (2,\,\tanh 2),\, m_2 = 1/\cosh^2 2$. Khi này toạ độ của góc dưới bên trái được xác định là $(-3,-2)$ (hình tròn màu đen). + +\section{\texorpdfstring{\Xy}{Xy}-pic} +\secby{Alberto Manuel Brand\~ao Sim\~oes}{albie@alfarrabio.di.uminho.pt} +Gói \pai{xy} là một gói đặc biệt để vẽ các biểu đồ. Để sử dụng gói này, bạn chỉ việc thêm vào các hàng lệnh sau trong phần tựa đề của tài liệu: +\begin{lscommand} +\verb|\usepackage[|\emph{tùy chọn}\verb|]{xy}| +\end{lscommand} +Với \emph{tùy chọn} là một danh sách các hàm của \Xy-pic mà bạn muốn nạp vào. Tôi đề nghị bạn đưa vào mục chọn \verb!all! để \LaTeX{} nạp tất cả các lệnh của \Xy. + +Các biểu đồ của \Xy-pic được vẽ dựa trên mô hình của các ma trận trong đó mỗi phần tử của biểu đồ được đặt trong một ô của ma trận: +\begin{example} +\begin{displaymath} +\xymatrix{A & B \\ + C & D } +\end{displaymath} +\end{example} +Lệnh \ci{xymatrix} phải được sử dụng trong chế độ toán học. Trong ví dụ trên, chúng ta có hai hàng và hai cột. Để tạo biểu đồ này, chúng ta chỉ cần thêm vào các muỗi tên tương ứng với lệnh +\ci{ar}. +\begin{example} +\begin{displaymath} +\xymatrix{ A \ar[r] & B \ar[d] \\ + D \ar[u] & C \ar[l] } +\end{displaymath} +\end{example} +Lệnh vẽ mũi tên được đặt ở ô gốc. Các tham số ở đây là hướng trỏ đến của các mũi tên. (\texttt{u}: mũi tên hướng lên, \texttt{d}: mũi tên hướng xuống, \texttt{r}: mũi tên hướng sang phải và \texttt{l}: mũi tên hướng sang trái). +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[d] \ar[dr] \ar[r] & B \\ + D & C } +\end{displaymath} +\end{example} +Để tạo ra các mũi tên theo đường chéo, bạn chỉ cần sử dụng tham số là tổ hợp của các hướng. Để có mũi tên đậm hơn, bạn có thể lặp lại các tham số về hướng. +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[d] \ar[dr] \ar[drr] & & \\ + B & C & D } +\end{displaymath} +\end{example} +Bạn có thể vẽ các biểu đồ ``hấp dẫn'' bằng cách thêm vào phía trên dấu mũi tên các nhãn. Để làm điều này, bạn có thể sử dụng các toán tử viết lên trên hay viết xuống dưới. +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[r]^f \ar[d]_g & + B \ar[d]^{g'} \\ + D \ar[r]_{f'} & C } +\end{displaymath} +\end{example} +Như đã thấy, bạn sử dụng các toán tử này trong chế độ toán học. Sự khác biệt duy nhất là việc viết văn bản lên trên được hiểu là ``viết lên phía trên của mũi tên'' còn viết văn bản ở dưới nghĩa là ``ở dưới dấu mũi tên''. Ngoài ra chúng ta còn có toán tử thứ ba là: \verb+|+. Lệnh đặt nội dung lên trên mũi tên. +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[r]|f \ar[d]|g & + B \ar[d]|{g'} \\ + D \ar[r]|{f'} & C } +\end{displaymath} +\end{example} + +Để vẽ các mũi tên có khoảng trống ở giữa, bạn có thể sử dụng lệnh \verb!\ar[...]|\hole!. + +Trong một số tình huống, việc phân biệt các kiểu mũi tên khác nhau là quan trọng, khi này, bạn có thể đặt các nhãn lên các dẫu mũi tên hay thay đổi kiểu hiển thị của nó: +\begin{example} +\begin{displaymath} +\xymatrix{ + \bullet\ar@{->}[rr] && \bullet\\ + \bullet\ar@{.<}[rr] && \bullet\\ + \bullet\ar@{~)}[rr] && \bullet\\ + \bullet\ar@{=(}[rr] && \bullet\\ + \bullet\ar@{~/}[rr] && \bullet\\ + \bullet\ar@{=+}[rr] && \bullet +} +\end{displaymath} +\end{example} + +Bạn hãy chú ý sự khác biệt giữa hai biểu đồ dưới đây: +\begin{example} +\begin{displaymath} +\xymatrix{ + \bullet \ar[r] + \ar@{.>}[r] & + \bullet +} +\end{displaymath} +\end{example} +\begin{example} +\begin{displaymath} +\xymatrix{ + \bullet \ar@/^/[r] + \ar@/_/@{.>}[r] & + \bullet +} +\end{displaymath} +\end{example} + +Từ bổ sung thêm vào giữa hai dấu gách chéo /~/ xác định cách các đường cong được vẽ. Ngoài ra, \Xy-pic cung cấp nhiều cách khác nhau để tác động đến việc vẽ các đường cong. Để biết thêm chi tiết, bạn có thể tham khảo thêm tài liệu của \Xy-pic. + +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-print-vi.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-print-vi.tex new file mode 100644 index 00000000000..a4c424ef077 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-print-vi.tex @@ -0,0 +1,2 @@ +\def\printversion{true} +\input lshort-vi.tex diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-vi.sty b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-vi.sty new file mode 100644 index 00000000000..0b3be510750 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-vi.sty @@ -0,0 +1,257 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Special Commands for the LShort2e Introduction +% $Id: lshort.sty,v 1.2 2003/03/19 20:57:45 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% By Tobias Oetiker +% Some changes by Han The Thanh +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%\errorcontextlines=10 + +%save pageref an label +\let\lsspageref\pageref +\ProvidesPackage{lshort} +\RequirePackage[utf8]{inputenc} +\RequirePackage[english,frenchb,german,vietnam]{babel} +\RequirePackage{mflogo} +\RequirePackage{verbatim} +\RequirePackage{fancyhea} +\RequirePackage{calc} +\RequirePackage{amsmath,amsfonts,amssymb} +\RequirePackage[all]{xy} +% \RequirePackage[T1]{fontenc} +\RequirePackage{type1cm}% remove size restrictions +%\RequirePackage{aeguill} +% some packages which draw a euro +\RequirePackage{textcomp} +% need some magic here to keep the original definition of rightarrow +\newcommand{\org@Rightarrow}{} +\let\org@Rightarrow\Rightarrow +\usepackage{marvosym} +\let\MVRightarrow\Rightarrow +\let\Rightarrow\org@Rightarrow +%%%% +\RequirePackage[gen]{eurosym} +\RequirePackage{eurosans} +\let\EUROSANS\euro +\RequirePackage{eurofont}% la place d'europs (conflit de nom) +\RequirePackage{url} +% Lets have some nice headings +% +\pagestyle{fancyplain} +\renewcommand{\chaptermark}[1]{\markboth{#1}{}} +\renewcommand{\sectionmark}[1]{\markright{\thesection{} #1}} +\lhead[\fancyplain{}{\bfseries\thepage}] + {\fancyplain{}{\bfseries\rightmark}} +\rhead[\fancyplain{}{\bfseries\leftmark}] + {\fancyplain{}{\bfseries\thepage}} +\cfoot[]{} +\addtolength{\headheight}{1.6pt} +% +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Adapted from TeX FAQ +\renewcommand{\Email}{\begingroup \def\UrlLeft{<}\def\UrlRight{>} \urlstyle{tt}\Url} % email address +\def\mailto|#1|{\href{mailto:#1}{\Email|#1|}} % url to mail somewhere +\newcommand{\CTANref}{\begingroup \urlstyle{tt}\Url} % +\def\CTAN|#1|{\href{ftp://ftp.dante.de/tex-archive/#1}{\CTANref|CTAN:/tex-archive/#1|}} +\newcommand\Newsgroup{\begingroup \urlstyle{tt}\Url} % newsgroup +\let\URL\url % just a URL + +\newcommand{\PSi}{\textsc{PostScript}\index{PostScript@\textsc{PostScript}}} +\newcommand{\EPSi}{Encapsulated \textsc{PostScript}% +\index{Encapsulated PostScript@Encapsulated \textsc{PostScript}}% +\index{PostScript@\textsc{PostScript}!Encapsulated}% +} + +% Earlier paragraphs were separated by some space +% +%\setlength{\parindent}{0pt} +%\setlength{\parskip}{1.5ex plus 0.7ex minus 0.6ex} + +\newcommand{\manual}{\emph{\LaTeX{} Manual}~\cite{manual}} +\newcommand{\companion}{\emph{The \LaTeX{} Companion}~\cite{companion}} +\newcommand{\guide}{\emph{Local Guide}~\cite{local}} +\newcommand{\contrib}[3]{#1\quad\mailto|#2|{\small\\\quad\textit{#3}}\\[1ex]} +% +% Some commands for helping with INDEX creation +% +\newcommand{\bs}{\symbol{'134}}%Print backslash +%\newcommand{\bs}{\ensuremath{\mathtt{\backslash}}}%Print backslash +% Index entry for a command (\cih for hidden command index +\newcommand{\eei}[1]{% +\index{extension!\texttt{#1}}\texttt{#1}} +% probably add handling of period like handling of \ in \ci +\newcommand{\fni}[1]{% +\index{font!#1@\texttt{\bs#1}}% +\index{#1@\texttt{\hspace*{-1.2ex}\bs #1}}\texttt{\bs #1}} +\newcommand{\cih}[1]{% +\index{commands!#1@\texttt{\bs#1}}% +\index{#1@\texttt{\hspace*{-1.2ex}\bs #1}}} +\newcommand{\ci}[1]{\cih{#1}\texttt{\bs #1}} +%Package +\newcommand{\paih}[1]{% +\index{packages!#1@\textsf{#1}}% +\index{#1@\textsf{#1}}} +\newcommand{\pai}[1]{% +\paih{#1}\textsf{#1}} +% Index entry for an environment +\newcommand{\ei}[1]{% +\index{environments!\texttt{#1}}% +\index{#1@\texttt{#1}}% +\texttt{#1}} +% Indexentry for a word (Word inserted into the text) +\newcommand{\wi}[1]{\index{#1}#1} +% +% Typesetting Commands +% +\newenvironment{lscommand}% + {\nopagebreak\par\small\addvspace{3.2ex plus 0.8ex minus 0.2ex}% + \vskip -\parskip + \noindent% + \begin{tabular}{|l|}\hline\rule{0pt}{1em}\ignorespaces}% + {\\\hline\end{tabular}\par\nopagebreak\addvspace{3.2ex plus 0.8ex + minus 0.2ex}% + \vskip -\parskip} +% +% Type setting Code Fragments +% +\newenvironment{code}{\begin{quote}}{\end{quote}} +% +% Intro Environment +\newenvironment{intro}{\sffamily}{\vspace*{2ex minus 1.5ex}} +% +\newcommand{\secby}[2]{\nopagebreak\par\addvspace{-1.5ex}% + \vskip -\parskip\noindent{\footnotesize By #1 \mailto|#2|}\par\nopagebreak% + \addvspace{1ex plus 0.8ex minus 0.2ex}% + \vskip -\parskip\noindent\ignorespaces} +% +% propper bookmark entries in pdftex + +\ifx\hypersetup\undefined\else +\pdfstringdefDisableCommands{\edef\ci{\textbackslash}}% +\pdfstringdefDisableCommands{\edef\sim{\textasciitilde}}% +\pdfstringdefDisableCommands{\edef\circ{\textdegree}}% +\pdfstringdefDisableCommands{\edef\ldots{... }}% +\fi + +%\noindent\addvspace{1ex}\small #1 $<$\texttt{#2}$>$\par\addvspace{2ex}\noindnet\ignorespaces} +% +% +% Symbol Entry for Math Symbol Tables +% +\newcommand{\X}[1]{$#1$&\texttt{\string#1}\hspace*{1ex}} +% normal text .... +\newcommand{\SC}[1]{#1&\texttt{\string#1}\hspace*{1ex}} +% for accents in text mode +\newcommand{\A}[1]{#1&\texttt{\string#1}\hspace*{1ex}} +\newcommand{\B}[2]{#1#2&\texttt{\string#1{} #2}\hspace*{1ex}} + +\newcommand{\W}[2]{$#1{#2}$& + \texttt{\string#1}\texttt{\string{\string#2\string}}\hspace*{1ex}} +\newcommand{\Y}[1]{$\big#1$ &\texttt{\string#1}} % +% Mathsymbol Table +\newsavebox{\symbbox} +\newenvironment{symbols}[1]% +{\par\vspace*{2ex} +\renewcommand{\arraystretch}{1.1} +\begin{lrbox}{\symbbox} +\hspace*{4ex}\begin{tabular}{@{}#1@{}}}% +{\end{tabular}\end{lrbox}\makebox[\textwidth]{\usebox{\symbbox}}\par\medskip} +% +% Special Prep for AMS Symbols Printout +% Should work if AMS is not available +% + +%% we have no PS versions of the rsfs fonts ... so this is a nogo for pdf +%\ifx\HyPsd@pageref\undefined +\RequirePackage{mathrsfs} +%\fi +\RequirePackage{latexsym} +\RequirePackage[mathcal]{euscript} +% +% Print |--| to show a distance +% +\newcommand{\demowidth}[1]{\rule{0.3pt}{1.3ex}\rule{#1}{0.3pt}\rule{0.3pt}{1.3ex}} +% +% +% --- example ---- +% This is an environment to set LaTeX examples. +% On the left side the source text and on the +% right side the typeset text. +% +% \begin{example} +% \Large This is Large +% \end{example} +% This Part is stolen from the verbaim.sty by FMi +% +\newwrite\example@out +\newcounter{exacnt} +\setcounter{exacnt}{1} +\newlength{\savefboxrule} +\newlength{\savefboxsep} +\newlength{\outdent} +\setlength{\outdent}{2cm} +\addtolength{\headwidth}{\outdent} +\newenvironment{example}% +{\begingroup% Lets Keep the Changes Local + \@bsphack + \immediate\openout \example@out \jobname.exa + \let\do\@makeother\dospecials\catcode`\^^M\active + \def\verbatim@processline{% + \immediate\write\example@out{\the\verbatim@line}}% + \verbatim@start}% +{\immediate\closeout\example@out\@esphack\endgroup% + % + % And here comes my part. :- + % + \stepcounter{exacnt}% + \setlength{\parindent}{0pt}% + \par\addvspace{3.0ex plus 0.8ex minus 0.5ex}\vskip -\parskip +% Page \lsspageref{exa:\theexacnt} +\expandafter\ifx\csname r@exa\theexacnt\endcsname\relax\else +%\ifx\pdfoutput\undefined % We're not running pdftex +% \ifodd\lsspageref{exa\theexacnt}\hspace*{0pt}\else\hspace*{-\outdent}\fi% +%\else +%% HyPsd@pageref internal hyperref command v6.69c + \ifodd\HyPsd@pageref{exa\theexacnt}\hspace*{0pt}\else\hspace*{-\outdent}\fi% +%\fi +\fi +\makebox[\textwidth][l]{% +%\raisebox{-\height}[0pt][\totalheight]{% + \begin{minipage}[c]{0.5\outdent+0.46\textwidth-3mm}% + \small\verbatiminput{\jobname.exa} + \end{minipage}% + %}% + \hspace{5mm}% + \setlength{\savefboxrule}{\fboxrule}% + \setlength{\fboxrule}{0.1pt}% + \setlength{\savefboxsep}{\fboxsep}% + \setlength{\fboxsep}{3mm}% + % \raisebox{-\height}[0pt][\totalheight]{% + \fbox{% + \begin{minipage}{0.5\outdent+0.54\textwidth-3.5mm-2\fboxrule-2\fboxsep}% + \setlength{\fboxrule}{\savefboxrule}% + \setlength{\fboxsep}{\savefboxsep}% + \setlength{\fboxrule}{0.5pt}% + \setlength{\parskip}{1ex plus 0.4ex minus 0.2ex}% + \begin{trivlist}\item\small\input{\jobname.exa} + \end{trivlist} + \end{minipage} + }% +% }% +}\label{exa\theexacnt}% +\par\addvspace{3ex plus 0.8ex minus 0.5ex}\vskip -\parskip +} + +\newenvironment{lined}[1]% + {\begin{center}\begin{minipage}{#1}\hrule\medskip} + {\vspace{-1ex}\hrule \end{minipage}\end{center}} +% I want no headers on pages created by clearpage + +\renewcommand{\cleardoublepage} + {\clearpage\if@twoside \ifodd\c@page\else + \hbox{}\thispagestyle{empty}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi} + +\let\iei=\relax +\let\fei=\relax +\def\Ams{AMS} diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-vi.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-vi.tex new file mode 100644 index 00000000000..678121ca207 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lshort-vi.tex @@ -0,0 +1,111 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Main Input File of the LaTeX2e Introduction +% $Id: lshort.tex,v 1.1.1.1 2002/02/26 10:04:21 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% lshort.tex - The not so short introduction to LaTeX +% by Tobias Oetiker +% tobias@ife.ee.ethz.ch +% oetiker@dmu.ac.uk +% +% based on LKURTZ.TEX Uni Graz & TU Wien, 1987 +%----------------------------------------------------------------------- +% +% To compile lshort, you need TeX 3.x, LaTeX and makeindex +% +% The sources files of the Intro are: +% lshort.tex (this file), +% titel.tex, contrib.tex, biblio.tex +% things.tes, typeset.tex, math.tex, lssym.tex, spec.tex, +% lshort.sty, fancyheadings.sty +% +% Further the verbatim.sty and the layout.sty +% from the LaTeX Tools distribution is +% required. +% +% +% To print the AMS symbols you need the AMS fonts and the packages +% amsfonts, eufrak and eucal from (AMS LaTeX 1.2) +% +% --------------------------------------------------------------------- + +\ifx\printversion\undefined +\documentclass[12pt,oneside,openany]{book} +\else +\documentclass[a4paper,twoside]{book} +\usepackage[monochrome]{color} +\fi + +\usepackage{lshort-vi} +\usepackage{makeidx,shortvrb,latexsym} +\usepackage{mylayout} + +% are we in pdftex ???? +%% \ifx\pdfoutput\undefined % We're not running pdftex +%% \else +%% \def\pdfBorderAttrs{/Border [0 0 0] } % No border around Links +%% \fi + + +\usepackage{amsmath,amssymb} +% \usepackage[pdftex,a4paper,twoside,headheight=20pt,top=2.5cm,bottom=2.5cm]{geometry} + +% them vao de ho tro tieng Viet +%\usepackage[viscii]{inputenc} +% \usepackage[vietnam]{babel} +% \usepackage{ucs} +% \usepackage[utf8]{vietnam} + +\makeindex +%\typeout{Copyright T.Oetiker, H.Partl, E.Schlegl, I.Hyna} + +\usepackage[colorlinks,draft=false,hyperindex,plainpages=false, +pdftitle={The not so Short Introduction to LaTeX, Vietnamese edition}, +pdfauthor={T. Oetiker, H. Partl, E. Schlegl, I. Hyna, Translator Nguyen + Tan Khoa}, +pdfsubject={LaTeX Manual}, +pdfkeywords={LaTeX, typesetting}]{hyperref} +\ifx\printversion\undefined +\RequirePackage{thumbpdf} +\hypersetup{pdfpagemode=UseThumbs} +\fi +\input{pd1supp.def} + +\begin{document} +\selectlanguage{vietnam} + +\frontmatter +\include{title} +\include{contrib} +\include{overview} + +\tableofcontents +\listoffigures +\listoftables + +\enlargethispage{\baselineskip} +\mainmatter + +\include{things} +\include{typeset} +\include{math} +\include{lssym} +\include{spec} +\include{graphic} +\include{custom} +\include{tiengviet} + +\backmatter +\include{biblio} +\refstepcounter{chapter} +\addcontentsline{toc}{chapter}{Chỉ mục} +\printindex +\refstepcounter{chapter} +\label{verylast} +\mbox{} +\end{document} +% +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lssym.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lssym.tex new file mode 100644 index 00000000000..9c52ff4b76e --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/lssym.tex @@ -0,0 +1,332 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: TeX and LaTeX and AMS symbols for Maths +% $Id: lssym.tex,v 1.1.1.1 2002/02/26 10:04:21 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Danh sách các kí hiệu toán học}\label{symbols} + +Các bảng sau đây trình bày tất cả các kí hiệu thông thường có thể sử dụng trong \emph{chế độ soạn thảo toán học}. + +Để sử dụng các kí hiệu được liệt kê ở bảng~\ref{AMSD}--\ref{AMSNBR}\footnote{các bảng sau được trích từ \texttt{symbols.tex} được soạn bởi David~Carlisle và sau đó được thay đổi nhiều theo sự gợi ý của Josef~Tkadlec.}, thì bạn cần phải đưa gói \pai{amssymb} vào tài liệu ở phần tựa đề của tài liệu và các font chữ AMS dành cho toán học phải được cài sẵn trên máy. Nếu gói AMS và các font chữ chưa được cài đặt thì bạn có thể tải về ở địa chỉ \texttt{CTAN:/tex-archive/macros/latex/required/amslatex}. Bạn cũng có thể tải về một danh sách chi tiết hơn về các kí hiệu tại địa chỉ \texttt{CTAN:info/symbols/comprehensive}. + +\begin{table}[!htb] +\caption{Các dấu trọng âm trong chế độ soạn thảo toán học.} +\label{mathacc} +\begin{symbols}{*4{cl}} +\W{\hat}{a} & \W{\check}{a} & \W{\tilde}{a} & \W{\acute}{a} \\ +\W{\grave}{a} & \W{\dot}{a} & \W{\ddot}{a} & \W{\breve}{a} \\ +\W{\bar}{a} &\W{\vec}{a} &\W{\widehat}{A}&\W{\widetilde}{A}\\ +\end{symbols} +\end{table} + +\begin{table}[!htb] +\caption{Các chữ cái Hy Lạp viết thường.} +\begin{symbols}{*4{cl}} + \X{\alpha} & \X{\theta} & \X{o} & \X{\upsilon} \\ + \X{\beta} & \X{\vartheta} & \X{\pi} & \X{\phi} \\ + \X{\gamma} & \X{\iota} & \X{\varpi} & \X{\varphi} \\ + \X{\delta} & \X{\kappa} & \X{\rho} & \X{\chi} \\ + \X{\epsilon} & \X{\lambda} & \X{\varrho} & \X{\psi} \\ + \X{\varepsilon}& \X{\mu} & \X{\sigma} & \X{\omega} \\ + \X{\zeta} & \X{\nu} & \X{\varsigma} & & \\ + \X{\eta} & \X{\xi} & \X{\tau} +\end{symbols} +\end{table} + +\begin{table}[!tb] +\caption{Các chữ cái Hy Lạp viết hoa.} +\begin{symbols}{*4{cl}} + \X{\Gamma} & \X{\Lambda} & \X{\Sigma} & \X{\Psi} \\ + \X{\Delta} & \X{\Xi} & \X{\Upsilon} & \X{\Omega} \\ + \X{\Theta} & \X{\Pi} & \X{\Phi} +\end{symbols} +\end{table} +\clearpage + +\begin{table}[!htb] +\caption{Quan hệ hai ngôi.} +\bigskip +Bạn có thể có được các kí hiệu ngược lại tương ứng với các kí hiệu +ở đây bằng cách thêm vào tiền tố \ci{not} trước lệnh tương ứng. +\begin{symbols}{*3{cl}} + \X{<} & \X{>} & \X{=} \\ + \X{\leq}or \verb|\le| & \X{\geq}or \verb|\ge| & \X{\equiv} \\ + \X{\ll} & \X{\gg} & \X{\doteq} \\ + \X{\prec} & \X{\succ} & \X{\sim} \\ + \X{\preceq} & \X{\succeq} & \X{\simeq} \\ + \X{\subset} & \X{\supset} & \X{\approx} \\ + \X{\subseteq} & \X{\supseteq} & \X{\cong} \\ + \X{\sqsubset}$^a$ & \X{\sqsupset}$^a$ & \X{\Join}$^a$ \\ + \X{\sqsubseteq} & \X{\sqsupseteq} & \X{\bowtie} \\ + \X{\in} & \X{\ni}, \verb|\owns| & \X{\propto} \\ + \X{\vdash} & \X{\dashv} & \X{\models} \\ + \X{\mid} & \X{\parallel} & \X{\perp} \\ + \X{\smile} & \X{\frown} & \X{\asymp} \\ + \X{:} & \X{\notin} & \X{\neq}or \verb|\ne| +\end{symbols} +\centerline{\footnotesize $^a$Sử dụng gói \textsf{latexsym} để sử +dụng các kí hiệu này} +\end{table} + +\begin{table}[!htb] +\caption{Các toán tử hai ngôi.} +\begin{symbols}{*3{cl}} + \X{+} & \X{-} & & \\ + \X{\pm} & \X{\mp} & \X{\triangleleft} \\ + \X{\cdot} & \X{\div} & \X{\triangleright}\\ + \X{\times} & \X{\setminus} & \X{\star} \\ + \X{\cup} & \X{\cap} & \X{\ast} \\ + \X{\sqcup} & \X{\sqcap} & \X{\circ} \\ + \X{\vee}, \verb|\lor| & \X{\wedge}, \verb|\land| & \X{\bullet} \\ + \X{\oplus} & \X{\ominus} & \X{\diamond} \\ + \X{\odot} & \X{\oslash} & \X{\uplus} \\ + \X{\otimes} & \X{\bigcirc} & \X{\amalg} \\ + \X{\bigtriangleup} &\X{\bigtriangledown}& \X{\dagger} \\ + \X{\lhd}$^a$ & \X{\rhd}$^a$ & \X{\ddagger} \\ + \X{\unlhd}$^a$ & \X{\unrhd}$^a$ & \X{\wr} +\end{symbols} + +\end{table} + +\begin{table}[!tbp] +\caption{Các toán tử lớn.} +\begin{symbols}{*4{cl}} + \X{\sum} & \X{\bigcup} & \X{\bigvee} & \X{\bigoplus}\\ + \X{\prod} & \X{\bigcap} & \X{\bigwedge} &\X{\bigotimes}\\ + \X{\coprod} & \X{\bigsqcup} & & & \X{\bigodot} \\ + \X{\int} & \X{\oint} & & & \X{\biguplus} +\end{symbols} + +\end{table} + + +\begin{table}[!tbp] +\caption{Các dấu mũi tên.} +\begin{symbols}{*3{cl}} + \X{\leftarrow}or \verb|\gets|& \X{\longleftarrow} & \X{\uparrow} \\ + \X{\rightarrow}or \verb|\to|& \X{\longrightarrow} & \X{\downarrow} \\ + \X{\leftrightarrow} & \X{\longleftrightarrow}& \X{\updownarrow} \\ + \X{\Leftarrow} & \X{\Longleftarrow} & \X{\Uparrow} \\ + \X{\Rightarrow} & \X{\Longrightarrow} & \X{\Downarrow} \\ + \X{\Leftrightarrow} & \X{\Longleftrightarrow}& \X{\Updownarrow} \\ + \X{\mapsto} & \X{\longmapsto} & \X{\nearrow} \\ + \X{\hookleftarrow} & \X{\hookrightarrow} & \X{\searrow} \\ + \X{\leftharpoonup} & \X{\rightharpoonup} & \X{\swarrow} \\ + \X{\leftharpoondown} & \X{\rightharpoondown} & \X{\nwarrow} \\ + \X{\rightleftharpoons} & \X{\iff}(bigger spaces)& \X{\leadsto}$^a$ + +\end{symbols} +\centerline{\footnotesize $^a$Sử dụng gói \textsf{latexsym} để sử +dụng các kí hiệu này} +\end{table} + +\begin{table}[!tbp] +\caption{Các dấu ngoặc.}\label{tab:delimiters} +\begin{symbols}{*4{cl}} + \X{(} & \X{)} & \X{\uparrow} & \X{\Uparrow} \\ + \X{[}or \verb|\lbrack| & \X{]}or \verb|\rbrack| & \X{\downarrow} & \X{\Downarrow} \\ + \X{\{}or \verb|\lbrace| & \X{\}}or \verb|\rbrace| & \X{\updownarrow} & \X{\Updownarrow}\\ + \X{\langle} & \X{\rangle} & \X{|}or \verb|\vert| &\X{\|}or \verb|\Vert|\\ + \X{\lfloor} & \X{\rfloor} & \X{\lceil} & \X{\rceil} \\ + \X{/} & \X{\backslash} & &. (cả hai đều trống) +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Các dấu ngoặc lớn.} +\begin{symbols}{*4{cl}} + \Y{\lgroup} & \Y{\rgroup} & \Y{\lmoustache} & \Y{\rmoustache} \\ + \Y{\arrowvert} & \Y{\Arrowvert} & \Y{\bracevert} +\end{symbols} +\end{table} + + +\begin{table}[!tbp] +\caption{Các kí hiệu khác.} +\begin{symbols}{*4{cl}} + \X{\dots} & \X{\cdots} & \X{\vdots} & \X{\ddots} \\ + \X{\hbar} & \X{\imath} & \X{\jmath} & \X{\ell} \\ + \X{\Re} & \X{\Im} & \X{\aleph} & \X{\wp} \\ + \X{\forall} & \X{\exists} & \X{\mho}$^a$ & \X{\partial} \\ + \X{'} & \X{\prime} & \X{\emptyset} & \X{\infty} \\ + \X{\nabla} & \X{\triangle} & \X{\Box}$^a$ & \X{\Diamond}$^a$ \\ + \X{\bot} & \X{\top} & \X{\angle} & \X{\surd} \\ +\X{\diamondsuit} & \X{\heartsuit} & \X{\clubsuit} & \X{\spadesuit} \\ + \X{\neg}or \verb|\lnot| & \X{\flat} & \X{\natural} & \X{\sharp} + +\end{symbols} +\centerline{\footnotesize $^a$Sử dụng gói \textsf{latexsym} để sử +dụng các kí hiệu này.} +\end{table} + +\begin{table}[!tbp] +\caption{Các kí hiệu thông thường.} +\bigskip +These symbols can also be used in text mode. +\begin{symbols}{*4{cl}} + \SC{\dag} & \SC{\S} & \SC{\copyright} & \SC{\textregistered} \\ + \SC{\ddag} & \SC{\P} & \SC{\pounds} & \SC{\%} \\ +\end{symbols} +\end{table} + +% +% +% If the AMS Stuff is not available, we drop out right here :-) +% + +\begin{table}[!tbp] +\caption{Các dấu ngoặc theo AMS.}\label{AMSD} +\bigskip +\begin{symbols}{*4{cl}} +\X{\ulcorner}&\X{\urcorner}&\X{\llcorner}&\X{\lrcorner}\\ +\X{\lvert}&\X{\rvert}&\X{\lVert}&\X{\rVert} +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Chữ cái Hy Lạp và Do Thái theo AMS.} +\begin{symbols}{*5{cl}} +\X{\digamma} &\X{\varkappa} & \X{\beth}& \X{\daleth} &\X{\gimel} +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Quan hệ hai ngôi theo AMS.} +\begin{symbols}{*3{cl}} + \X{\lessdot} & \X{\gtrdot} & \X{\doteqdot}or \verb|\Doteq| \\ + \X{\leqslant} & \X{\geqslant} & \X{\risingdotseq} \\ + \X{\eqslantless} & \X{\eqslantgtr} & \X{\fallingdotseq} \\ + \X{\leqq} & \X{\geqq} & \X{\eqcirc} \\ + \X{\lll}or \verb|\llless| & \X{\ggg}or \verb|\gggtr| & \X{\circeq} \\ + \X{\lesssim} & \X{\gtrsim} & \X{\triangleq} \\ + \X{\lessapprox} & \X{\gtrapprox} & \X{\bumpeq} \\ + \X{\lessgtr} & \X{\gtrless} & \X{\Bumpeq} \\ + \X{\lesseqgtr} & \X{\gtreqless} & \X{\thicksim} \\ + \X{\lesseqqgtr} & \X{\gtreqqless} & \X{\thickapprox} \\ + \X{\preccurlyeq} & \X{\succcurlyeq} & \X{\approxeq} \\ + \X{\curlyeqprec} & \X{\curlyeqsucc} & \X{\backsim} \\ + \X{\precsim} & \X{\succsim} & \X{\backsimeq} \\ + \X{\precapprox} & \X{\succapprox} & \X{\vDash} \\ + \X{\subseteqq} & \X{\supseteqq} & \X{\Vdash} \\ + \X{\Subset} & \X{\Supset} & \X{\Vvdash} \\ + \X{\sqsubset} & \X{\sqsupset} & \X{\backepsilon} \\ + \X{\therefore} & \X{\because} & \X{\varpropto} \\ + \X{\shortmid} & \X{\shortparallel} & \X{\between} \\ + \X{\smallsmile} & \X{\smallfrown} & \X{\pitchfork} \\ + \X{\vartriangleleft} & \X{\vartriangleright} & \X{\blacktriangleleft}\\ + \X{\trianglelefteq} & \X{\trianglerighteq} &\X{\blacktriangleright} +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Các dấu mũi tên theo AMS.} +\begin{symbols}{*3{cl}} + \X{\dashleftarrow} & \X{\dashrightarrow} & \X{\multimap} \\ + \X{\leftleftarrows} & \X{\rightrightarrows} & \X{\upuparrows} \\ + \X{\leftrightarrows} & \X{\rightleftarrows} & \X{\downdownarrows} \\ + \X{\Lleftarrow} & \X{\Rrightarrow} & \X{\upharpoonleft} \\ + \X{\twoheadleftarrow} & \X{\twoheadrightarrow} & \X{\upharpoonright} \\ + \X{\leftarrowtail} & \X{\rightarrowtail} & \X{\downharpoonleft} \\ + \X{\leftrightharpoons} & \X{\rightleftharpoons} & \X{\downharpoonright} \\ + \X{\Lsh} & \X{\Rsh} & \X{\rightsquigarrow} \\ + \X{\looparrowleft} & \X{\looparrowright} &\X{\leftrightsquigarrow}\\ + \X{\curvearrowleft} & \X{\curvearrowright} & & \\ + \X{\circlearrowleft} & \X{\circlearrowright} & & +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Quan hệ phủ định hai ngôi và các dấu mũi tên theo +AMS.}\label{AMSNBR} +\begin{symbols}{*3{cl}} + \X{\nless} & \X{\ngtr} & \X{\varsubsetneqq} \\ + \X{\lneq} & \X{\gneq} & \X{\varsupsetneqq} \\ + \X{\nleq} & \X{\ngeq} & \X{\nsubseteqq} \\ + \X{\nleqslant} & \X{\ngeqslant} & \X{\nsupseteqq} \\ + \X{\lneqq} & \X{\gneqq} & \X{\nmid} \\ + \X{\lvertneqq} & \X{\gvertneqq} & \X{\nparallel} \\ + \X{\nleqq} & \X{\ngeqq} & \X{\nshortmid} \\ + \X{\lnsim} & \X{\gnsim} & \X{\nshortparallel} \\ + \X{\lnapprox} & \X{\gnapprox} & \X{\nsim} \\ + \X{\nprec} & \X{\nsucc} & \X{\ncong} \\ + \X{\npreceq} & \X{\nsucceq} & \X{\nvdash} \\ + \X{\precneqq} & \X{\succneqq} & \X{\nvDash} \\ + \X{\precnsim} & \X{\succnsim} & \X{\nVdash} \\ + \X{\precnapprox} & \X{\succnapprox} & \X{\nVDash} \\ + \X{\subsetneq} & \X{\supsetneq} & \X{\ntriangleleft} \\ + \X{\varsubsetneq} & \X{\varsupsetneq} & \X{\ntriangleright} \\ + \X{\nsubseteq} & \X{\nsupseteq} & \X{\ntrianglelefteq}\\ + \X{\subsetneqq} & \X{\supsetneqq} &\X{\ntrianglerighteq}\\[0.5ex] + \X{\nleftarrow} & \X{\nrightarrow} & \X{\nleftrightarrow}\\ + \X{\nLeftarrow} & \X{\nRightarrow} & \X{\nLeftrightarrow} + +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Các toán tử nhị phận theo AMS.} +\begin{symbols}{*3{cl}} + \X{\dotplus} & \X{\centerdot} & \X{\intercal} \\ + \X{\ltimes} & \X{\rtimes} & \X{\divideontimes} \\ + \X{\Cup}or \verb|\doublecup|& \X{\Cap}or \verb|\doublecap|& \X{\smallsetminus} \\ + \X{\veebar} & \X{\barwedge} & \X{\doublebarwedge}\\ + \X{\boxplus} & \X{\boxminus} & \X{\circleddash} \\ + \X{\boxtimes} & \X{\boxdot} & \X{\circledcirc} \\ + \X{\leftthreetimes} & \X{\rightthreetimes}& \X{\circledast} \\ + \X{\curlyvee} & \X{\curlywedge} & +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Các kí hiệu khác theo AMS.} +\begin{symbols}{*3{cl}} + \X{\hbar} & \X{\hslash} & \X{\Bbbk} \\ + \X{\square} & \X{\blacksquare} & \X{\circledS} \\ + \X{\vartriangle} & \X{\blacktriangle} & \X{\complement} \\ + \X{\triangledown} &\X{\blacktriangledown} & \X{\Game} \\ + \X{\lozenge} & \X{\blacklozenge} & \X{\bigstar} \\ + \X{\angle} & \X{\measuredangle} & \X{\sphericalangle} \\ + \X{\diagup} & \X{\diagdown} & \X{\backprime} \\ + \X{\nexists} & \X{\Finv} & \X{\varnothing} \\ + \X{\eth} & \X{\mho} & +\end{symbols} +\end{table} + + + +\begin{table}[!tbp] +\caption{Các kiểu chữ cái trong toán.} +\begin{symbols}{@{}*3l@{}} +Ví dụ& Lệnh &Gói lệnh cần dùng\\ +\hline +\rule{0pt}{1.05em}$\mathrm{ABCdef}$ + & \verb|\mathrm{ABCdef}| + & \\ +$\mathit{ABCdef}$ + & \verb|\mathit{ABCdef}| + & \\ +$\mathnormal{ABCdef}$ + & \verb|\mathnormal{ABCdef}| + & \\ +$\mathcal{ABC}$ + & \verb|\mathcal{ABC}| + & \pai{euscript} với tuỳ chọn \texttt{mathcal} \\ +$\mathscr{ABC}$ + &\verb|\mathscr{ABC}| + &\pai{mathrsfs}\\ +$\mathfrak{ABCdef}$ + & \verb|\mathfrak{ABCdef}| + &\pai{eufrak} \\ +$\mathbb{ABC}$ + & \verb|\mathbb{ABC}| + &\pai{amsfonts} hay \textsf{amssymb} \\ +\end{symbols} +\end{table} + +\endinput + +% +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End:
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/math.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/math.tex new file mode 100644 index 00000000000..c6885e1884c --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/math.tex @@ -0,0 +1,552 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Math typesetting with LaTeX +% $Id: math.tex,v 1.2 2003/03/19 20:57:46 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Soạn thảo các công thức toán học} +\begin{intro} +Bây giờ bạn đã sẵn sàng! Trong chương này bạn sẽ bị ``hút hồn'' với tính năng ``siêu việt'' của \TeX{}: soạn thảo tài liệu Toán học. Tuy nhiên, chương này chỉ cung cấp cho bạn những kiến thức cơ bản nhất. Đối với một số người dùng thì những kiến thức ở đây sẽ không đủ để soạn thảo các công thức toán phức tạp nhưng đừng nản chí bởi vì bạn có thể tham khảo thêm trong \AmS-\LaTeX{}% + \footnote{The \emph{American Mathematical Society} đã đưa ra những gói mở rộng rất mạnh cho \LaTeX{}. Rất nhiều ví dụ trong phần này sử dụng đến các phần mở rộng đó. Tất cả các phần mở rộng này đều được cung cấp kèm với các phiên bản \TeX{}. Ngoài ra bạn có thể tải về ở địa chỉ \texttt{CTAN:/tex-archive/macros/latex/required/amslatex}.}. +\end{intro} + +\section{Tổng quan} +\LaTeX{} định nghĩa một chế độ đặc biệt để soạn thảo các \wi{công thức toán học}. Các công thức toán này có thể được đưa vào ngay trong môi trường văn bản hay ta có thể tách rời chúng khỏi các đoạn văn. Phần nội dung \emph{toán học} \emph{trong} đoạn văn có thể được soạn thảo ở giữa dấu \ci{(} và \ci{)} hay \texttt{\$} và \texttt{\$}, hay \verb|\begin{|\ei{math}\verb|}| và \verb|\end{math}|.\index{formulae} +\begin{example} +Cộng $a$ bình phương +với $b$ bình phương +được $c$ bình phương. Ta +có thể viết dưới dạng +công thức là: $c^{2} = a^{2}+b^{2}$ +\end{example} + +\begin{example} +\TeX{} được phát âm là +\(\tau\epsilon\chi\).\\[6pt] +100~m$^{3}$ nước.\\[6pt] +Tình yêu xuất phát từ +\begin{math} +\heartsuit +\end{math}. +\end{example} + +Nếu muốn biên soạn các công thức, phương trình lớn tách rời khỏi đoạn văn bản, bạn có thể biên soạn chúng trong cặp ngoặc \ci{[} và \ci{]} hay giữa \verb|\begin{|\ei{displaymath}\verb|}| và \verb|\end{displaymath}| mà không phải ngắt đoạn văn đang soạn thảo ra làm nhiều phần. + +\begin{example} +Cộng $a$ bình phương với +$b$ bình phương được $c$ +bình phương. Ta +có thể viết lại dưới dạng +công thức là: +\begin{displaymath} +c^{2}=a^{2}+b^{2} +\end{displaymath} +Hay ta có thể viết: \[c=a+b\] +\end{example} +Môi trường \ei{equation} sẽ giúp bạn đánh số các phương trình. Bên cạnh đó bạn có thể đánh dấu phương trình với lệnh \ci{label} và tham chiếu đến nó bằng lệnh \ci{ref} hay \ci{eqref} trong gói \pai{amslatex}. + +\begin{example} +\begin{equation} \label{eq:eps} +\epsilon > 0 +\end{equation} +Từ bất phương trình (\ref{eq:eps}), +chúng ta có thể suy ra rằng +\ldots Đồng thời từ +\eqref{eq:eps} +chúng ta suy ra \ldots +\end{example} + +Bạn cần chú ý đến sự khác nhau về kết quả biên soạn của công thức trong chế độ soạn thảo toán học và trong chế độ hiển thị toán học (\ei{displaymath}) . + +\begin{example} +$\lim_{n \to \infty} +\sum_{k=1}^n \frac{1}{k^2} += \frac{\pi^2}{6}$ +\end{example} +\begin{example} +\begin{displaymath} +\lim_{n \to \infty} +\sum_{k=1}^n \frac{1}{k^2} += \frac{\pi^2}{6} +\end{displaymath} +\end{example} +Bạn sẽ thấy rằng có nhiều sự khác biệt giữa \emph{chế độ soạn thảo toán học} và \emph{chế độ soạn thảo văn bản}. Dưới đây là một số thuộc tính cơ bản của \emph{môi trường toán học}: + +\begin{enumerate} +\item Các khoảng trắng và ký tự xuống hàng không có ý nghĩa quan trọng: hầu hết các khoảng trắng đều bắt nguồn từ logic của biểu thức toán học hay được xác định thông qua các lệnh như: \ci{,} , \ci{quad} +hay \ci{qquad}. + +\item Không được phép có các hàng trắng. Mỗi công thức sẽ nằm trên một đoạn văn. + +\item Mỗi kí tự đều được xem là tên của biến. Nếu bạn muốn soạn thảo văn bản thông thường bên trong một công thức, bạn phải sử dụng lệnh \verb|\textrm{...}| (xem thêm phần \ref{sec:fontsz} ở trang \pageref{sec:fontsz}). +\end{enumerate} + +\begin{example} +\begin{equation} +\forall x \in \mathbf{R}: +\qquad x^{2} \geq 0 +\end{equation} +\end{example} +\begin{example} +\begin{equation} +x^{2} \geq 0\qquad +\textrm{với mọi }x\in\mathbf{R} +\end{equation} +\end{example} + +Các nhà toán học thường đòi hỏi nghiêm ngặt về việc dùng đúng các kí hiệu. Do đó, việc sử dụng quy ước về việc `\wi{in +đậm}',\index{in đậm} thông qua việc sử dụng \ci{mathbb} từ gói \pai{amsfonts} hay \pai{amssymb} là rất hữu ích. + +\begin{example} +\begin{displaymath} +x^{2} \geq 0\qquad \textrm{với mọi } +x\in\mathbb{R} +\end{displaymath} +\end{example} +% \fi + +\section{Gộp nhóm các công thức} +Hầu hết các lệnh trong chế độ soạn thảo công thức toán học chỉ có tác dụng đối với kí tự kế tiếp do đó trong trường hợp bạn muốn nó có tác dụng đối với nhiều kí tự, bạn có thể nhóm chúng trong dấu ngoặc: \verb|{...}|. + +\begin{example} +\begin{equation} +a^x+y \neq a^{x+y} +\end{equation} +\end{example} + +\section{Xây dựng khối các công thức toán học} +Mục này sẽ giới thiệu các công thức quan trọng được sử dụng để soạn thảo các công thức toán. Hãy tham khảo thêm mục~\ref{symbols} ở trang~\pageref{symbols} để biết thêm chi tiết về danh mục các lệnh hỗ trợ soạn thảo công thức toán học. + +\textbf{\wi{Các chữ cái Hy lạp}} viết thường được nhập vào như sau: +\verb|\alpha|, \verb|\beta|, \verb|\gamma|, \ldots, còn các chữ cái viết hoa thì được nhập như sau: \verb|\Gamma|, \verb|\Delta|, \ldots \footnote{Không có kí hiệu Alpha viết hoa trong \LaTeXe{} bởi vì nó trông giống như chữ A ở dạng font roman. Khi việc định nghĩa các kí kiệu mới hoàn tất thì mọi việc sẽ thay đổi.} + +\begin{example} +$\lambda,\xi,\pi,\mu,\Phi,\Omega$ +\end{example} +\textbf{Số mũ} và \textbf{chỉ số} được nhập vào bằng cách sử dụng các kí tự: \verb|^|\index{^@\verb"|^"|} và \verb|_|\index{_@\verb"|_"|}. +\begin{example} +$a_{1}$ \qquad $x^{2}$ \qquad +$e^{-\alpha t}$ \qquad +$a^{3}_{ij}$\\ +$e^{x^2} \neq {e^x}^2$ +\end{example} + +Dấu \textbf{\wi{căn bậc hai}} được nhập vào thông qua lệnh \ci{sqrt}. Đối với dấu căn bậc $n$ thì ta có thể nhập +vào như sau: \verb|\sqrt[|$n$\verb|]|. Kích thước của dấu căn sẽ được xác định bởi \LaTeX{}. Trong trường hợp bạn chỉ muốn hiển thị kí hiệu khai căn (không có đường kẻ trên đầu), bạn có thể sử dụng lệnh: \verb|\surd|. +\begin{example} +$\sqrt{x}$ \qquad +$\sqrt{ x^{2}+\sqrt{y} }$ +\qquad $\sqrt[3]{2}$\\[3pt] +$\surd[x^2 + y^2]$ +\end{example} +Lệnh \ci{overline} và \ci{underline} sẽ trực tiếp tạo ra các \textbf{hàng ngang} phía trên hay phía dưới công thức.\index{nằm ngang!ngoặc} +\begin{example} +$\overline{a+b}$ +\end{example} +Lệnh \ci{overbrace} và \ci{underbrace} sẽ tạo ra những \textbf{dấu ngoặc} dài nằm dưới hay nằm trên biểu thức toán học.\index{nằm ngang!ngoặc} +\begin{example} +$\underbrace{ a+b+\cdots+z }_{26}$ +\end{example} + +\index{toán học!dấu mũ} Để thêm các dấu mũ vào trong công thức toán như dấu mũi tên nhỏ hay \wi{dấu ngã}, bạn cần sử dụng các lệnh trong bảng~\ref{mathacc} ở trang \pageref{mathacc}. Để thực hiện việc đưa vào các dấu mũ trên nhiều kí tự, bạn có thể sử dụng lệnh sau: \ci{widetilde} và \ci{widehat}. Dấu \verb|'|\index{'@\verb"|'"|} sẽ xuất ra dấu phẩy phía trên. +% a dash is -- +\begin{example} +\begin{displaymath} +y=x^{2}\qquad y'=2x\qquad y''=2 +\end{displaymath} +\end{example} + +Các \textbf{vectors}\index{vectors} có thể được soạn thảo bằng cách đặt thêm một \wi{dấu mũi tên} nhỏ ở phía trên của biến. Lệnh \ci{vec} sẽ đảm nhiệm việc này. Ngoài ra, lệnh \ci{overrightarrow} và \ci{overleftarrow} sẽ hỗ trợ bạn soạn thảo các vector từ một điểm $A$ đến điểm $B$. +\begin{example} +\begin{displaymath} +\vec a\quad\overrightarrow{AB} +\end{displaymath} +\end{example} +Thông thường thì bạn sẽ không soạn thảo một cách trực tiếp dấu chấm thay cho dấu nhân. Tuy nhiên, đôi khi ta cũng nên viết vào để tránh làm rối mắt người đọc. Khi này, bạn nên sử dụng lệnh \ci{cdot}. + +\begin{example} +\begin{displaymath} +v = {\sigma}_1 \cdot {\sigma}_2 + {\tau}_1 \cdot {\tau}_2 +\end{displaymath} +\end{example} +Tên của các hàm như hàm log thường được soạn thảo ở dạng font thẳng đứng chứ không phải dạng in nghiêng như định dạng của các biến. \LaTeX{} cung cấp một số lệnh để soạn thảo các hàm phổ biến như:\index{toán học!hàm} + +\begin{tabular}{lllllll} +\ci{arccos} & \ci{cos} & \ci{csc} & \ci{exp} & \ci{ker} & \ci{limsup} & \ci{min} \\ +\ci{arcsin} & \ci{cosh} & \ci{deg} & \ci{gcd} & \ci{lg} & \ci{ln} & \ci{Pr} \\ +\ci{arctan} & \ci{cot} & \ci{det} & \ci{hom} & \ci{lim} & \ci{log} & \ci{sec} \\ +\ci{arg} & \ci{coth} & \ci{dim} & \ci{inf} & \ci{liminf} & \ci{max} & \ci{sin} \\ +\ci{sinh} & \ci{sup} & \ci{tan} & \ci{tanh}\\ +\end{tabular} + +\begin{example} +\[\lim_{x \rightarrow 0} +\frac{\sin x}{x}=1\] +\end{example} +Để soạn thảo \wi{hàm đồng dư}, ta có thể sử dụng hai lệnh \ci{bmod} để soạn thảo toán tử nhị phân ``$a \bmod b$'' và +\ci{pmod} đối với các biểu thức như ``$x\equiv a \pmod{b}$''. + +\begin{example} +$a\bmod b$\\ +$x\equiv a \pmod{b}$ +\end{example} +Để soạn thảo \textbf{\wi{phân số}}, ta sử dụng lệnh sau: \ci{frac}\verb|{...}{...}|. + +Thông thường thì người ta thích nhập vào dạng $1/2$ bởi vì nó sẽ trông đẹp hơn đối với tài liệu chỉ có một vài phân số. +\begin{example} +$1\frac{1}{2}$~tiếng +\begin{displaymath} +\frac{ x^{2} }{ k+1 }\qquad +x^{ \frac{2}{k+1} }\qquad +x^{ 1/2 } +\end{displaymath} +\end{example} + +Để soạn thảo các hệ số của nhị thức hay các cấu trúc tương tự, bạn có thể sử dụng lệnh \ci{binom} trong gói \pai{amsmath}. + +\begin{example} +\begin{displaymath} +\binom{n}{k}\qquad\mathrm{C}_n^k +\end{displaymath} +\end{example} + +Đối với các quan hệ nhị phân thì việc sử dụng các kí hiệu chồng lên nhau tỏ ra rất hiệu quả. Lệnh \ci{stackrel} đặt tham số thứ nhất lên trên tham số thứ hai. +\begin{example} +\begin{displaymath} +\int f_N(x) \stackrel{!}{=} 1 +\end{displaymath} +\end{example} + +Bạn có thể dùng lệnh \ci{int} soạn thảo \textbf{toán tử tích phân}, lệnh \ci{sum} để soạn thảo \textbf{\wi{toán tử tính tổng}} và lệnh \ci{prod} để soạn thảo \textbf{\wi{toán tử tính tích}}. Cận trên và cận dưới sẽ được soạn thông qua lệnh~\verb|^| và~\verb|_| tương tự như việc soạn chỉ số trên/dưới.\index{superscript}\footnote{\Ams-\LaTeX{} mở rộng việc soạn chỉ số trên nhiều hàng.} +\begin{example} +\begin{displaymath} +\sum_{i=1}^{n} \qquad +\int_{0}^{\frac{\pi}{2}} \qquad +\prod_\epsilon +\end{displaymath} +\end{example} + +%\begin{center} +%\begin{tabular}[!htb]{|c|c|} +%\hline +%Kí hiệu & Lệnh \\ +%\hline +%\wi{Tích phân} & \ci{int} \\ +%\wi{Tổng} & \ci{sum} \\ +%\wi{Tích} & \ci{prod}\\ +%\hline +%\end{tabular} +%\end{center} + +\begin{example} +\begin{displaymath} +\sum_{i=1}^{n} \qquad +\int_{0}^{\frac{\pi}{2}} \qquad +\prod_\epsilon +\end{displaymath} +\end{example} + +Gói \pai{amsmath} cũng cung cấp hai công cụ để tăng khả năng điều khiển việc nhập các biểu thức có hệ thống chỉ số phức tạp là \ci{substack} và môi trường \ei{subarray}. +\begin{example} +\begin{displaymath} +\sum_{\substack{0<i<n \\ 1<j<m}} + P(i,j) = +\sum_{\begin{subarray}{l} i\in I\\ + 1<j<m + \end{subarray}} Q(i,j) +\end{displaymath} +\end{example} + +\medskip + +Ngoài ra, \TeX{} còn cung cấp các dạng kí hiệu khác cho \textbf{\wi{dấu ngoặc}} và các \wi{kí hiệu giới hạn} khác như +là: $[\;\langle\;\|\;\updownarrow$). Dấu ngoặc tròn hay ngoặc vuông có thể được nhập vào với các phím thích hợp. Đối với dấu ngoặc móc (\{), ta sử dụng lệnh \verb|\{|. Còn các kí hiệu giới hạn khác đều phải sử dụng lệnh (như là ~\verb|\updownarrow|). Hãy tham khảo thêm bảng~\ref{tab:delimiters} ở trang \pageref{tab:delimiters} để biết thêm về danh sách các kí hiệu giới hạn có sẵn. +\begin{example} +\begin{displaymath} +{a,b,c}\neq\{a,b,c\} +\end{displaymath} +\end{example} + +Lệnh \ci{left} và \ci{right} sẽ tự động xác định kích thước của dấu ngoặc sao cho phù hợp với kích thước của biểu thức. Lưu ý rằng các lệnh \ci{left} và \ci{right} phải đi thành từng cặp (có nghĩa là sau khi mở ngoặc thì bạn phải đóng ngoặc cho phù hợp). Trong tình huống bạn không muốn dấu đóng ngoặc phía bên phải thì bạn có thể dùng lệnh \ci{right.} để đóng ngoặc nhưng không hiển thị kí hiệu đóng ngoặc. +\begin{example} +\begin{displaymath} +1 + \left( \frac{1}{ 1-x^{2} } + \right) ^3 +\end{displaymath} +\end{example} + +Tuy nhiên, trong một số tình huống soạn thảo, bạn sẽ cần phải tự xác định kích thước của các dấu ngoặc\index{toán học!dấu ngoặc}. Điều này được thực hiện bởi các lệnh \ci{big}, \ci{Big}, \ci{bigg} và \ci{Bigg} như là một tiền tố của các lệnh soạn thảo dấu ngoặc.\footnote{Các lệnh này có thể hoạt động không như dự đinh khi mà các lệnh thay đổi kích thước khác như \texttt{11pt} hay \texttt{12pt} đã được gọi. Trong tình huống này, bạn có thể sử dụng gói lệnh \pai{exscale} hay \pai{amsmath} để khắc phục.} + +\begin{example} +$\Big( (x+1) (x-1) \Big) ^{2}$\\ +$\big(\Big(\bigg(\Bigg($\quad +$\big\}\Big\}\bigg\}\Bigg\}$\quad +$\big\|\Big\|\bigg\|\Bigg\|$ +\end{example} + +Để thêm \textbf{\wi{dấu ba chấm}} vào một công thức, bạn có thể sử dụng nhiều lệnh khác nhau. Trong đó, lệnh \ci{ldots} sẽ xuất ra các dấu chấm nằm sát phía dưới của hàng; lệnh \ci{cdots} sẽ xuất chúng ra ở giữa hàng; lệnh \ci{vdots} sẽ xuất chúng theo chiều dọc và lệnh \ci{ddots} sẽ xuất chúng theo hướng đường chéo.\index{ba chấm chéo}\index{hàng ngang!ba chấm}. Hãy tham khảo thêm các ví dụ trong mục~\ref{sec:vert} để biết thêm chi tiết. +\begin{example} +\begin{displaymath} +x_{1},\ldots,x_{n} \qquad +x_{1}+\cdots+x_{n} +\end{displaymath} +\end{example} + +\section{Các khoảng trắng trong công thức toán} + +\index{toán học!khoảng trắng} Nếu việc tự động sắp xếp các khoảng trắng trong công thức của \TeX{} không đáp ứng đúng yêu cầu định dạng của bạn, bạn có thể thay đổi chúng bằng cách thêm vào các lệnh xử lý khoảng trắng đặc biệt. Bảng dưới đây liệt kê thông tin về các lệnh qui định khoảng trắng trong công thức toán. + +\begin{center} +\begin{tabular}[!htbp]{|p{4.5cm}|p{6cm}|} +\hline +Lệnh & Kích thước\\ +\hline +\ci{,} & $\rightarrow\demowidth{0.166em}\leftarrow$\\ +\ci{:} & $\rightarrow\demowidth{0.222em}\leftarrow$\\ +\ci{;} & $\rightarrow\demowidth{0.277em}\leftarrow$\\ +\verb*.\ . & $\rightarrow\demowidth{1em}\leftarrow$\\ +\ci{qquad} & $\rightarrow\demowidth{2em}\leftarrow$\\ +\ci{quad} & Kích thước sẽ tương ứng với chữ M trong +font chữ hiện tại\\ +\hline +\end{tabular} +\end{center} + +Lệnh \ci{!} sẽ tạo ra khoảng trắng rất phù hợp trước dấu `-' đối +với các số âm. + +\begin{example} +\newcommand{\ud}{\mathrm{d}} +\begin{displaymath} +\int\!\!\!\int_{D} g(x,y) + \, \ud x\, \ud y +\end{displaymath} +thay vì +\begin{displaymath} +\int\int_{D} g(x,y)\ud x \ud y +\end{displaymath} +\end{example} +Lưu ý rằng kí tự `d' trong công thức liên quan đến đạo hàm thì được định dạng ở kiểu roman. + +\AmS-\LaTeX{} còn cung cấp thêm một phương pháp khác để tinh chỉnh các khoảng cách giữa các kí hiệu tích phân là \ci{iint}, \ci{iiint} và \ci{idotsint}. Khi bạn sử dụng gói \pai{amsmath} thì bạn có thể soạn thảo như sau: +\begin{example} +\newcommand{\ud}{\mathrm{d}} +\begin{displaymath} +\iint_{D} \, \ud x \, \ud y +\end{displaymath} +\end{example} + +Bạn có thể tham khảo thêm tài liệu testmath.tex (được cung cấp chúng với gói \pai{amsmath} do \AmS-\LaTeX{} cung cấp) hay chương 8 trong~\companion để biết thêm chi tiết. + +\section{Gióng theo cột}\label{sec:vert} +Môi trường \ei{array} sẽ cung cấp cho bạn khả năng soạn thảo \textbf{các mảng}. Môi trường này làm việc tương tự như môi trường \texttt{bảng}. Lệnh \verb|\\| được dùng để ngắt hàng. + +\begin{example} +\begin{displaymath} +\mathbf{X} = +\left( \begin{array}{ccc} +x_{11} & x_{12} & \ldots \\ +x_{21} & x_{22} & \ldots \\ +\vdots & \vdots & \ddots +\end{array} \right) +\end{displaymath} +\end{example} + +Môi trường này cũng có thể được dùng để soạn thảo các biểu thức chỉ gồm một dấu ngoặc lớn bên trái, không có dấu đóng ngoặc bên phải nhờ vào lệnh \verb|\right.| . + +\begin{example} +\begin{displaymath} +y = \left\{ \begin{array}{ll} + a & \textrm{nếu $d>c$}\\ + b+x & \textrm{nếu đi chơi vào + buổi sáng}\\ + l & \textrm{cả ngày} + \end{array} \right. +\end{displaymath} +\end{example} + +Các lệnh vẽ hàng ngang, hàng dọc trong môi trường \pai{tabular} cũng được sử dụng trong môi trường này. +\begin{example} +\begin{displaymath} +\left(\begin{array}{c|c} + 1 & 2 \\ +\hline +3 & 4 +\end{array}\right) +\end{displaymath} +\end{example} + +Đối với các công thức nhiều hàng (như là \wi{hệ phương trình}), bạn có thể sử dụng môi trường \ei{eqarray} và \verb|eqnarray*| thay cho môi trường \ei{equation}. Trong môi trường \texttt{eqarray} thì mỗi hàng (tương ứng là một phương trình) đều được đánh số. Tuy nhiên, môi trường \ei{eqarray*} sẽ không đánh số các phương trình. + +Môi trường \ei{eqnarray} và \ei{eqnarray*} hoạt động tương tự như một bảng gồm 3 cột với định dạng là \verb|{rcl}|, trong đó, cột ở giữa có thể được dùng để xuất dấu bằng ``=''. Lệnh \verb|\\| có tác dụng xuống hàng. +\begin{example} +\begin{eqnarray} +f(x) & = & \cos x \\ +f'(x) & = & -\sin x \\ +\int_{0}^{x} f(y)dy & + = & \sin x +\end{eqnarray} +\end{example} +Nếu chú ý bạn sẽ thấy rằng khoảng cách của hai vế với dấu ``='' là khá lớn. Ta có thể giảm khoảng cách này xuống với lệnh +\verb|\setlength\arraycolsep{2pt}|. + +\index{các phương trình dài}\textbf{Các phương trình dài} sẽ không được tự động chia ra làm các đoạn nhỏ. Người soạn thảo phải xác định vị trí xuống hàng và chúng phải được thụt vào bao nhiêu. Dưới đây là hai phương pháp để thực hiện điều này: +\begin{example} +{\setlength\arraycolsep{2pt} +\begin{eqnarray} +\sin x & = & x -\frac{x^{3}}{3!} + + \frac{x^{5}}{5!}-{} + \nonumber \\ + & & {}-\frac{x^{7}}{7!}+{}\cdots +\end{eqnarray}} +\end{example} + +\begin{example} +\begin{eqnarray} +\lefteqn{ \cos x = 1 + -\frac{x^{2}}{2!} +{} } + \nonumber\\ + & & {}+\frac{x^{4}}{4!} + -\frac{x^{6}}{6!}+{}\cdots +\end{eqnarray} +\end{example} + +\noindent Lệnh \ci{nonumber} yêu cầu \LaTeX{} không đánh số phương trình. + +Với các phương pháp này, ta có thể soạn thảo các phương trình được gióng theo cột. Ngoài ra, gói \pai{amsmath} cũng cung cấp một tập các lệnh hiệu quả để thực hiện việc này\footnote{Hãy xem thêm thông tin chi tiết về các môi trường \textrm{align, flalign, gather, multiline và split}}. + +\section{Các khoảng trống thay cho phần văn bản} +Chúng ta không thể thấy phần nội dung là tham số của lệnh \textbf{phantom} tuy nhiên phần nội dung này vẫn được sắp chữ trong tài liệu. Chúng ta có thể dựa vào đây để có được một số thủ thuật soạn thảo rất thú vị. + +Khi chúng ta soạn thảo các chỉ số trên và dưới với các lệnh như \verb|^| và \verb|_|, chúng ta có đã được kết quả rất đẹp mắt nhưng đôi khi chúng ta muốn bổ sung thêm một ít để có được kết quả tốt nhất. Lệnh \ci{phantom} là một lệnh rất hiệu quả trong việc cải thiện kết quả trình bày của các công thức. Lệnh này có chức năng là dành ra một số khoảng trắng theo yêu cầu. + +\begin{example} +\begin{displaymath} +{}^{12}_{\phantom{1}6}\textrm{C} +\qquad \textrm{so với} \qquad +{}^{12}_{6}\textrm{C} +\end{displaymath} +\end{example} + +\begin{example} +\begin{displaymath} +\Gamma_{ij}^{\phantom{ij}k} \qquad +\textrm{so với} \qquad +\Gamma_{ij}^{k} +\end{displaymath} +\end{example} + +\section[Kích thước của các font chữ]{Kích thước của các font chữ hỗ trợ soạn thảo tài liệu Toán học}\label{sec:fontsz} +\index{kích thước font chữ} Trong chế độ soạn thảo công thức toán học, \TeX{} sẽ tự động chọn kích thước của font chữ tuỳ thuộc vào ngữ cảnh. Ví dụ như đối với các chỉ số trên hay chỉ số dưới thì \LaTeX{} sẽ tự động soạn thảo với kiểu chữ nhỏ hơn. Khi bạn muốn soạn thảo một phương trình ở kiểu chữ roman thì bạn không nên dùng lệnh \verb|\textrm| bởi vì lệnh này sẽ làm cho cơ chế thay đổi kích thước font chữ một cách tự động cho phù hợp với ngữ cảnh của \LaTeX{} không làm việc bởi vì lênh \verb|textrm| sẽ tạm thời chuyển môi trường toán học hiện tại sang môi trường soạn thảo văn bản. Bạn cần lưu ý rằng lệnh \ci{mathrm} sẽ \emph{chỉ} làm việc tốt với những phần văn bản ngắn. Lệnh \ci{mathrm} sẽ không có tác dụng đối với các khoảng trắng và các kí tự có dấu.\footnote{Gói \pai{amsmath} của \AmS-\LaTeX{} cho phép lệnh \ci{textrm} làm việc với văn bản đã được thay đổi kích thước.} + +\begin{example} +\begin{equation} 2^{\textrm{nd}} +\quad 2^{\mathrm{nd}} +\end{equation} +\end{example} +Đôi khi bạn cần yêu cầu \LaTeX{} thay đổi kích thước font chữ cho phù hợp. Trong chế độ soạn thảo tài liệu Toán học, bạn có thể sử dụng 4 lệnh sau: +\begin{flushleft} +\ci{displaystyle}~($\displaystyle 123$), + \ci{textstyle}~($\textstyle 123$), +\ci{scriptstyle}~($\scriptstyle 123$) and +\ci{scriptscriptstyle}~($\scriptscriptstyle 123$). +\end{flushleft} + +Việc thay đổi kiểu định dạng cũng sẽ ảnh hưởng đến cách hiển thị các kí hiệu giới hạn. +\begin{example} +\begin{displaymath} +\mathop{\mathrm{corr}}(X,Y)= + \frac{\displaystyle + \sum_{i=1}^n(x_i-\overline x) + (y_i-\overline y)} + {\displaystyle\biggl[ + \sum_{i=1}^n(x_i-\overline x)^2 +\sum_{i=1}^n(y_i-\overline y)^2 +\biggr]^{1/2}} +\end{displaymath} +\end{example} +\noindent đây là một trong các ví dụ cần phải sử dụng các dấu ngoặc lớn thay cho các dấu ngoặc bình thường với lệnh +\verb|\left[\right]|. + +\section{Định lý, định luật, \ldots} +Khi soạn thảo các tài liệu Toán học, bạn sẽ cần phải soạn thảo các ``bổ đề'', ``định nghĩa'', ``tiên đề'' và các cấu trúc tương tự. \LaTeX{} sẽ hỗ trợ bạn với lệnh sau: +\begin{lscommand} +\ci{newtheorem}\verb|{|\emph{name}\verb|}[|\emph{counter}\verb|]{|% + \emph{text}\verb|}[|\emph{section}\verb|]| +\end{lscommand} +Tham số \emph{name} là một từ khoá ngắn để xác định ``định lý''. Tham số \emph{text} sẽ cho phép ta xác định tên gọi của ``định lý'' (đây là tên của định lý trong bản in). + +Các tham số trong dấu ngoặc vuông là tuỳ chọn. Chúng được sử dụng để xác định việc đánh số cho ``định lý''. Tham số \emph{counter} sẽ giúp xác định tham số \emph{name} của ``định lý'' đã được khai báo. Khi này ``định lý'' mới sẽ được đánh số theo cùng một chuỗi. Tham số \emph{section} cho phép bạn xác định cách đánh số ``định lý''. + +Sau khi gọi lệnh \ci{newtheorem} trong phần tựa đề của tài liệu, bạn có thể gọi tiếp các lệnh sau ở trong phần thân của tài liệu: +\begin{code} +\verb|\begin{|\emph{name}\verb|}[|\emph{text}\verb|]|\\ +Đây là một định lý rất thú vị\\ +\verb|\end{|\emph{name}\verb|}| +\end{code} +Phần này chính là phần chi tiết của định lý. Dưới đây là một ví dụ +cụ thể, nó sẽ giúp bạn hiểu được rõ hơn về môi trường định lý này. +\begin{example} +% definitions for the document +% preamble +\newtheorem{law}{Law} +\newtheorem{jury}[law]{Jury} +%in the document +\begin{law} \label{law:box} +Xin chào các bạn!!! +\end{law} +\begin{jury}[Thứ 12] +Có lẽ tôi đã gặp bạn. Hãy tham +khảo thêm +phần~\ref{law:box}\end{jury} +\begin{law} +Đúng, đúng, đúng +\end{law} +\end{example} +Định lý ``Jury'' sử dụng chung bộ đếm như định lý ``Law''. Do đó, +định lý này sẽ được đánh số theo như chuỗi đánh số của định lý +trong hệ thống các định lý như ``Law''. +\begin{example} +\flushleft +\newtheorem{mur}{Murphy}[section] +\begin{mur} +Nếu có hai hay nhiều +cách hơn để làm một +điều gì đó và hơn nữa một +trong các cách này có +thể gây ra các thảm hoạ +thì sẽ có một người +nào đó sẵn lòng làm nó. +\end{mur} +\end{example} +Trong ví dụ trên, định lý ``Murphy'' sẽ được đánh số theo mục hiện +tại. Ngoài cách chọn tham số là \emph{section} như trên, ta có thể +chọn các tham số khác như \emph{chapter} hay \emph{subsection}. + +\section{Các ký hiệu in đậm} +\index{kí hiệu in đậm} Trong \LaTeX{}, việc soạn thảo các kí hiệu in đậm là tương đối khó khăn; có lẽ đây là chủ ý của \LaTeX{} bởi vì những người soạn thảo nghiệp dư rất dễ lạm dụng chức năng này. Lệnh thay đổi font chữ như \verb|\mathbf| sẽ xuất ra các kí tự đậm; tuy nhiên lệnh này sẽ đổi kiểu font chữ sang dạng roman trong khi các kí hiệu toán học thường được viết nghiêng. Ngoài ra, ta còn có lệnh \ci{boldmath} nhưng lệnh này chỉ có tác dụng \emph{bên ngoài} môi +trường toán học. Nó cũng có tác dụng với các kí hiệu. +\begin{example} +\begin{displaymath} +\mu, M \qquad \mathbf{M} \qquad +\mbox{\boldmath $\mu, M$} +\end{displaymath} +\end{example} + +\noindent Nếu chú ý bạn sẽ thấy rằng dấu phẩy lại trở nên quá đậm và điều này là không cần thiết. + +Gói \pai{amsbsy} (có trong bộ \pai{amsmath}) cũng như gói \pai{bm} trong bộ công cụ sẽ hỗ trợ việc định dạng này với lệnh \ci{boldsymbol}. + +\ifx\boldsymbol\undefined\else +\begin{example} +\begin{displaymath} +\mu, M \qquad +\boldsymbol{\mu}, \boldsymbol{M} +\end{displaymath} +\end{example} +\fi + +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/mylayout.sty b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/mylayout.sty new file mode 100644 index 00000000000..7f1779e0bbf --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/mylayout.sty @@ -0,0 +1,355 @@ +%% +%% This is file `mylayout.sty', generated +%% on <1995/7/3> with the docstrip utility (2.2i). +%% +%% The original source files were: +%% +%% layout.dtx (with options: `package') +%% +%% IMPORTANT NOTICE: +%% This file is part of the `tools' bundle +%% in the LaTeX2e distribution. +%% +%% You are not allowed to distribute this file. +%% For distribution of the original source see +%% the copyright notice in the source file, and +%% in the file readme.txt distributed with the +%% tools bundle. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{mylayout} + [1995/06/25 v1.1i + Show layout parameters] +\DeclareOption{dutch}{% + \def\Headertext{Kopregel} + \def\Bodytext{Broodtekst} + \def\Footertext{Voetregel} + \def\MarginNotestext{Marge\\Notities} + \def\oneinchtext{een inch} + \def\notshown{niet getoond} + } +\DeclareOption{english}{% + \def\Headertext{Header} + \def\Bodytext{Body} + \def\Footertext{Footer} + \def\MarginNotestext{Margin\\Notes} + \def\oneinchtext{one inch} + \def\notshown{not shown} + } +\DeclareOption{french}{% + \def\Headertext{Ent\^{e}te} + \def\Bodytext{Corps} + \def\Footertext{Pied de page} + \def\MarginNotestext{Marge\\Notes} + \def\oneinchtext{un pouce} + \def\notshown{non affich\'{e}} + } +\DeclareOption{francais}{\ExecuteOptions{french}} +\DeclareOption{verbose}{\let\type\typeout} +\DeclareOption{silent}{\let\type\@gobble} +\def\lay@value{} +\DeclareOption{integers}{% + \renewcommand*{\lay@value}[2]{% + \expandafter\number\csname #1@#2\endcsname pt}} +\DeclareOption{reals}{% + \renewcommand*{\lay@value}[2]{\the\csname #2\endcsname}} +\ExecuteOptions{english,silent,integers} +\ProcessOptions +\@ifundefined{bs}{\newcommand\bs{\char '134 }}% + {\renewcommand\bs{\char '134 }} +\def\ConvertToCount#1#2{% + #1=#2 + \divide #1 by 65536} +\def\SetToHalf#1#2{#1=#2\relax\divide#1by\tw@} +\def\SetToQuart#1#2{#1=#2\relax\divide#1by4} +\def\Identify#1{% + \put(\PositionX,\PositionY){\circle{20}} + \put(\PositionX,\PositionY){\makebox(0,0){\tiny #1}} +} +\def\InsideHArrow#1{{% + \ArrowLength = #1 + \divide\ArrowLength by \tw@ + \advance\ArrowLength by -10 + \advance\PositionX by -10 + \ifnum\ArrowLength<\z@ + \put(\PositionX,\PositionY){\vector(1,0){-\ArrowLength}} + \advance\PositionX by 20 + \put(\PositionX,\PositionY){\vector(-1,0){-\ArrowLength}} + \else + \put(\PositionX,\PositionY){\vector(-1,0){\ArrowLength}} + \advance\PositionX by 20 + \put(\PositionX,\PositionY){\vector(+1,0){\ArrowLength}} + \fi +}} +\def\InsideVArrow#1{{% + \ArrowLength = #1 + \divide\ArrowLength by \tw@ + \advance\ArrowLength by -10 + \advance\PositionY by -10 + \put(\PositionX,\PositionY){\vector(0,-1){\ArrowLength}} + \advance\PositionY by 20 + \put(\PositionX,\PositionY){\vector(0,+1){\ArrowLength}} +}} +\def\OutsideHArrow#1#2#3{{% + \PositionX = #1 + \advance\PositionX by #3 + \put(\PositionX,\PositionY){\vector(-1,0){#3}} + \PositionX = #1 \advance\PositionX-#2 + \advance\PositionX by -#3 + \put(\PositionX,\PositionY){\vector(+1,0){#3}} +}} +\def\OutsideVArrow#1#2#3#4{{% + \PositionY = #1 + \advance\PositionY by -#3 + \put(\PositionX,\PositionY){\vector(0,+1){#3}} + \PositionY = #1 + \advance\PositionY#2 + \advance\PositionY#4 + \put(\PositionX,\PositionY){\vector(0,-1){#4}} +}} +\def\Show#1#2{\bs #2 = \lay@value{#1}{#2}} +\def\Type#1#2{% + \type{#2 = \lay@value{#1}{#2}}} +\newcount\oneinch +\oneinch=72 +\newcount\cnt@paperwidth +\newcount\cnt@paperheight +\ConvertToCount\cnt@paperwidth\paperwidth +\ConvertToCount\cnt@paperheight\paperheight +\newcount\cnt@hoffset +\newcount\cnt@voffset +\ConvertToCount\cnt@hoffset\hoffset +\ConvertToCount\cnt@voffset\voffset +\newcount\cnt@textheight +\newcount\cnt@textwidth +\ConvertToCount\cnt@textheight\textheight +\ConvertToCount\cnt@textwidth\textwidth +\newcount\cnt@topmargin +\newcount\cnt@oddsidemargin +\newcount\cnt@evensidemargin +\ConvertToCount\cnt@topmargin\topmargin +\ConvertToCount\cnt@oddsidemargin\oddsidemargin +\ConvertToCount\cnt@evensidemargin\evensidemargin +\newcount\cnt@headheight +\newcount\cnt@headsep +\ConvertToCount\cnt@headheight\headheight +\ConvertToCount\cnt@headsep\headsep +\newcount\cnt@marginparsep +\newcount\cnt@marginparwidth +\newcount\cnt@marginparpush +\ConvertToCount\cnt@marginparsep\marginparsep +\ConvertToCount\cnt@marginparwidth\marginparwidth +\ConvertToCount\cnt@marginparpush\marginparpush +\newcount\cnt@footskip +\ConvertToCount\cnt@footskip\footskip +\newcount\fheight +\fheight=12 +\newcount\ref@top +\ref@top=\cnt@paperheight \advance\ref@top by -\oneinch +\newcount\ref@hoffset +\newcount\ref@voffset +\ref@hoffset=\cnt@hoffset \advance\cnt@hoffset by \oneinch +\ref@voffset=\cnt@voffset +\cnt@voffset=\ref@top +\advance\cnt@voffset by -\ref@voffset +\newcount\ref@head +\ref@head=\ref@top + \advance\ref@head by -\ref@voffset + \advance\ref@head by -\cnt@topmargin + \advance\ref@head by -\cnt@headheight +\newcount\ref@body +\ref@body=\ref@head + \advance\ref@body by -\cnt@headsep + \advance\ref@body by -\cnt@textheight +\newcount\ref@foot + \ref@foot=\ref@body + \advance\ref@foot by -\cnt@footskip +\newcount\ref@margin +\newcount\ref@marginwidth +\newcount\ref@marginpar +\newcount\Interval +\newcount\ExtraYPos +\newcount\PositionX +\newcount\PositionY +\newcount\ArrowLength +\newcommand\layout{% + \@layout + \if@twoside + \@layout + \fi} +\newcommand\@layout{% + \thispagestyle{empty} + \if@twoside + \ifodd\count\z@ + \typeout{Two-sided document style, odd page.} + \ref@marginwidth=\cnt@oddsidemargin + \ref@marginpar=\oneinch + \advance\ref@marginpar by \ref@hoffset + \advance\ref@marginpar by \cnt@oddsidemargin + \ref@margin\ref@marginpar + \if@reversemargin + \advance\ref@marginpar by -\cnt@marginparsep + \advance\ref@marginpar by -\cnt@marginparwidth + \else + \advance\ref@marginpar by \cnt@textwidth + \advance\ref@marginpar by \cnt@marginparsep + \fi + \else + \typeout{Two-sided document style, even page.} + \ref@marginwidth=\cnt@evensidemargin + \ref@marginpar=\oneinch + \advance\ref@marginpar by \ref@hoffset + \advance\ref@marginpar by \cnt@evensidemargin + \ref@margin\ref@marginpar + \if@reversemargin + \advance\ref@marginpar by \cnt@textwidth + \advance\ref@marginpar by \cnt@marginparsep + \else + \advance\ref@marginpar by -\cnt@marginparsep + \advance\ref@marginpar by -\cnt@marginparwidth + \fi + \fi + \else + \typeout{One-sided document style.} + \ref@marginwidth=\cnt@oddsidemargin + \ref@marginpar=\oneinch + \advance\ref@marginpar by \ref@hoffset + \advance\ref@marginpar by \cnt@oddsidemargin + \ref@margin\ref@marginpar + \if@reversemargin + \advance\ref@marginpar by -\cnt@marginparsep + \advance\ref@marginpar by -\cnt@marginparwidth + \else + \advance\ref@marginpar by \cnt@textwidth + \advance\ref@marginpar by \cnt@marginparsep + \fi + \fi + \setlength{\unitlength}{.5pt} + \begin{picture}(\cnt@paperwidth,\cnt@paperheight) + \centering + \thicklines + \put(0,0){\framebox(\cnt@paperwidth,\cnt@paperheight){\mbox{}}} + \put(0,\cnt@voffset){\dashbox{10}(\cnt@paperwidth,0){\mbox{}}} + \put(\cnt@hoffset,0){\dashbox{10}(0,\cnt@paperheight){\mbox{}}} + \put(\ref@margin,\ref@head){% + \framebox(\cnt@textwidth,\cnt@headheight)% + {\footnotesize\Headertext}} + \put(\ref@margin,\ref@body){% + \framebox(\cnt@textwidth,\cnt@textheight){\Bodytext}} + \put(\ref@margin,\ref@foot){% + \framebox(\cnt@textwidth,\fheight){\footnotesize\Footertext}} + \put(\ref@marginpar,\ref@body){% + \framebox(\cnt@marginparwidth,\cnt@textheight)% + {\footnotesize\shortstack{\MarginNotestext}}} + \thinlines + \SetToHalf\PositionX\cnt@textwidth + \advance\PositionX by \ref@margin + \PositionY = \ref@body + \advance\PositionY by 50 + \Identify{8} + \InsideHArrow\cnt@textwidth + \SetToHalf\PositionY\cnt@textheight + \advance\PositionY by \ref@body + \PositionX = \cnt@textwidth + \divide\PositionX by 5 + \multiply \PositionX by 4 + \advance\PositionX by \ref@margin + \Identify{7} + \InsideVArrow\cnt@textheight + \PositionY = \ref@foot + \SetToHalf\PositionX\cnt@hoffset + \Identify{1} + \InsideHArrow\cnt@hoffset + \SetToQuart\PositionY\cnt@textheight + \advance\PositionY by \ref@body + \OutsideHArrow\ref@margin\ref@marginwidth{20} + \PositionX = \cnt@hoffset + \advance\PositionX by -30 + \Identify{3} + \SetToQuart\PositionY\cnt@textheight + \advance\PositionY by \ref@body + \advance\PositionY by 30 + \SetToHalf\PositionX\cnt@marginparwidth + \advance\PositionX by \ref@marginpar + \Identify{10} + \InsideHArrow\cnt@marginparwidth + \advance\PositionY by 30 + \if@twoside + \ifodd\count\z@ + \OutsideHArrow\ref@marginpar\cnt@marginparsep{20} + \PositionX = \ref@marginpar + \else + \OutsideHArrow\ref@margin\cnt@marginparsep{20} + \PositionX = \ref@margin + \fi + \else + \OutsideHArrow\ref@marginpar\cnt@marginparsep{20} + \PositionX = \ref@marginpar + \fi + \advance\PositionX by 30 + \Identify{9} + \PositionX = \cnt@textwidth + \divide\PositionX by 8 + \advance\PositionX by \ref@margin + \OutsideVArrow\ref@foot\cnt@footskip{20}{20} + \PositionY = \ref@foot + \advance\PositionY by -30 + \Identify{11} + \PositionX = \cnt@paperwidth + \advance\PositionX by -50 + \PositionY = \cnt@paperheight + \ExtraYPos = \PositionY + \advance\ExtraYPos by -\cnt@voffset + \advance\PositionY by \cnt@voffset + \divide\PositionY by \tw@ + \Identify{2} + \InsideVArrow\ExtraYPos + \Interval = \cnt@textwidth + \divide\Interval by 8 + \PositionX = \ref@margin + \advance\PositionX by \Interval + \Identify{4} + \ExtraYPos = \ref@head + \advance\ExtraYPos\cnt@headheight + \ArrowLength = \PositionY + \advance\ArrowLength-\ExtraYPos + \advance\ArrowLength-\cnt@topmargin + \advance\ArrowLength-10% + \OutsideVArrow\ExtraYPos\cnt@topmargin{20}{\ArrowLength} + \advance\PositionX by \Interval + \Identify{5} + \advance\ArrowLength\cnt@topmargin + \OutsideVArrow\ref@head\cnt@headheight{20}{\ArrowLength} + \advance\PositionX by \Interval + \Identify{6} + \advance\ArrowLength\cnt@headheight + \ExtraYPos=\ref@body + \advance\ExtraYPos\cnt@textheight + \OutsideVArrow\ExtraYPos\cnt@headsep{20}{\ArrowLength} + \end{picture} + + \medskip + \vtop to 0pt{% + \@minipagerestore\footnotesize\ttfamily + \begin{tabular}{@{}rl@{\hspace{20pt}}rl} + 1 & \oneinchtext\ + \bs\texttt{hoffset} & 2 & \oneinchtext\ + \bs\texttt{voffset} \\ + 3 & \Show{cnt}{oddsidemargin} & 4 & \Show{cnt}{topmargin} \\ + & or \bs\texttt{evensidemargin} & & \\ + 5 & \Show{cnt}{headheight} & 6 & \Show{cnt}{headsep} \\ + 7 & \Show{cnt}{textheight} & 8 & \Show{cnt}{textwidth} \\ + 9 & \Show{cnt}{marginparsep}&10& \Show{cnt}{marginparwidth} \\ + 11& \Show{cnt}{footskip} & & \Show{cnt}{marginparpush} + \rlap{(\notshown)}\\ + & \Show{ref}{hoffset} & & \Show{ref}{voffset} \\ + & \Show{cnt}{paperwidth} & & \Show{cnt}{paperheight} \\ + + \end{tabular}\vss} + \Type{ref}{hoffset} + \Type{ref}{voffset} + \Type{cnt}{textheight} + \Type{cnt}{textwidth} + \newpage +} +\endinput +%% +%% End of file `layout.sty'. diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/overview.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/overview.tex new file mode 100644 index 00000000000..f7c5e3ccdd5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/overview.tex @@ -0,0 +1,103 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Who contributed to this Document +% $Id: overview.tex,v 1.1.1.1 2002/02/26 10:04:21 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Because this introduction is the reader's first impression, I have +% edited very heavily to try to clarify and economize the language. +% I hope you do not mind! I always try to ask "is this word needed?" +% in my own writing but I don't want to impose my style on you... +% but here I think it may be more important than the rest of the book. +% --baron + +%\chapter{Lời giới thiệu} +\chapter{Lời mở đầu} +\LaTeX{} \cite{manual} là một hệ thống soạn thảo rất phù hợp với +việc tạo ra các tài liệu khoa học và toán học với chất lượng bản +in rất cao. Đồng thời, nó cũng rất phù hợp với các công việc soạn +thảo các tài liệu khác từ thư từ cho đến những cuốn sách hoàn +chỉnh. \LaTeX{} sử dụng \TeX{}~\cite{texbook} làm bộ máy định +dạng.\\ + +Tài liệu ngắn gọn này sẽ giới thiệu về \LaTeXe{} và nó sẽ giới +thiệu hầu hết các ứng dụng của \LaTeX. Bạn có thể tham khảo +thêm~\cite{manual,companion} để biết thêm chi tiết về hệ thống +\LaTeX{}. + +\bigskip +\noindent Tài liệu này được chia làm 7 chương (6 chương được dịch +từ tài liệu gốc và 1 chương hướng dẫn sử dụng \LaTeX{} để soạn thảo tài liệu tiếng Việt): + +\begin{description} +\item[Chương 1] giới thiệu cấu trúc cơ bản của các tài liệu được soạn thảo bằng \LaTeXe{}. Ngoài ra, chương này cũng giới +thiệu sơ lược về lịch sử phát triển của \LaTeX{}. Kết thúc chương, +bạn sẽ hiểu được cơ chế làm việc của \LaTeX{}. Đây sẽ là nền tảng +quan trọng mà từ đó bạn có thể kết hợp với các kiến thức ở các chương +sau để có được một cái nhìn sâu hơn về \LaTeX{}. + +\item[Chương 2] đi sâu vào việc soạn thảo các tài liệu. Bạn sẽ được giới thiệu về những lệnh cơ bản, phổ biến cùng với những môi trường định dạng trong \LaTeX{}. Sau khi kết thúc +chương, bạn sẽ có thể tự soạn thảo một số kiểu tài liệu đơn giản. + +\item[Chương 3] hướng dẫn cách soạn thảo các công thức bằng \LaTeX. +Chúng tôi sẽ cung cấp cho các bạn rất nhiều ví dụ minh hoạ cách sử +dụng sức mạnh này của \LaTeX{}. Chương này sẽ được kết thúc bằng +một bảng liệt kê tất cả các kí hiệu toán học được hỗ trợ trong +\LaTeX{}. + +\item[Chương 4] nói về việc tạo chỉ mục, danh mục tài liệu tham +khảo và thêm hình ảnh dạng EPS vào tài liệu. Chương này cũng nói về việc +tạo một tài liệu dạng PDF với pdf\LaTeX{}, giới thiệu một số gói +mở rộng hữu dụng như XY-pic, pdfscreen, \ldots . + +\item[Chương 5] hướng dẫn tạo các tập tin hình ảnh với \LaTeX{}. Bên cạnh việc sử dụng các công cụ vẽ hình bên ngoài để thiết kế hình ảnh rồi thêm vào tài liệu, bạn có thể mô tả hình ảnh và \LaTeX{} sẽ trực tiếp vẽ cho bạn. + +\item[Chương 6] nói về những ``nguy hiểm tìm ẩn'' của việc thay đổi +định dạng chuẩn của \LaTeX{}. Bạn sẽ biết được những thay đổi +không nên làm vì nó sẽ khiến cho \LaTeX{} xuất ra tài liệu kết quả +không đẹp. + +\item[Chương 7] hướng dẫn cài đặt và sử dụng gói \pai{VnTeX} để +soạn thảo tài liệu bằng tiếng Việt với \LaTeX{}. +\end{description} + +\bigskip +\noindent Bạn nên đọc tài liệu theo thứ tự các chương bởi vì tài +liệu này không quá dài. Hãy tìm hiểu thật kỹ các ví dụ bởi lẽ chúng chứa đựng rất nhiều thông tin và sẽ được sử dụng xuyên suốt trong toàn bộ tài liệu. + +\bigskip +\noindent \LaTeX{} có thể được sử dụng gần như trên mọi hệ thống máy tính, mọi hệ điều hành, +từ máy PC, Mac đến các hệ thống máy tính lớn như UNIX và VMS. Tại các mạng máy tính trong các trường đại học, bạn có thể thấy rằng \LaTeX{} đã được cài đặt sẵn. Thông tin hướng dẫn cách thức truy cập và sử dụng được cung cấp trong phần \guide. Nếu bạn gặp khó khăn trong việc sử dụng thì hãy liên hệ với người đã đưa cho bạn quyển sách này! Việc hướng dẫn cài đặt và cấu hình \LaTeX{} không thuộc vào phạm vi giới thiệu ngắn gọn của tài liệu. Ở đây, chúng tôi chỉ tập trung giới thiệu những kiến thức cơ bản để soạn thảo tài liệu bằng \LaTeX{}. + +\bigskip +\noindent Nếu bạn có nhu cầu liên quan đến \LaTeX{}, hãy tham khảo thêm tài liệu ở trang web của Comprehensive \TeX{} +Archive Network (\texttt{CTAN}). Trang chủ được đặt tại \texttt{http://www.ctan.org}. Bạn có thể tải về tất cả các gói dữ +liệu thông qua các chương trình FTP ở địa chỉ \texttt{ftp://www.ctan.org} hay rất nhiều địa chỉ liên kết phụ khác trên thế giới như \texttt{ftp://ctan.tug.org} (US), \texttt{ftp://ftp.dante.de} (Germany), \texttt{ftp://ftp.tex.ac.uk} (UK). Nếu bạn không ở các nước trên thì hãy lựa chọn địa chỉ nào gần bạn nhất.\\ + +\noindent Bạn sẽ thấy những phần cần tham khảo thêm ở CTAN trong suốt tài liệu này, đặc biệt là các tham chiếu đến phần mềm và tài liệu bạn có thể tải về. Thay vì phải viết toàn bộ địa chỉ URL, chúng tôi sẽ chỉ viết \texttt{CTAN:} sau đó là vị trí trong cây thư mục ở CTAN.\\ + +\noindent Nếu bạn muốn sử dụng \LaTeX trên máy tính cá nhân, hãy xem qua +những thông tin ở địa chỉ \texttt{CTAN:/tex-archive/systems}. + +\vspace{\stretch{1}} + +\noindent Nếu bạn thấy rằng tài liệu này cần được bổ sung, thay đổi +thì hãy liên hệ với chúng tôi. + +\bigskip +\begin{verse} +\contrib{Tobias Oetiker}{oetiker@ee.ethz.ch}% +\noindent{Department of Information Technology and\\ Electrical Engineering, +Swiss Federal Institute of Technology} +\end{verse} + +\vspace{\stretch{1}} +\noindent Tài liệu hiện thời đang có ở địa chỉ: \\ +\texttt{CTAN:/tex-archive/info/lshort} + +\endinput +% +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End:
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/spec.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/spec.tex new file mode 100644 index 00000000000..b6985a90992 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/spec.tex @@ -0,0 +1,890 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Specialities of the LaTeX system +% $Id: spec.tex,v 1.1.1.1 2002/02/26 10:04:21 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Những tính năng đặc trưng của \LaTeX{}} +\begin{intro} + Khi kết hợp các phần lại với nhau thành một tài liệu lớn \LaTeX{} sẽ giúp đỡ bạn thông qua một số tính năng mạnh như việc tạo bảng chỉ mục, quản lý mục lục tài liệu tham khảo và các công việc khác. Để biết thêm chi tiết về các tính năng đặc trưng và khả năng mở rộng của \LaTeX{}, bạn có thể tham khảo thêm ở tài liệu {\normalfont\manual{}} và {\normalfont \companion}. +\end{intro} + +\section{Đưa ảnh EPS vào tài liệu}\label{eps} +\LaTeX{} cung cấp những phương tiện cơ bản để làm việc với các phần có nội dung mang tính linh động như hình ảnh hay hình đồ thị thông qua hai môi trường là \texttt{figure} và \texttt{table}. + +Ngoài ra, ta còn có một số cách khác để tạo ra hình ảnh dựa vào các lệnh của \LaTeX{} hay từ các gói mở rộng của \LaTeX{}. Tuy nhiên, đa số người dùng nhận xét rằng việc sử dụng các tính năng này là tương đối phức tạp, khó khăn và hơi khó hiểu. Do đó, chúng tôi quyết định không giải thích chi trong phạm vi tài liệu ngắn ngọn này. Bạn có thể tham khảo thêm trong \companion{} và \manual{} để biết thêm chi tiết về chủ đề này. + +Một cách tiếp cận khác đơn giản hơn là tạo ra các hình ảnh với các chương trình chuyên dụng\footnote{XFig, CorelDraw!, Freehand, Gnuplot, \ldots} sau đó đưa chúng vào tài liệu. Các gói của \LaTeX{} cung cấp rất nhiều biện pháp để thực hiện điều này. Tuy nhiên, trong khuông khổ của tài liệu này, chúng tôi chỉ trình bày về việc sử dụng các hình ành dạng \wi{Encapsulated PostScript} (EPS) bởi vì việc đưa các đối tượng này vào tài liệu là tương đối đơn giản và được sử dụng rộng rãi. Để có thể sử dụng được các hình ảnh dạng EPS, bạn cần phải có máy in hỗ trợ \wi{PostScript}\footnote{Một cách khác để xuất dạng PostScript là sử dụng phần mềm \textsc{\wi{GhostScript}} tại địa chỉ \texttt{CTAN:/tex-archive/support/ghostscript}. Người dùng Windows và OS/2 có thể cần phần mềm \textsc{GSView}.} để xuất kết quả. + +Một tập lệnh hỗ trợ việc đưa hình ảnh vào tài liệu làm việc khá tốt được cung cấp trong gói \pai{graphicx} được thiết kế bởi D.~P.~Carlisle. Đây là một phần của họ các gói có tên là ``graphics''.\footnote{\texttt{CTAN:/tex-archive/macros/latex/required/graphics}} + +\newpage +Giả sử bạn đang làm việc trên một hệ thống có sẵn máy in PostScript và gói \textsf{graphicx}, bạn có thể tiến hành theo các bước sau để có thể đưa hình ảnh vào tài liệu: +\begin{enumerate} +\item Xuất kết quả trong các chương trình đồ hoạ ra dưới dạng EPS.% +\footnote{Nếu chương trình của bạn không thể xuất dưới dạng EPS, bạn có thể thử cài đặt driver của máy in PostScript (ví dụ như máy Apple LaserWriter) và in kết quả làm việc ra tập tin với driver này. Thông thường thì tập tin này sẽ có định dạng là EPS. Lưu ý rằng một hình ảnh dạng EPS không được phép chứa nhiều hơn một trang. Một số driver của các máy in có thể được cấu hình trực tiếp để xuất ra dạng EPS.} +% +\item Nạp gói \textsf{graphicx} trong phần tựa đề của tập tin dữ liệu vào như sau: +\begin{lscommand} +\verb|\usepackage[|\emph{driver}\verb|]{graphicx}| +\end{lscommand} +với \emph{driver} là tên của chương trình dịch từ dạng dvi sang dạng postscript. Chương trình thường được sử dụng là \texttt{dvips}. Tên của driver là một đòi hỏi bắt buộc bởi vì không có tiểu chuẩn về cách thức một hình ảnh được đưa vào trong \TeX{}. Thông qua việc biết được tên của \emph{driver} thì gói \textsf{graphicx} sẽ xác định cách để chèn thông tin về hình ảnh vào tâp tin \eei{.dvi} để máy in có thể hiểu được và đưa tập tin \eei{.eps} vào một cách chính xác. + +\item Sử dụng lệnh sau: +\begin{lscommand} +\ci{includegraphics}\verb|[|\emph{key}=\emph{value}, \ldots\verb|]{|\emph{file}\verb|}| +\end{lscommand} +để đưa tập tin \emph{file} vào tài liệu. Thông số tuỳ chọn của \emph{keys} là một danh sách được phân cách bởi dấu phẩy của các giá trị \emph{values}. Các tham số \emph{keys} có thể được sử dụng để thay đổi độ rộng, cao và sự xoay vòng của hình ảnh. Bảng~\ref{keyvals} sẽ liệt kê các khoá quan trọng. +\end{enumerate} + +\begin{table}[!htb] +\caption{Tên của các khoá theo gói \textsf{graphicx}.} +\label{keyvals} +\begin{lined}{9cm} +\begin{tabular}{@{}ll} +\texttt{width}& co dãn hình ảnh theo chiều rộng yêu cầu\\ +\texttt{height}& co dãn hình ảnh theo chiều cao yêu cầu\\ +\texttt{angle}& xoay hình ảnh ngược chiều kim đồng hồ\\ +\texttt{scale}& chỉnh tỷ lệ kích thước của hình ảnh \\ +\end{tabular} + +\bigskip +\end{lined} +\end{table} + +\pagebreak +Dưới đây là một ví dụ minh hoạ làm rõ tính năng trên +\begin{code} +\begin{verbatim} +\begin{figure} +\begin{center} +\includegraphics[angle=90, width=0.5\textwidth]{test} +\end{center} +\end{figure} +\end{verbatim} +\end{code} +Ví dụ trên sẽ đưa vào tài liệu một tập tin có tên là \texttt{test.eps}. \emph{Đầu tiên}, hình ảnh sẽ được xoay một góc +90 độ ngược chiều kim đồng hồ. \emph{Sau đó}, nó sẽ được tăng kích thước chiều rộng lên gấp 0.5 lần chiều rộng ban đầu. Tỷ lệ là $1.0$ bởi vì ta không chỉ định về chiều cao của hình ảnh. Chiều rộng và chiều cao có thể được xác định theo những kích thước tuyệt đối. Xem thêm bảng~\ref{units} ở trang~\pageref{units} để biết thêm chi tiết. Nếu bạn muốn đi sâu vào mục này, bạn nên đọc 2 tài liệu sau: \cite{graphics} và \ci{eps}. + +\section{Tài liệu tham khảo} +Bạn có thể tạo ra mục lục các tài liệu tham khảo thông qua môi trường \ei{thebibliography}. Trong môi trường này, mỗi mục sẽ được bắt đầu như sau: +\begin{lscommand} +\ci{bibitem}\verb|[|\emph{label}\verb|]{|\emph{marker}\verb|}| +\end{lscommand} +Tham số \emph{marker} được sử dụng để trích dẫn sách, bài báo hay các bài luận được sử dụng đến trong tài liệu. +\begin{lscommand} +\ci{cite}\verb|{|\emph{marker}\verb|}| +\end{lscommand} +Nếu bạn không sử dụng tuỳ chọn \emph{label}, các mục từ sẽ được liệt kê, đánh số một cách tự động. Tham số sau lệnh \verb|\begin{thebibliography}| sẽ xác định không gian dành cho phần đánh số của các nhãn (label). Trong ví dụ dưới đây, tham số \verb|{99}| sẽ cho \LaTeX{} biết rằng không có mục nào trong danh sách các tài liệu tham khảo được đánh số rộng hơn số 99. + +\enlargethispage{2cm} +\begin{example} +Phần 1~\cite{pa} cho rằng \ldots +\begin{thebibliography}{99} +\bibitem{pa} H.~Partl: +\emph{German \TeX}, TUGboat Quyển~9, +phát hành lầne~1 (1988) +\end{thebibliography} +\end{example} + +\chaptermark{Specialities} % w need to fix the damage done by the + %bibliography example. +\thispagestyle{fancyplain} + +\newpage +Đối với các dự án lớn, có lẽ bạn sẽ cần kiểm tra chương trình Bib\TeX{}. Bib\TeX{} được cung cấp kèm theo với hầu hết các phiên bản được phân phối của \TeX{}. Chương trình này sẽ giúp bạn bảo quản cơ sở dữ liệu về tài liệu tham khảo và đưa các tham chiếu tương ứng vào tài liệu. Phần mềm Bib\TeX{} dựa vào khái niệm ``style sheet'' để tạo ra các mục lục tài liệu tham khảo trực quan. Khái niệm ``style sheet'' cho phép mục lục tài liệu tham khảo được xây dựng dựa vào các mẫu đã được định sẵn. + +\section{Tạo chỉ mục} \label{sec:indexing} +Đối với các tài liệu hoàn chỉnh thì phần \wi{chỉ mục} đóng một vai trò hết sức quan trọng. Với \LaTeX{} và chương trình hỗ trợ việc tạo chỉ mục \texttt{makeindex},\footnote{Trên các hệ thống không hỗ trợ tập tin có tên dài hơn 8~kí tự, chương trình được gọi là \texttt{makeidx}.}, việc tạo chỉ mục cho một tài liệu trở nên hết sức đơn giản. Phần này chỉ giới thiệu sơ qua những lệnh cơ bản hỗ trợ việc tạo các chỉ mục. Để có được một cái nhìn sâu sắc hơn, bạn có thể tham khảo thêm tài liệu \companion. \index{tạo chỉ mục}. \index{gói makeidx} + +Để kích hoạt tính năng tạo chỉ mục của \LaTeX{}, bạn cần phải sử dụng vào gói \pai{makeidx} trong phần tựa đề của tài liệu. +\begin{lscommand} +\verb|\usepackage{makeidx}| +\end{lscommand} +\noindent đổng thời, bạn phải kích hoạt các lệnh tạo chỉ mục bằng cách sử dụng lệnh: +\begin{lscommand} + \ci{makeindex} +\end{lscommand} +\noindent trong phần tựa đề của tài liệu.\\ + +\noindent Nội dung của chỉ mục sẽ được xác định với lệnh: +\begin{lscommand} + \ci{index}\verb|{|\emph{key}\verb|}| +\end{lscommand} +\noindent Trong đó, tham số \emph{key} là mục từ trong từ điển các +chỉ mục. Bạn sẽ nhập vào lệnh \verb|\index{...}| tại vị trí mà bạn +muốn mục từ trong bảng chỉ mục sẽ trỏ đến. Bảng~\ref{index} sẽ +giải thích thêm về tham số \emph{key} thông qua một vài ví dụ. + +\begin{table}[!tbp] +\caption{Cú pháp của việc tạo chỉ mục.} \label{index} +\begin{center} +\begin{tabular}{@{}lll@{}} + \textbf{Ví dụ} &\textbf{Mục từ} &\textbf{Chú thích}\\\hline + \rule{0pt}{1.05em}\verb|\index{hello}| &hello, 1 &Một mục từ đơn thuần\\ +\verb|\index{hello!Peter}| &\hspace*{2ex}Peter, 3 &Mục từ con của mục từ `hello'\\ +\verb|\index{Sam@\textsl{Sam}}| &\textsl{Sam}, 2& Mục từ được định dạng\\ +\verb|\index{Lin@\textbf{Lin}}| &\textbf{Lin}, 7& Giống như trên\\ +\verb.\index{Jenny|textbf}. &Jenny, \textbf{3}& Định dạng số trang\\ +\verb.\index{Joe|textit}. &Joe, \textit{5}& Giống như trên\\ +\verb.\index{eolienne@\'eolienne}. &\'eolienne, 4& Điều khiển +các dấu +\end{tabular} +\end{center} +\end{table} + +Khi tập tin dữ liệu vào được xử lý bởi \LaTeX{}, mỗi lệnh \verb|\index| sẽ ghi một mục từ tương ứng cùng với số trang hiện +tại vào danh sách các mục từ trong một tập tin đặc biệt. Tập tin này sẽ có tên trùng với tập tin dữ liệu vào nhưng khác ở phần mở rộng (\verb|.idx|). Tiếp theo, tập tin \eei{.idx} này sẽ được xử lý bởi chương trình \texttt{makeindex}. +\begin{lscommand} + \texttt{makeindex} \emph{tên tập tin} +\end{lscommand} +Chương trình \texttt{makeindex} sẽ tạo ra một danh sách các chỉ mục được sắp xếp trong tập tin có tên tương tự nhưng khác phần mở rộng (\eei{.ind}). Nếu chương trình \LaTeX{} lại được gọi để xử lý tập tin dữ liệu vào ban đầu thì bảng chỉ mục đã được sắp xếp này sẽ được đưa vào tài liệu tại vị trí mà \LaTeX{} tìm thấy lệnh +\begin{lscommand} + \ci{printindex} +\end{lscommand} +Gói \pai{showidx} đi kèm với \LaTeXe{} sẽ in ra tất cả các mục từ ở cột bên trái của phần văn bản. Điều này rất thuận lợi cho việc kiểm tra lại việc tạo các chỉ mục. + +Lưu ý rằng việc sử dụng lệnh \ci{index} một cách không cẩn thận có thể ảnh hưởng đến cách trình bày tài liệu. +\begin{example} +Ý tôi \index{ý tôi}. Khác với +ý tôi\index{ý tôi}. Bạn cần chú ý +đến vị trí của dấu chấm câu. +\end{example} + + +\section{Trang trí đầu đề của các trang} +\label{sec:fancy} Gói \pai{fancyhdr}\footnote{có tại địa chỉ \texttt{CTAN:/tex-archive/macros/latex/contrib/supported/fancyhdr}.} được viết bởi Piet van Oostrum, cung cấp cho ta một số lệnh đơn giản để tuỳ biến phần tựa đề và chân của các trang trong tài liệu. Hãy nhìn vào phần tựa đề và phần chân của các trang trong tài liệu này, bạn sẽ thấy tính hữu dụng của gói này. +\begin{figure}[!htbp] +\begin{lined}{\textwidth} +\begin{verbatim} +\documentclass{book} +\usepackage{fancyhdr} +\pagestyle{fancy} +% xác định rằng phần tựa đề và phần chân của trang +% sẽ được viết thường. +\renewcommand{\chaptermark}[1]{\markboth{#1}{}} +\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} +\fancyhf{} % xoá các định dạng hiện tại đối với phần tựa đề trang +\fancyhead[LE,RO]{\bfseries\thepage} +\fancyhead[LO]{\bfseries\rightmark} +\fancyhead[RE]{\bfseries\leftmark} +\renewcommand{\headrulewidth}{0.5pt} +\renewcommand{\footrulewidth}{0pt} +\addtolength{\headheight}{0.5pt} % tạo khoảng trống cho vạch ngang +\fancypagestyle{plain}{% + \fancyhead{} % chỉnh phần tựa đề cho trang trắng + \renewcommand{\headrulewidth}{0pt} % và đường kẻ ngang +} +\end{verbatim} +\end{lined} +\caption{Ví dụ về cách sử dụng gói \pai{fancyhdr}.} +\label{fancyhdr} +\end{figure} +Vấn đề tinh xảo của việc tạo tựa đề và phần chân của các trang là việc đưa vào tên của mục hay chương hiện tại. \LaTeX{} xử lý việc này theo hai bước. Trong định nghĩa của phần tựa đề, phần chân của trang, bạn sử dụng lệnh \ci{rightmark} và \ci{leftmark} để cho biết mục và chương tương ứng hiện tại. Hai lệnh này sẽ xuất ra mục hay chương mới khi lệnh tạo mục hay chương mới được xử lý. + +Lệnh \verb|\chapter| và các lệnh có tác dụng tương tự khác không tự định nghĩa lại lệnh \ci{rightmark} và \ci{leftmark}. Chúng gọi lệnh khác (như là \ci{chaptermark}, \ci{sectionmark} hay \ci{subsectionmark}) để định nghĩa lại lệnh \ci{rightmark} và \ci{leftmark}. + +Nếu bạn muốn thay đổi phong cách thể hiện tên chương trong phần tựa đề của trang, bạn ``chỉ cần'' định nghĩa lại lệnh +\ci{chaptermark}. \cih{sectionmark}\cih{subsectionmark}. + +Hình~\ref{fancyhdr} liệt kê các tham số có thể sử dụng trong \pai{fancyhdr} để làm cho chúng trông giống như phần tựa đề, chân của cuốn sách này. Theo tôi, bạn nên sử dụng các kiểu định dạng được đề nghị trong phần chú thích. + +\section{Môi trường hỗ trợ trích đúng nguyên văn} +Trong các phần trước của tài liệu, bạn đã có dịp tiếp xúc với \emph{môi trường} \ei{verbatim}. Trong mục này, bạn sẽ học cách sử dụng \emph{gói} \pai{verbatim}. Gói \pai{verbatim} là một sự bổ sung cho môi trường \ei{verbatim}. Nó giúp giải quyết một số các hạn chế của môi trường \ei{verbatim}. Bản thân của môi trường này không có gì là đặc biệt nhưng sự bổ sung của nó: gói \pai{verbatim} đã thêm vào một số tính năng mới rất hữu dụng. Gói \pai{verbatim} cung cấp lệnh + +\begin{lscommand} +\ci{verbatiminput}\verb|{|\emph{tên tập tin}\verb|}| +\end{lscommand} +\noindent nhằm cho phép đưa vào phần văn bản nguyên mẫu trong tập tin có tên \emph{tên tập tin} vào tài liệu (bên trong môi trường \ei{verbatim}). + +Vì gói \pai{verbatim} là một phần của bộ công cụ cho nên nó sẽ được cài đặt sẵn trên hầu hết các hệ thống \LaTeX{}. Bạn có thể tham khảo thêm thông tin chi tiết về gói này bạn nên đọc tài liệu \cite{verbatim}. + + +\section{Tải về và cài đặt các gói của \LaTeX{}} +Hầu hết các bản cài đặt của \LaTeX{} đều đi kèm với một số lượng lớn các gói phục vụ việc định dạng tài liệu. Tuy nhiên, một số gói hữu dụng khác phải được tải về từ mạng. Nơi mà bạn có thể tìm thấy hầu hết các tiện ích này là CTAN (\verb|http://www.ctan.org/|). + +Các gói như \pai{geometry}, \pai{hyphenat}, và một số gói khác thường được tạo thành từ hai tập tin: một tập tin với phần mở rộng là \texttt{.ins} và tập tin kia có phần mở rộng là \texttt{.dtx}. Thường thì đi kèm với các gói còn có tập tin hướng dẫn như \texttt{readme.txt}. Bạn nên đọc kĩ tập tin này. + +Trong bất kỳ trường hợp nào thì sau khi tải về các gói mở rộng, bạn cần phải thực hiện hai thao tác sau: +\begin{enumerate} +\item Cho hệ thống \TeX{} sẵn có biết về sự tồn tại của gói mới này trên hệ thống của bạn. +\item Biên dịch tập tin tải về để biết thêm chi tiết. +\end{enumerate} +Dưới đây là cách thực hiện thao tác thứ nhất: + +\begin{enumerate} +\item Dùng \LaTeX{} để dịch tập tin \texttt{.ins}. Quá trình này sẽ trích ra một tập tin dạng \eei{.sty}. +\item Chuyển tập tin dạng \eei{.sty} đến thư mục mà phiên bản \TeX{} trên máy bạn có thể tìm thấy chúng (thông thường thì bạn nên đặt nó trong thư mục \texttt{\ldots/\emph{localtexmf}/tex/latex}. +\item Cập nhật lại cơ sở dữ liệu lưu trữ các tập tin trong phiên bản \TeX{} trên máy của bạn. Tuỳ theo các phiên bản của \LaTeX{} mà bạn có thể sử dụng các lệnh tương ứng như: với teTeX, fpTeX là \texttt{texhash}; web2c là +\texttt{maktexlsr}; MikTeX là \texttt{initexmf -update-fndb} hay sử dụng giao diện đồ họa. +\end{enumerate} + +\noindent Bây giờ bạn có thể trích tài liệu hướng dẫn của gói từ tập tin dạng \texttt{.dtx}: + +\begin{enumerate} +\item Chạy \LaTeX{} đối với tập tin \texttt{.dtx}. Kết quả tạo ra là tập tin \texttt{.dvi}. Lưu ý rằng có thể bạn sẽ phải chạy +\LaTeX{} nhiều lần để các tham chiếu chéo được chính xác. +\item Kiểm tra xem \LaTeX{} có tạo ra tập tin \texttt{.idx} hay không. Nếu bạn không tin thấy tập tin này thì bạn có thể tiến hành bước ~\ref{step:final}. +\item Để tạo ra tập tin chỉ mục, sử dụng lệnh sau:\\ +\fbox{\texttt{makeindex -s gind.ist \textit{tên tập tin}}}\\ +(với \textit{tên tập tin} là tên của tập tin chính (không có phần mở rộng)). +\item Chạy \LaTeX{} để dịch tập tin \texttt{.dtx} thêm một lần nữa. \label{step:next}. +\item Tạo tập tin dạng \texttt{.ps} hay \texttt{.pdf} để việc xem được dễ dàng và đẹp mắt hơn.\label{step:final} +\end{enumerate} + +Đôi khi bạn sẽ thấy rằng \LaTeX{} cũng tạo ra tập tin \texttt{.glo} (tự điển thuật ngữ). Dùng lệnh sau ở giữa +bước~\ref{step:next} và~\ref{step:final}: \noindent\texttt{makeindex -s gglo.ist -o \textit{name}.gls +\textit{name}.glo} + +\noindent Nhớ dùng \LaTeX{} để dịch tập tin \texttt{.dtx} lần cuối trước khi thực hiện bước~\ref{step:final}. + + + +\section{Làm việc với pdf\LaTeX} \label{sec:pdftex}\index{PDF} +\secby{Daniel Flipo}{Daniel.Flipo@univ-lille1.fr} +PDF là một kiểu định dạng tài liệu \wi{siêu văn bản}. Giống như các trang web, một số từ trong tài liệu dạng PDF sẽ được đánh dấu như các siêu liên kết. Chúng sẽ liên kết đến các vị trí khác trong tài liệu hay thậm chí là trong các tài liệu khác. Khi bạn nhấn chuột vào các siêu liên kết này, bạn sẽ được chuyển đến vị trí liên kết tương ứng. Đối với \LaTeX{} thì điều này có nghĩa là các lệnh \ci{ref} và \ci{pageref} sẽ đưa vào các siêu liên kết. Do đó bảng nội dung, chỉ mục và các cấu trúc tương tự khác trở thành một tập hợp của các siêu liên kết. + +Hiện nay, hầu hết các trang web đều được viết bằng ngôn ngữ HTML (\emph{HyperText Markup Language}). Kiểu định dạng theo ngôn ngữ này có hai điểm bất lợi khi soạn thảo các tài liệu khoa học: +\begin{enumerate} +\item Nói chung thì việc đưa các công thức toán học vào tài liệu HTML không được hỗ trợ. Mặc dù chúng ta đã có chuẩn để thực hiện điều này nhưng hầu hết các trình duyệt hiện nay chưa hỗ trợ hay thiếu các font chữ cần thiết. +\item Việc in ấn các tài liệu HTML thật đơn giản nhưng kết quả xuất ra lại phụ thuộc rất nhiều vào hệ điều hành và trình duyệt. Điều này có nghĩa là các bản in của cùng một tài liệu có thể trông rất khác nhau. Bên cạnh đó chất lượng của bản in sẽ kém xa so với \LaTeX{}. +\end{enumerate} +Hiện nay, người ta đã có rất nhiều cố gắng để tạo ra các chương trình chuyển từ tập tin \LaTeX{} sang tập tin HTML. Trong số đó có một số chương trình thực hiện tương đối thành công việc tạo ra các trang web rõ ràng, dễ đọc từ một tài liệu được soạn thảo bằng \LaTeX{}. Tuy nhiên, hầu hết các phần mềm đều không làm tốt vì chúng không thể giữ nguyên định dạng ban đầu. Đối với các tài liệu sử dụng các tính năng phức tạp của \LaTeX{} và các gói mở rộng thì các chương trình chuyển từ \LaTeX{} sang HTML không thể thực hiện tốt việc chuyển đổi. Do đó, đối với các tác giả muốn đưa tài liệu của mình lên web nhưng muốn giữ nguyên cách trình bày bản in với chất lượng cao đã lựa chọn PDF (\emph{Portable Document Format}) +như là một giải pháp tốt. Hơn nữa, hầu hết các trình duyệt web ngày nay đều hỗ trợ việc đọc tài liệu dạng này sau khi cài thêm một phần mở rộng cần thiết. + +Khác với các địng dạng DVI và PS, tài liệu dạng PDF có thể được xem và in ấn trên hầu hết các hệ điều hành (Unix, Mac, Windows) nhờ vào phần mềm Adobe Acrobat Reader hay xpdf (có thể tải về miễn phí từ trang web của Adobe). Do đó việc phân phối tài liệu theo định dạng PDF sẽ độc giả đến với tài liệu của bạn một cách dễ dàng hơn rất nhiều. + +\subsection{Các tài liệu PDF dành cho Web} +Việc tạo ra tập tin PDF từ tập tin nguồn của \LaTeX{} đã trở nên rất dễ dàng nhờ vào phần mềm pdf\TeX{} được thiết kế bởi Hàn Thế Thành. pdf\TeX{} tạo ra tập tin đầu ra dạng PDF còn \TeX{} sẽ tạo ra tập tin dạng DVI. Ngoài ra, ta cũng có bản pdf\LaTeX{} có tác dụng tạo ra tập tin PDF từ tập tin nguồn của \LaTeX{}.\index{pdftex@pdf\TeX}\index{pdftex@pdf\LaTeX{}} + +Cả hai bản pdf\TeX{} và pdf\LaTeX{} đều được cài đặt sẵn đối với các phiên bản mới của \TeX{} như là te\TeX{}, fp\TeX{}, Mik\TeX, \TeX{}Live và CMac\TeX{}. + +Để tạo ra tập tin PDF thay vì tập tin DVI, bạn chỉ cần thay lệnh \texttt{latex file.tex} bằng lệnh \texttt{pdflatex file.tex}. Trên các hệ thống mà \LaTeX{} không được gọi từ dòng lệnh, bạn có thể tìm thấy được nút điều khiển tương ứng với lệnh này. + +Trong \LaTeX{}, bạn có thể đặt kích thước trang giấy (như \texttt{a4paper} hay \texttt{letterpaper}) thông qua tham số tùy +chọn của lệnh \verb|\documentclass{..}|. Các lệnh trên cũng làm việc với pdf\LaTeX{}. Ngoài ra, pdf\LaTeX{} còn cần phải biết thêm kích thước của trang giấy chứ không chỉ phần diện tích được dùng để trình bày tài liệu.\index{paper size} Khi sử dụng gói \pai{hyperref} (xem thêm trang \pageref{ssec:pdfhyperref}), kích thước của trang có thể được thay đổi một cách tự động. Nếu không, bạn sẽ phải tự điều chỉnh kích thước trang giấy bằng cách đưa và các lệnh sau trong phần tựa đề của tài liệu: +\begin{code} +\begin{verbatim} +\pdfpagewidth=\paperwidth +\pdfpageheight=\paperheight +\end{verbatim} +\end{code} +Mục này sẽ không đi sâu vào chi tiết liên quan đến sự khác nhau giữa \LaTeX{} và pdf\LaTeX{}. Những khác biệt chính liên quan đến 3 vấn đề sau: việc sử dụng font chữ, định dạng của hình ảnh đưa vào và việc tự cấu hình các siêu liên kết. + +\subsection{Các font chữ} +\wi{pdf\LaTeX} có thể làm việc với tất cả các kiểu font chữ (PK bitmaps, TrueType, PostScript type~1\dots) nhưng chủ yếu là định dạng font của của \LaTeX{}, font PK dạng bitmap cho ra kết quả rất xấu khi tài liệu được xem bằng Acrobat Reader. Để có tài liệu đẹp mắt thì chỉ nên sử dụng các font chữ dạng PostScript Type 1. \emph{Các bản cài đặt mới của \TeX{} sẽ tự động cấu hình việc này. Nếu mọi thứ vận hành tốt thì bạn có thể bỏ qua cả mục này.} + +Chúng ta sẽ không bàn về font chữ trong tài liệu này vì tự \LaTeX{} đã làm tốt việc xử lý các font chữ cũng như việc sử dụng +bộ font chữ riêng của nó để đáp ứng yêu cầu của việc soạn thảo và in ấn các tài liệu khoa học. + +Bộ font \PSi{} dựa vào font chữ Computer Modern và AMSFonts được xây dựng bởi Blue Sky Research và Y\&Y, Inc. Sau đó họ đã chuyển bản quyền sang cho American Mathemcatical Society. Các font chữ này đã được công bố rộng rãi từ năm 1997 và được phân phối kèm theo các phiên bản của \TeX{}. + +Tuy nhiên để soạn thảo tài liệu bằng các ngôn ngữ khác với tiếng Anh bạn cần sử dụng bộ font chữ EC, LH hay CB (xem thêm phần nói về font chữ \texttt{OT1} ở trang~\pageref{OT1}). Vladimir Volovich đã tạo ra nhóm font chữ cm-super bao gồm toàn bộ font EC/TC, EC Concrete, EC Bright và LH. Bạn có thể tải về ở địa chỉ \texttt{CTAN:/fonts/ps-type1/cm-super}. Ngoài ra nó cũng được thêm \TeX{}Live7 và Mik\TeX. Apostolos Syropoulos cũng tạo ra bộ font type~1 CB tiếng Hy Lạp và có thể tải về ở địa chỉ \texttt{CTAN:/tex-archive/fonts/greek/cb}. Tuy nhiên, cả hai bộ font chữ này không có cùng chất lượng in ấn như bộ font chữ Type1 CM của Blue Sky/Y\&Y. + +Đối với các tài liệu sử dụng các ngôn ngữ gốc Latin bạn có một số tuỳ chọn khác. + +%Hiện nay, ta có 2 tập hợp font chữ của \TeX{}: \emph{Computer Modern} (CM), gồm 128 kí tự và được xem là bộ font mặc định. Bộ font thứ hai là \emph{Extended Cork} (EC), bao gồm 256 kí tự. Điểm đặc trưng của bộ font EC là có chứa tất cả các kí tự đặc biệt của các ngôn ngữ-đặc biệt là các kí tự thể hiện dấu trọng âm trong các ngôn ngữ ở châu Âu như là \"a hay \'e. Điều này cho phép việc ngắt quãng các từ ngữ có các chữ cái đặc biệt này. Bạn có thể kích hoạt việc sử dụng bộ font này với lệnh \verb+\usepackage[T1]{fontenc}+ ở phần tựa đề của tài liệu (xem thêm trang \pageref{fontenc}). Thật không may là không có bộ font PostScript Type 1 miễn phí nào cho tập các kí tự EC. Tuy nhiên, có hai phương pháp có thể giải quyết vấn đề này: +\begin{itemize} + \item Bạn có thể sử dụng gói \pai{aeguill}, \emph{Almost European Computer Modern with Guillements}. Bạn chỉ cần thêm dòng \verb+\usepackage{aeguill}+\paih{aeguill} vào phần tựa đề để sử dụng bộ font chữ ảo AE thay vì bộ font EC. + \item Ngoài ra, bạn có thể sử dụng gói \pai{mltex}. Tuy nhiên cách này chỉ có tác dụng khi bạn biên dịch pdf\TeX{} với tham số \wi{mltex}. +\end{itemize} + +Tương tự như hệ thống {Ml\TeX{}}, bộ font chữ ảo AE làm cho \TeX{} tin rằng nó có đầy đủ 256 kí tự bằng cách tạo ra các kí tự bị thiếu trong bộ font CM và thêm vào theo trình tự của font EC. Điều này cho phép chương trình sử dụng bộ font có chất lượng rất cao là type~1 CM. Vì các font chữ có tuân theo encoding T1 nên tính năng tự ngắt từ sẽ hoạt động rất tốt đối với các ngôn ngữ Châu Âu có gốc Latin. Hạn chế duy nhất của hướng tiếp cận này là tính năng tìm kiếm của phần mềm Acrobat Reader không hoạt động được khi bạn cần tìm kiếm nội dung có các kí tự có dấu. + +Đối với tiếng Nga thì bạn có một giải pháp tương tự là sử dụng bộ font chữ ảo C1, bộ font này có thể tải về ở \texttt{ftp://ftp.vsu.ru/pub/tex/font-packs/c1fonts}. Các font chữ này kết hợp bộ font type~1 chuẩn CM của Bluesky và các font chữ type~1 CMCYR của Paradissa và BaKoMa. + +Một giải pháp khác là không sử dụng bộ font CM mà chuyển sang sử dụng các font \PSi{} type~1. Hiện nay, một số font chữ dạng này được cung cấp kèm theo với Acrobat Reader. Bộ font này có kích thước các kí tự khác nhau do đó việc trình bày tài liệu sẽ có chút thay đổi. Thông thường, bộ font chữ này sử dụng nhiều khoảng không hơn các font chữ CM (các font chữ CM rất tiết kiệm khoảng không). Ngoài ra, tính mạch lạc tổng thể của tài liệu cũng bị ảnh hưởng bởi vì các font chữ như Times, Helvetica và Courier (các font chính cần thay đổi) không được thiết kế để trình bày một cách cân đối trong một tài liệu như là các font chữ CM. + +Ngoài ra, còn có 2 bộ font chữ nữa đáp ứng yêu cầu này: \pai{pxfonts}, dựa trên font \emph{Palatino} để định dạng cho văn +bản trong phần thân của tài liệu và gói \pai{txfonts}, dựa trên font \emph{Times}. Để sử dụng hai gói này, ta chỉ cần thêm vào các hàng sau ở phần tựa đề của tài liệu. +\begin{code} +\begin{verbatim} +\usepackage[T1]{fontenc} +\usepackage{pxfonts} +\end{verbatim} +\end{code} + +Bạn có thể thấy cảnh báo sau khi biên dịch tập tin nguồn +\begin{verbatim} +Warning: pdftex (file eurmo10): Font eurmo10 at ... not found +\end{verbatim} +\noindent trong tập tin có phần mở rộng là \texttt{.log}. Điều này có nghĩa là một số font chữ được sử dụng ở đây đã không được tìm thấy. Bạn cần phải sửa các lỗi này nếu không thì trong tài liệu dạng PDF các trang có các kí tự bị thiếu sẽ không được hiển thị. + +Việc thiếu các font chữ EC có chất lượng tương đương với các font chữ CM type~1 luôn được mọi người quan tâm. Do đó, các giải pháp cho vấn đề này sẽ xuất hiện theo thời gian. + +\subsection{Sử dụng hình ảnh} +\label{ssec:pdfgraph} Việc đưa hình ảnh vào trong tài liệu được hỗ trợ tốt nhất với gói \pai{graphicx} (xem trang~\pageref{eps}). Thông qua việc sử dụng các \emph{driver đặc biệt} là \texttt{pdftex}, gói \pai{graphicx} cũng sẽ làm việc tốt với pdf\LaTeX{}: + +\begin{code} +\begin{verbatim} +\usepackage[pdftex]{color,graphicx} +\end{verbatim} +\end{code} +Trong ví dụ trên, ta đã đưa vào tuỳ chọn màu bởi việc sử dụng màu sắc trong tài liệu đã trở nên ngày càng phổ biến. + +Một trong những vấn đề ở đây là dạng EPS (Encapsulated Postscript) \emph{không được hỗ trợ} trong các tập tin dạng PDF. Nếu bạn không định nghĩa một tập tin mở rộng trong lệnh \ci{includegraphics}, gói \pai{graphicx} sẽ tự động tìm tập tin thích hợp (phụ thuộc vào việc chọn \emph{driver}. Đối với \texttt{pdftex}, định dạng của tập tin này có thể là \texttt{.png}, \texttt{.pdf}, \texttt{.jpg}, \texttt{.mps} (MetaPost) và \texttt{.tif}--- nhưng không là \texttt{.eps}. + +Giải pháp đơn giản cho vấn đề này là chuyển các tập tin dạng EPS sang dạng PDF thông qua việc sử dụng tiện ích \texttt{epstopdf}. Đối với các đối tượng hình học vectơ (các hình vẽ), đây là một giải pháp tốt. Tuy nhiên, đối với các dạng bitmap (ảnh, hình được quyét từ ngoài vào) thì giải pháp này không thật sự thuyết phục bởi vì bản thân định dạng PDF đã hỗ trợ việc đưa vào các tập tin PNG và JPEG (PNG thích hợp cho các ảnh có ít màu còn JPEG thích hợp cho các ảnh chụp vì chúng chiếm rất ít chỗ). + +Đôi khi, ta không cần vẽ các hình hình học mà chỉ cần mô tả chúng với các ngôn ngữ đặc biệt (như là \MP\index{metapost@\MP}). Ngôn ngữ này có thể được tìm thấy ở hầu hết các phiên bản được phân phối +của \TeX{} cùng với bản hướng dẫn chi tiết. + +\subsection{Các siêu liên kết} +\label{ssec:pdfhyperref} Gói \pai{hyperref} sẽ đảm nhiệm việc chuyển các tham chiếu trong tài liệu thành siêu liên kết. Để hoàn tất công việc này, ta cần thực hiện một số thao tác hỗ trợ. Bạn cần phải đưa lệnh \verb+\usepackage[pdftex]{hyperref}+ vào vị trí cuối cùng của phần tựa đề của tài liệu. + +Lệnh này có nhiều tham số để tuỳ biến cách làm việc của gói \pai{hyperref}: + +\begin{itemize} +\item một danh sách được phân cách bởi dấu phẩy ở phía sau phần tuỳ chọn của pdftex\\ \verb+\usepackage[pdftex]{hyperref}+ +\item hay các hàng riêng biệt với lệnh +\verb+\hypersetup{+\emph{options}\verb+}+. +\end{itemize} +Mục chọn duy nhất được yêu cầu là \texttt{pdftex}; các mục chọn khác là tuỳ ý và cho phép bạn thay đổi cách làm việc bình thường của gói \pai{hyperref}.\footnote{Bạn cần lưu ý rằng gói \pai{hyperref} không chỉ làm việc với pdf\TeX{}. Gói này cũng có thể được cấu hình để nhúng thông tin riêng dạng PDF vào tập tin DVI của \LaTeX{} (tập tin này sẽ được đưa vào tập tin PS với lệnh \texttt{dvips} và cuối cùng được xử lý Adobe Distiller khi nó chuyển tập tin dạng PS sang PDF.)} Dưới đây là danh sách các giá trị mặc định: +\begin{description} + \item[\texttt{bookmarks (=true,\textit{false})}] hiển thị hay + không hiển thị của sổ Bookmark khi hiển thị tài liệu. + \item[\texttt{unicode (=false,\textit{true})}] cho phép sử dụng các kí tự không có trong ngôn ngữ gốc Latin trong phần bookmarks của Acrobat. + \item [\texttt{pdftoolbar (=true,\textit{false})}] hiển thị hay không hiển thị thanh công cụ của Acrobat khi xem. + \item [\texttt{pdfmenubar (=true,\textit{false})}] hiển thị hay không hiển thị menu của Acrobat. + \item [\texttt{pdffitwindow (=true,\textit{false})}] chỉnh kích thước phóng đại ban đầu khi tập tin pdf được xem. + \item [\texttt{pdftitle (=\{texte\})}] xác định nội dung được hiển thị trong cửa sổ \texttt{Document Info} của Acrobat. + \item [\texttt{pdfauthor (=\{texte\})}] Tên của tác giả. + \item [\texttt{pdfnewwindow (=true,\textit{false})}] xác định xem một cửa sổ mới có được tạo hay không khi liên kết vượt khỏi giới hạn của tài liệu. + \item [\texttt{colorlinks (=true,\textit{false})}] hiển thị ``vùng'' liên kết bằng màu. Các màu sắc của các liên kết có thể + được chọn như sau: + \begin{description} + \item [\texttt{linkcolor (=color,\textit{red})}] màu sắc của + các liên kết ở bên trong của tài liệu (như mục, chương, trang, + \ldots). + \item [\texttt{citecolor (=color,\textit{green})}] màu của các + liên kết đến các trích dẫn (trong danh mục các tài liệu tham + khảo). + \item [\texttt{filecolor (=color,\textit{magenta})}] màu của + các liên kết đến tập tin. + \item [\texttt{urlcolor (=color,\textit{cyan})}] màu của các + liên kết đến các địa chỉ URL (liên kết đến hộp thư, địa chỉ web). + \end{description} +\end{description} + +\vspace{\baselineskip} + +Nếu bạn thấy hài lòng với các định dạng mặc định thì chỉ việc sử +dụng như sau: +\begin{code} +\begin{verbatim} +\usepackage[pdftex]{hyperref} +\end{verbatim} +\end{code} + +Để danh sách các bookmark được liệt kê chi tiết và các liên kết có +màu (giá trị \texttt{=true} là mặc định): +\begin{code} +\begin{verbatim} +\usepackage[pdftex,bookmarks,colorlinks]{hyperref} +\end{verbatim} +\end{code} + +Khi tạo ra các tập tin PDF để in ấn, bạn không nên làm cho các liên kết có màu bởi vì chúng sẽ trở thành màu xám +khi được in ra (chúng trở nên khó đọc và không đẹp mắt). +\begin{code} +\begin{verbatim} +\usepackage{hyperref} +\hypersetup{colorlinks,% + citecolor=black,% + filecolor=black,% + linkcolor=black,% + urlcolor=black,% + pdftex} +\end{verbatim} +\end{code} + +Để cung cấp thông tin cho phần \texttt{Document Info} của tập tin PDF, bạn thực hiện như sau: +\begin{code} +\begin{verbatim} +\usepackage[pdfauthor={Pierre Desproges}% + pdftitle={Des femmes qui tombent},% + pdftex]{hyperref} +\end{verbatim} +\end{code} + +\vspace{\baselineskip} + +Để bổ sung cho các siêu liên kết tự động đối với các tham chiếu chéo, bạn có thể đưa vào các liên kết tường minh như sau: +\begin{lscommand} +\ci{href}\verb|{|\emph{url}\verb|}{|\emph{text}\verb|}| +\end{lscommand} + +Đoạn mã sau +\begin{code} +\begin{verbatim} +Trang web \href{http://www.ctan.org}{CTAN}. +\end{verbatim} +\end{code} +sẽ cho kết quả là ``\href{http://www.ctan.org}{CTAN}''; nhấn chuột vào từ ``\textcolor{magenta}{CTAN}'' sẽ đưa bạn đến với trang web của CTAN. + +Nếu liên kết không hướng đến một địa chỉ URL mà là một tập tin trên máy thì bạn có thể sử dụng lệnh sau: +\begin{verbatim} + Bạn có thể xem tài liệu đầu đủ \href{manual.pdf}{ở đây}. +\end{verbatim} +Khi này, kết quả xuất ra là: ``Bạn có thể xem tài liệu đầy đủ \href{manual.pdf}{ở đây}''. Nhấn chuột vào ``\textcolor{cyan}{ở đây}'' sẽ mở tập tin \texttt{manual.pdf}. (Tập tin sẽ nằm trong thư mục của tài liệu hiện thời). + +Tác giả của một bài báo có thể cung cấp địa chỉ e-mail của mình để người đọc có thể liên hệ với tác giả thông qua lệnh \ci{href} bên trong lệnh \ci{author} trong phần tựa đề của trang trong tài liệu: +\begin{code} +\begin{verbatim} +\author{Nguyễn Tân Khoa $<$\href{mailto:tankhoasp@yahoo.com}% + {tankhoasp@yahoo.com}$>$ +\end{verbatim} +\end{code} +Lưu ý rằng bạn phải nhập vào liên kết và cả phần văn bản để nó được hiển thị trên trang giấy. Bạn cũng có thể soạn thảo như sau:\\ +\verb+\href{mailto:tankhoasp@yahoo.com}{Nguyễn Tân Khoa}+. \\ +Với Acrobat Reader thì mọi việc vẫn diễn ra tốt đẹp nhưng khi in tài liệu ra thì sẽ không ai biết được địa chỉ e-mail của bạn!!! + +\subsection{Vấn đề với các liên kết} +Các thông điệp như: +\begin{verbatim} +! pdfTeX warning (ext4): destination with the same identifier + (name{page.1}) has been already used, duplicate ignored +\end{verbatim} +\noindent xuất hiện khi bộ đếm được khởi động lại. Ví dụ như khi sử dụng lệnh \ci{mainmatter} được cung cấp bởi lớp tài liệu dạng \texttt{book}, bộ đếm sẽ được khỏi động lại là~1 tương ứng với chương đầu tiên của tài liệu. Tuy nhiên, phần ``lời tựa'' của tài liệu cũng được đánh số là trang~1. Khi này, tất cả các liên kết đến ``trang~1'' sẽ không cho kết quả duy nhất nữa! Do đó, thông báo là ``\verb+duplicate+ has been \verb+ignored+.'' + +Bộ đếm sẽ thực hiện việc đưa \texttt{plainpages=false} vào mục chọn của các siêu liên kết. Không may là điều này chỉ hỗ trợ việc đếm trang. Một giải pháp triệt để hơn là sử dụng mục chọn \texttt{hypertexnames=false} tuy nhiên khi này các liên kết đến các trang trong phần chỉ mục sẽ không làm việc. + +\subsection{Các vấn đề với Bookmark} +Phần văn bản được hiển thị bởi bookmark không phải lúc nào cũng giống như bạn muốn. Bởi vì các bookmark ``chỉ đơn thuần là văn bản'' cho nên nó sẽ có ít kí tự hơn là phần văn bản của \LaTeX{}. Các siêu liên kết sẽ tự động thấy các lỗi này và đưa ra cảnh báo: +\begin{code} +\begin{verbatim} +Package hyperref Warning: +Token not allowed in a PDFDocEncoded string: +\end{verbatim} +\end{code} +Bạn có thể giải quyết vấn đề này bằng cách cung cấp một chuỗi kí +tự cho các bookmark để tránh các lỗi trên như sau: +\begin{lscommand} +\ci{texorpdfstring}\verb|{|\emph{\TeX{} text}\verb|}{|\emph{Bookmark Text}\verb|}| +\end{lscommand} + +Các biểu thức toán học chính là các đối tượng thường mắc phải lỗi này nhất: +\begin{code} +\begin{verbatim} +\section{\texorpdfstring{$E=mc^2$}% + {E\ =\ mc\texttwosuperior}} +\end{verbatim} +\end{code} +sẽ cho kết quả là ``E=mc2'' trong phần bookmark. + +Việc thay đổi màu sẽ không thực hiện tốt trong các bookmark: +\begin{code} +\verb+\section{\textcolor{red}{Red !}}+ +\end{code} +\noindent sẽ tạo ra chuỗi ``redRed!''. Lệnh \verb+\textcolor+ sẽ được bỏ qua nhưng tham số (red) của nó vẫn được in ra. + +Nếu bạn soạn thảo: +\begin{code} +\verb+\section{\texorpdfstring{\textcolor{red}{Red !}}{Red\ !}}+ +\end{code} +thì kết quả sẽ dễ đọc hơn. + +\subsubsection{Sự tương thích giữa tập tin nguồn trong \LaTeX{} và trong pdf\LaTeX{}} \label{sec:pdfcompat} + +Trong tình huống lý tưởng, tài liệu của bạn sẽ được dịch tốt như nhau với \LaTeX{} và pdf\LaTeX{}. Vấn đề lớn ở đây là việc đưa vào các hình ảnh. Giải pháp cơ bản cho vấn đề này là \emph{bỏ qua} phần mở rộng của tập tin trong lệnh \ci{includegraphics}. Khi này, cả \LaTeX{} và pdf\LaTeX{} sẽ tự động tìm kiếm tập tin có định dạng phù hợp trong thư mục hiện thời. Việc bạn cần làm là tạo ra các phiên bản tương ứng của tập tin hình ảnh. \LaTeX{} sẽ tìm kiếm tập tin dạng \texttt{.eps} còn pdf\LaTeX{} sẽ tìm các tập tin có phần mở rộng là \texttt{.png}, \texttt{.pdf}, \texttt{.jpg}, +\text{.mps} hay \texttt{.tif} (theo thứ tự vừa nêu). + +Đối với các trường hợp bạn muốn sử dụng các mã khác nhau cho các phiên bản PDF khác nhau của tài liệu của bạn, bạn có thể thêm vào: +\begin{code} +\begin{verbatim} +\newif\ifPDF +\ifx\pdfoutput\undefined\PDFfalse +\else\ifnum\pdfoutput > 0\PDFtrue + \else\PDFfalse + \fi +\fi +\end{verbatim} +\end{code} +như là các hàng lệnh đầu tiên của tài liệu. Những hàng lệnh này sẽ xác định một lệnh đặc biệt cho phép bạn dễ dàng viết các đoạn mã diều kiện: +\begin{code} +\begin{verbatim} +\ifPDF + \usepackage[T1]{fontenc} + \usepackage{aeguill} + \usepackage[pdftex]{graphicx,color} + \usepackage[pdftex]{hyperref} +\else + \usepackage[T1]{fontenc} + \usepackage[dvips]{graphicx} + \usepackage[dvips]{hyperref} +\fi +\end{verbatim} +\end{code} +Trong ví dụ trên, bạn có thể thấy rằng tôi đã đưa vào gói siêu liên kết cho cả phiên bản PDF và không phải PDF. Hiệu quả của việc đưa vào các lệnh trên là lệnh \ci{href} làm việc tốt trong tất cả các trường hợp mà không phải đưa vào chỉ thị điều khiển mỗi lần sử dụng lệnh \ci{href}. + +Lưu ý rằng trong các phiên bản \TeX{} hiện nay (ví dụ như \TeX{}Live), lựa chọn giữa \texttt{pdftex} và \texttt{dvips} khi +sử dụng gói \pai{graphicx} và \pai{color} sẽ tự động được xác định một cách tự động trong tập tin cấu hình \texttt{graphics.cfg} và \texttt{color.cfg}. + +%\section{Trình diễn với gói \pai{pdfscreen}} +%\label{sec:pdfscreen} +%\secby{Daniel Flipo}{Daniel.Flipo@univ-lille1.fr} +%Bình thường, bạn có thể trình diễn kết quả của tài liệu khoa học của bạn trên một tấm bảng với đèn chiếu hay trực tiếp từ máy tính xách tay có sử dụng phần mềm trình diễn. +% +%Với \wi{pdf\LaTeX} và gói \pai{pdfscreen}, bạn có thể tạo nên các +%``slide'' trong tập tin PDF, có đầy đủ tính năng (màu sắc, sống +%động) như \emph{MS PowerPoint}. Ngoài ra, tập tin của bạn còn có +%tính khả chuyển cao (có thể được xem trên các hệ điều hành khác +%nhau với phần mềm Acrobat Reader). +% +%Lớp \pai{pdfscreen} sử dụng gói \pai{graphicx}, \pai{color} và +%\pai{hyperref} với các mục chọn phỏng theo các cách trình diễn +%trên màn hình. +% +%%La figure~\ref{fig:pdfscr} contient un exemple de fichier minimal # +%%compiler avec \wi{pdf\LaTeX} et le +%%rộsultat produit. +% +%% ẫcran capturộ par ImageMagick (man ImageMagick) fonction ô import ằ +%% et convertie en jpg toujours par ImageMagick. +%\begin{figure}[htbp] +%\begin{verbatim} +%\documentclass[pdftex,12pt]{article} +%%%% các phần mở rộng khác %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%\usepackage[latin1]{inputenc} +%\usepackage[english]{babel} +%\usepackage[T1]{fontenc} +%\usepackage{aeguill} +%%%% sử dụng gói pdfscreen %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%\usepackage[screen,panelleft,chocolate]{pdfscreen} +%% định dạng màn hình +%\panelwidth=25mm +%%% height width +%\screensize{150mm}{200mm} +%%% left right top bottom +%\marginsize{42mm}{8mm}{10mm}{10mm} +%% màu sắc hay ảnh nền +%\overlayempty +%\definecolor{mybg}{rgb}{1,0.9,0.7} +%\backgroundcolor{mybg} +%% Logo +%\emblema{MyLogo} +%%%% với PPower4 (post-processor) %%%%%%%%%%%%%%%%%%%%%%%% +%\usepackage{pause} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%\begin{document} +%\begin{slide} +%\begin{itemize} +%\item Tin tốt\dots \pause +%\item Tin xấu +%\end{itemize} +%\end{slide} +%\end{document} +%\end{verbatim} +%% \begin{center} +%% \includegraphics[width=.8\textwidth]{pdfscr} +% \caption{Ví dụ về tập tin dữ liệu vào sử dụng gói \pai{pdfscreen}} +% \label{fig:pdfscr} +%% \end{center} +%\end{figure} +% +%Để tạo ra dạng tập tin này, bạn chỉ cần làm việc một cách bình +%thường với kiểu tài liệu là \texttt{article}. Hình +%\ref{fig:pdfscr} cho thấy ví dụ về tập tin dữ liệu vào. Trước +%tiên, bạn phải nạp vào gói \pai{pdfscreen} cùng với các tuỳ chọn +%tương ứng: +%\begin{description} +%\item[\texttt{screen}]: trình diễn trên màn hình. Đối với các bản +%trình diễn được in ra thì bạn sử dụng mục chọn \texttt{print}. +%\item[\texttt{panelright}] đặt bảng điều khiển việc di chuyển giữa +%các ``slide'' ở góc phải màn hình. Ngược lại, để đặt bảng điều +%khiển ở góc trái, bạn có thể sử dụng mục chọn \texttt{panelleft}. +%\item[\texttt{french}] hay các ngôn ngữ được hỗ trợ khác để +%\LaTeX{} xác định tên của các nút trong bảng điều khiển cho phù +%hợp. Mục chọn này độc lập với các mục chọn được chỉnh với các gói +%``babel''. \item[\texttt{chocolate}] màu sắc của bảng điều khiển. +%Các lựa chọn khác là \texttt{gray}, \texttt{orange}, +%\texttt{palegreen}, +% \texttt{bluelace} và \texttt{blue} (mặc định). +%\end{description} +%Tiếp đến, bạn sẽ cấu trúc hình cho việc hiển thị. Vì các bản trình +%diễn thường co dãn theo kích thước thật của màn hình hiển thị, do +%đó thông tin này sẽ được sử dụng để chỉnh kích thước font chữ. +%\begin{description} +%\item[\ci{panelwidth}] xác định kích thước của bảng điều khiển. +%\item[\ci{screensize}\texttt{\{}\emph{width}\texttt{\}\{}\emph{height}\texttt{\}}] +% xác định chiều rộng và chiều cao của màn hình bao gồm cả bảng +% điều khiển. +%\item[\ci{marginsize}\texttt{\{}\emph{left}\texttt{\}\{}\emph{right}\texttt{\}\{}\emph{top}\texttt{\}\{}\emph{bottom}\texttt{\}}] +% xác định các biên của tài liệu. Trong phần ví dụ trên, tài liệu +% không được canh ở giữa màn hình bởi vì số của các mục được canh +% trái. +%\end{description} +%Bạn có thể sử dụng hình nền ở với một kiểu định dạng bất kỳ được +%hỗ trợ bởi pdf\LaTeX{} thông qua lệnh: +%\begin{lscommand} +%\ci{overlay}\verb|{|\emph{image}\verb|}| +%\end{lscommand} +%hay nếu bạn thích sử dụng phần nền đơn giản, bạn có thể xác định +%màu của nó với lệnh: +%\begin{lscommand} +%\ci{background}\verb|{|\emph{color}\verb|}| +%\end{lscommand} +%Cuối cùng, nếu bạn muốn đặt logo của tổ chức hay công ty của bạn +%vào bảng điều khiển, hãy sử dụng lệnh sau: +%\begin{lscommand} +%\ci{emblema}\verb|{|\emph{logo}\verb|}| +%\end{lscommand} +%Trong khi trình diễn, để các mục từ từ được hiển thị trên màn +%hình, bạn có thể sử dụng gói \pai{pause}. Gói này cung cấp lệnh +%\ci{pause}. Lệnh này sẽ yêu cầu \LaTeX{} tạm ngưng việc hiển thị +%tài liệu. Gói \pai{pause} là một phần của hệ thống +%\texttt{ppower4} ($P^4$: \emph{Pdf Presentation Post-Processor}). +%Hệ thống này sẽ làm cho kết quả xuất ra của pdf\LaTeX{} trình diễn +%theo ý của bạn. Bạn có thể xử lý kết quả xuất ra của pdf\TeX{} +%bằng cách đưa vào quá trình ``xử lý sau''. Lệnh này được gọi như +%sau: +%\begin{lscommand} +%\verb+ppower4 xy.pdf xyz.pdf+ +%\end{lscommand} +% +%Để điều khiển kết quả xuất ra trên từng slide, bạn có thể sử dụng +%môi trường \verb+\begin{slide}+ \ldots \verb+\end{slide}+. Nội +%dung của mỗi slide sẽ được hiển thị ở giữa (theo chiều dọc) trang. +% +%Khi biên dịch ví dụ ở trên, bạn sẽ gặp thông báo lỗi: +% +%\begin{verbatim} +%! pdfTeX warning (dest): name{contents} has been +% referenced but does not exist, replaced by a fixed one +%\end{verbatim} +%Lỗi này là do một nút lệnh trong bảng điều khiển chỉ đến bảng mục +%lục mà ví dụ này không có lệnh \ci{tableofcontents} cho nên liên +%kết bị lỗi. +% +%Để bảng mục lục có thể được hiển thị ngay bên trong bảng điều +%khiển, bạn có thể sử dụng mục chọn \texttt{paneltoc} khi dùng gói +%\pai{pdfscreen}. Điều này chỉ cho ra kết quả tốt khi mà bản trình +%diễn của bạn có ít mục và tên các mục tương đối ngắn. Bạn cần cung +%cấp các tựa đề ngắn ngọn cho các mục trong ngoặc vuông. +% +%Phần giới thiệu ngắn ngọn này chỉ đưa ra những hướng dẫn gợi ý ban +%đầu về tính năng trình diễn của gói \pai{pdfscreen} và +%\texttt{PPower4}. Cả hai gói này đều được cung cấp với tài liệu +%hướng dẫn chi tiết. + +%\section{\texorpdfstring{\Xy}{Xy}-pic} +%\secby{Alberto Manuel Brand\~ao Sim\~oes}{albie@alfarrabio.di.uminho.pt} +%Gói \pai{xy} là một gói đặc biệt để vẽ các biểu đồ. Để sử dụng gói +%này, bạn chỉ việc thêm vào các hàng lệnh sau trong phần tựa đề của +%tài liệu: +%\begin{lscommand} +%\verb|\usepackage[|\emph{options}\verb|]{xy}| +%\end{lscommand} +%Với \emph{options} là một danh sách các hàm của \Xy-pic mà bạn +%muốn nạp vào. Tôi đề nghị bạn đưa vào mục chọn \verb!all! để +%\LaTeX{} nạp tất cả các lệnh của \Xy. +% +%Các biểu đồ của \Xy-pic được vẽ dựa trên mô hình của các ma trận +%trong đó mỗi phần tử của biểu đồ được đặt trong một ô của ma trận: +%\begin{example} +%\begin{displaymath} +%\xymatrix{A & B \\ +% C & D } +%\end{displaymath} +%\end{example} +%Lệnh \ci{xymatrix} có thể được sử dụng trong chế độ toán học. +%Trong ví dụ trên, chúng ta có hai hàng và hai cột. Để tạo biểu đồ +%này, chúng ta chỉ cần thêm vào các muỗi tên tương ứng với lệnh +%\ci{ar}. +%\begin{example} +%\begin{displaymath} +%\xymatrix{ A \ar[r] & B \ar[d] \\ +% D \ar[u] & C \ar[l] } +%\end{displaymath} +%\end{example} +%Lệnh vẽ mũi tên được đặt ở ô dành cho mũi tên. Các tham số ở đây +%là hướng trỏ đến của các mũi tên. (\texttt{u}: mũi tên hướng lên, +%\texttt{d}: mũi tên hướng xuống, \texttt{r}: mũi tên hướng sang +%phải và \texttt{l}: mũi tên hướng sang trái). +%\begin{example} +%\begin{displaymath} +%\xymatrix{ +% A \ar[d] \ar[dr] \ar[r] & B \\ +% D & C } +%\end{displaymath} +%\end{example} +%Để tạo ra các mũi tên theo hướng chéo, bạn chỉ cần thêm vào các +%đối số về hướng. Để có mũi tên đậm hơn, bạn có thể lặp lại các +%tham số về hướng. +%\begin{example} +%\begin{displaymath} +%\xymatrix{ +% A \ar[d] \ar[dr] \ar[drr] & & \\ +% B & C & D } +%\end{displaymath} +%\end{example} +%Bạn có thể vẽ các biểu đồ đẹp bằng cách thêm vào phía trên dấu mũi +%tên các nhãn. Để làm điều này, bạn có thể sử dụng các toán tử viết +%lên trên hay viết xuống dưới. +%\begin{example} +%\begin{displaymath} +%\xymatrix{ +% A \ar[r]^f \ar[d]_g & +% B \ar[d]^{g'} \\ +% D \ar[r]_{f'} & C } +%\end{displaymath} +%\end{example} +%Như bạn đã thấy, bạn có thể sử dụng trong chế độ toán học. Sự khác +%biệt duy nhất là việc viết văn bản lên trên được hiểu là ``viết +%lên phía trên của mũi tên'' còn viết văn bản ở dưới nghĩa là ``ở +%dưới dấu mũi tên''. Còn đây là toán tử thứ ba (thanh ngang) +%\verb+|+. Nó sẽ khiến cho phần văn bản đặt \emph{ngay trên} mũi +%tên. +%\begin{example} +%\begin{displaymath} +%\xymatrix{ +% A \ar[r]|f \ar[d]|g & +% B \ar[d]|{g'} \\ +% D \ar[r]|{f'} & C } +%\end{displaymath} +%\end{example} +% +%Để vẽ các mũi tên có lỗ trống ở giữa, bạn có thể sử dụng lệnh +%\verb!\ar[...]|\hole!. +% +%Trong một số tình huống, điều quan trọng là phân biết sự khác nhau +%giữa các kiểu của dấu mũi tên. Điều này có thể được thực hiện bằng +%cách đặt các nhãn lên trên các mũi tên hay thay đổi diện mạo của +%các mũi tên: +%\begin{example} +%\begin{displaymath} +%\xymatrix{ +% \bullet\ar@{->}[rr] && \bullet\\ +% \bullet\ar@{.<}[rr] && \bullet\\ +% \bullet\ar@{~)}[rr] && \bullet\\ +% \bullet\ar@{=(}[rr] && \bullet\\ +% \bullet\ar@{~/}[rr] && \bullet\\ +% \bullet\ar@{=+}[rr] && \bullet +%} +%\end{displaymath} +%\end{example} +% +%Bạn hãy chú ý sự khác biệt giữa hai biểu đồ dưới đây: +%\begin{example} +%\begin{displaymath} +%\xymatrix{ +% \bullet \ar[r] +% \ar@{.>}[r] & +% \bullet +%} +%\end{displaymath} +%\end{example} +%\begin{example} +%\begin{displaymath} +%\xymatrix{ +% \bullet \ar@/^/[r] +% \ar@/_/@{.>}[r] & +% \bullet +%} +%\end{displaymath} +%\end{example} +% +%Từ bổ sung thêm vào giữa hai dấu gách chéo /~/ xác định cách các +%đường cong được vẽ. Ngoài ra, \Xy-pic cung cấp nhiều cách khác +%nhau để tác động đến việc vẽ các đường cong. Để biết thêm chi +%tiết, bạn có thể tham khảo thêm tài liệu về \Xy-pic. +% +%The modifiers between the slashes define how the curves are drawn. +%\Xy-pic offers many ways to influence the drawing of curves; +%for more information, check \Xy-pic documentation. + +\section{Tạo tài liệu trình diễn với gói \pai{beamer}} +\label{sec:beamer} +\secby{Daniel Flipo}{Daniel.Flipo@univ-lille1.fr} +Thông qua cách viết lên bảng, dùng các loại máy chiếu hay thậm chí trình diễn ngay trên màn mình của máy tính xách tay, bạn có thể giới thiệu các kết quả nghiên cứu của mình đến với nhiều người. + +Sự kết hợp giữa \wi{pdf\LaTeX} và gói \pai{beamer} sẽ giúp bạn soạn các bài trình diễn ấn tượng tương tự như với phần mềm PowerPoint. Hơn thế, việc tập tin được lưu theo định dạng PDF là một thế mạnh rất lớn vì nó giúp bạn mang tài liệu đi khắp nơi do phần mềm Acrobat Reader miễn phí và vận hành trên nhiều nền tảng hệ điều hành khác nhau. + +Gói \pai{beamer} sử dụng gói \pai{graphicx}, \pai{color} và \pai{hyperref} với các tham số được tinh chỉnh đề phù hợp với việc trình diễn trên màn hình. +%La figure~\ref{fig:pdfscr} contient un exemple de fichier minimal à +%compiler avec \wi{pdf\LaTeX} et le +%résultat produit. + +% Écran capturé par ImageMagick (man ImageMagick) fonction « import » +% et convertie en jpg toujours par ImageMagick. + +\begin{figure}[htbp] +\begin{verbatim} +\documentclass[10pt]{beamer} +\mode<beamer>{% + \usetheme[hideothersubsections,right,width=22mm]{Goettingen} +} + +\title{Bài trình diễn đơn giản} +\author[D. Flipo]{Daniel Flipo} +\institute{U.S.T.L. \& GUTenberg} +\titlegraphic{\includegraphics[width=20mm]{USTL}} +\date{2005} + +\begin{document} + +\begin{frame}<handout:0> + \titlepage +\end{frame} + +\section{Ví dụ} + +\begin{frame} + \frametitle{Những việc phải làm vào buổi trưa này Chủ nhật} + \begin{block}{Một là \ldots} + \begin{itemize} + \item dẫn chó đi dạo\dots \pause + \item đọc sách\pause + \item vui đùa với mèo\pause + \end{itemize} + \end{block} + và nhiều việc khác +\end{frame} +\end{document} +\end{verbatim} + \caption{Ví dụ minh hoạ cách sử dụng gói \pai{beamer}} + \label{fig:code-beamer} +\end{figure} + +Sau khi dùng \wi{pdf\LaTeX{}} biên dịch đoạn mã được giới thiệu trong hình~\ref{fig:code-beamer}, bạn sẽ có được tập tin dạng PDF gồm trang tựa đề và trang thứ hai chứa các mục, các mục này sẽ từng bước xuất hiện trên màn hình. + +Gói beamer hỗ trợ xuất kết quả trực tiếp ra tập tin dạng PDF mà không phải thông qua quá trình chuyển sang dạng PostScript như gói \pai{prosper} hay phải thông qua một vài bước xử lý thêm trước khi xuất ra bài trình diễn như gói \pai{ppower4}. Đây chỉ là một trong những tính năng tiên tiến của gói này. + +Dựa vào gói \pai{beamer}, bạn có thể dùng chung tập tin nguồn để biên dịch tài liệu ra thành nhiều phiên bản (version) khác nhau. Các chỉ thị đặc biệt phục vụ cho tính năng này được đặt trong dấu ngoặc ngọn (<>). + +\begin{description} +\item[beamer] tạo ra tập tin trình diễn dạng PDF như đã nói ở trên. +\item[trans] tạo ra các slide. +\item[handout] tạo ra bản in. +\end{description} +\texttt{beamer} là chế độ mặc định. Bạn có thể thay đổi chế độ biên dịch dựa vào các lệnh có tác động toàn cục như +\verb|\documentclass[10pt,handout]{beamer}| để biên dịch thành dạng bản in. + +Giao diện của bài trình diễn sẽ phụ thuộc vào mẫu mà bạn chọn. Bạn có thể chọn các mẫu kèm theo gói beamer hay tự tạo những mẫu riêng phù hợp với mục đích sử dụng của mình. Bạn nên xem thêm trong \texttt{beameruserguide.pdf} để biết thêm chi tiết. + +Bây giờ chúng ta sẽ đi sâu vào chi tiết mã của hình~\ref{fig:code-beamer}. + +Đối với phiên bản dùng để trình diễn trên màn hình \verb|\mode<beamer>| chúng ta đã sử dụng mẫu \emph{Goettingen} để hiển thị khung di chuyển (navigation panel) ngay trong bảng nội dung. Tùy chọn này cho phép chọn kích thước của khung (cụ thể là 22mm trong ví dụ này) và vị trí của khung (ở bên phải nội dung). Tuỳ chọn \emph{hideothersubsections} sẽ hiển thị tựa đề của chương nhưng không hiển thị các mục con bên trong. Đối với hai chế độ còn lại là \verb|\mode<trans>| và \verb|\mode<handout>| thì không có tuỳ chọn gì đặc biệt do đó chúng sẽ được biên dịch và hiển thị theo mặc định. + +Các lệnh \verb|\title{}|, \verb|\author{}|, \verb|\institute{}| và \verb|\titlegraphics{}| sẽ định nội dung cho trang tựa đề của bài trình diễn. Các tham số tuỳ chọn như \verb|\title[]{}| và \verb|\author[]{}| sẽ giúp bạn định tựa đề cũng như phần tác giả cho các phiên bản khác nhau của bài trình diễn trong khung của mẫu \emph{Goettingen}. + +Các lệnh \verb|\section{}| và \verb|\subsection{}| bên ngoài môi trường \ei{frame} sẽ giúp bạn biên soạn tựa đề cũng các tựa đề con của các mục trong khung. + +Các biểu tượng di chuyển nhỏ ở cuối màn hình bên trong khung sẽ giúp bạn di chuyển giữa các trang trong bài trình diễn. Việc hiển thị các biểu tượng này không phụ thuộc vào việc lựa chọn mẫu trình diễn. + +Nội dung của mỗi slide hay trang màn hình cần phải đặt trong môi trường \ei{frame}. Các tham số tuỳ chọn trong cặp ngoặc nhọn (\verb|<| và \verb|>|) sẽ giúp bạn ẩn các slide (hay trang màn hình) theo yêu cầu đối với các phiên bản khác nhau của bài trình diễn. Trong ví dụ trên, chúng ta đã sử dụng lệnh \verb|<handout:0>| nên trang đầu tiên sẽ không được in ra ở phiên bản dùng để in ấn. + +Bạn nên đặt tựa đề cho mỗi slide khác với tựa đề của bài trình diễn, lệnh \verb|\frametitle{}| sẽ giúp bạn thực hiện tác vụ này. Trong trường hợp bạn cần đặt tựa đề con, bạn có thể sử dụng môi trường \ei{block} như trong ví dụ. Ngoài ra bạn cần chú ý rằng lệnh \verb|\section{}| và \verb|\subsection{}| sẽ không xuất ra nội dung tương ứng trên các slide. + +Lệnh \verb|\pause| trong môi trường liệt kê (itemize) sẽ giúp bạn hiển thị từng mục một. Để thêm vào các hiệu ứng bạn có thể dùng các lệnh như \verb|\only|, \verb|\uncover|, \verb|\alt| và \verb|\temporal|. + +In any case make sure you read through the beamer class documentation +\texttt{beameruserguide.pdf} to get a complete picture of what is in +store for you. This package is being actively developed, check out their website +\href{http://latex-beamer.sourceforge.net/}{http://latex-beamer.sourceforge.net/} +to get the latest information. +Để biết thêm thông tin chi tiết bạn nên tham khảo tài liệu \texttt{beameruserguide.pdf}. Gói này đang được phát triển rất nhanh, bạn nên xem thêm thông tin ở trang \href{http://latex-beamer.sourceforge.net/}{http://latex-beamer.sourceforge.net} để có thông tin mới nhất. + +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End:
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/things.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/things.tex new file mode 100644 index 00000000000..6e173e44a7e --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/things.tex @@ -0,0 +1,617 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Things you need to know +% $Id: things.tex,v 1.2 2003/03/19 20:57:47 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\chapter{Những kiến thức cơ bản về \LaTeX{}} + +\begin{intro} + Phần đầu tiên của chương sẽ giới thiệu một cách ngắn gọn sự ra đời + và quá trình phát triển của \LaTeXe{}. Phần hai sẽ tập trung vào các + cấu trúc cơ bản của một tài liệu soạn thảo bằng \LaTeX{}. Sau khi + kết thúc chương này, các bạn sẽ có được những kiến thức căn bản về + cách thức làm việc của \LaTeX{} và điều này sẽ là một nền tảng quan + trọng để bạn có thể hiểu kĩ những chương sau. +\end{intro} + +\section{Tên gọi của trò chơi} +\subsection{\TeX} \TeX{} là một chương trình được thiết kế bởi +\index{Knuth, Donald E.} Donald E. Knuth \cite{texbook}. \TeX{} được +thiết kế nhằm phục vụ cho việc soạn thảo các văn bản thông thường và +các công thức toán học. Knuth bắt đầu thiết kế công cụ sắp chữ \TeX{} +vào năm 1977 để khám phá tìm lực của các thiết bị in ấn điện tử khi mà +nó bắt đầu xâm nhập vào công nghệ in ấn lúc bấy giờ. Ông hy vọng rằng +sẽ tránh được xu hướng làm giảm chất lượng bản in, điều mà các tài +liệu của ông đã bị ảnh hưởng. \TeX{} như chúng ta thấy ngày nay được +phát hành vào năm 1982 cùng với một số nâng cấp được bổ sung vào năm +1989 để hỗ trợ tốt hơn cho các kí tự 8-bit và đa ngôn ngữ. \TeX{} đã +được cải tiến và trở nên cực kỳ ổn định, có thể chạy trên các hệ thống +máy tính khác nhau và gần như là không có lỗi. Các phiên bản của +\TeX{} đang dần tiến đến số $\pi$ và phiên bản hiện nay là $3.141592$. + +\TeX{} được phát âm là ``Tech'', với ``ch'' như trong từ +``Ach''\footnote{Trong tiếng Đức có hai cách phát âm đối với chữ + ``ch''. Một trong hai cách này là âm ``ch'' trong chữ ``Pech'' và + cách đọc này có vẻ phù hợp. Khi được hỏi vè điều này, Knuth đã trả + lời trong Wikipedia tiếng Đức như sau: \emph{Tôi không bực mình khi + mọi người phát âm \TeX{} theo cách riêng của họ \ldots{} và ở Đức + nhiều người phát âm chữ X bởi âm ch nhẹ vì nó theo sao nguyên âm e + chứ không phải ch mạnh khi nó theo sau nguyên âm a. Ở Nga, `tex' + là một từ rất thông dụng và được phát âm là `tyekh'. Tuy nhiên + cách phát âm chính xác nhất là ở Hy Lạp vì họ dùng âm ch mạnh + trong từ ach hay Loch.}} trong tiếng Đức hay từ ``Loch'' trong +tiếgn Scotland. ``ch'' bắt nguồn từ bảng chữ cái của tiếng Hy Lạp, +trong đó X là chữ ``ch'' hay ``chi''. Ngoài ra \TeX{} còn là âm đầu +tiên của từ texnologia (technology) trong tiếng Hy Lạp. Trong môi +trường văn bản thông thường, \TeX{} được viết là \texttt{TeX}. + +\subsection{\LaTeX} \LaTeX{} là một gói các tập lệnh cho phép tác giả +có thể soạn thảo và in ấn tài liệu của mình với chất lượng bản in cao +nhất thông qua việc sử dụng các kiểu trình bày chuyên nghiệp đã được +định nghĩa trước. Ban đầu, \LaTeX{} được thiết kế bởi \index{Lamport, + Leslie} Leslie Lamport~\cite{manual}. \LaTeX{} sử dụng bộ máy định +dạng \TeX{} để làm hạt nhân cơ bản phục vụ cho việc định dạng tài +liệu. Ngày nay, \LaTeX{} được duy trì và phát triển bởi một nhóm những +người yêu thích và nghiên cứu về \TeX{}, đứng đầu là +\index{Mittlebach, Frank} Frank Mittlebach. + +%In 1994 the \LaTeX{} package was updated by the \index{LaTeX3@\LaTeX +% 3Đ\LaTeX 3 team, led by \index{Mittelbach, FrankĐFrank Mittelbach, +%to include some long-requested improvements, and to re\-unify all the +%patched versions which had cropped up since the release of +%\index{LaTeX 2.09@\LaTeX{} 2.09Đ\LaTeX{} 2.09 some years earlier. To +%distinguish the new version from the old, it is called \index{LaTeX +%2e@\LaTeXeĐ\LaTeXe. This documentation deals with \LaTeXe. These days you +%might be hard pressed to find the venerable \LaTeX{} 2.09 installed +%anywhere. + +\LaTeX{} được phát âm là ``Lay-tech'' hay là ``Lah-tech''. +\LaTeX{} trong môi trường văn bản thông thường được viết là +\texttt{LaTeX}. \LaTeXe{} được phát âm là ``Lay-tech two e'' và +viết là \texttt{LaTeX2e}. + +%Figureấ\ref{componentsĐ above % on page \pageref{componentsĐ +%shows how \TeX{} and \LaTeXe{Đ work together. This figure is taken from +%\texttt{wots.texĐ by Kees van der Laan. + +%\begin{figureĐ[btp] +%\begin{linedĐ{0.8\textwidthĐ +%\begin{centerĐ +%\input{kees.figĐ +%\end{centerĐ +%\end{linedĐ +%\caption{Components of a \TeX{} System.Đ \label{componentsĐ +%\end{figureĐ + +\section{Những điều cơ bản} +\subsection{Tác giả, người trình bày sách và người sắp chữ} Trước +khi một tác phẩm được in ấn, tác giả sẽ gửi bản viết tay của mình +đến nhà xuất bản. Sau đó, người trình bày sách sẽ quyết định việc +trình bày tài liệu (độ rộng của cột, font chữ, khoảng cách giữa +các tiêu đề, ~\ldots). Người trình bày sách sẽ ghi lại những chỉ +dẫn định dạng của mình lên bản viết tay và đưa cho người thợ sắp +chữ, và người thợ này sẽ sắp chữ cho quyển sách theo những định +dạng được chỉ dẫn trên bản viết tay. + +Người trình bày sách phải cố gắng để tìm hiểu xem tác giả đã nghĩ +gì khi viết bản viết thảo để có thể quyết định được những hình +thức định dạng phù hợp cho: tiêu đề, trích dẫn, ví dụ, công thức, +\ldots~. Đây là công việc phải dựa nhiều vào kinh nghiệm và nội dung của +bản thảo. + +Trong môi trường \LaTeX{}, \LaTeX{} đóng vai trò là người trình bày sách và sử dụng \TeX{} như là một người thợ sắp chữ. Tuy nhiên, \LaTeX{} ``chỉ'' là một chương trình máy tính do đó nó phải được hướng dẫn bởi người soạn thảo. Người soạn thảo sẽ cung cấp thêm thông tin để mô tả cấu trúc logic của tác phẩm và thông tin này sẽ được viết vào văn bản dưới hình thức là các ``lệnh của \LaTeX{}.'' + +Đây chính là một trong những điểm khác biệt lớn đối với các chương trình soạn thảo \wi{WYSIWYG}\footnote{What you see is what you get.} như là: \emph{MS Word}, hay \emph{Corel WordPerfect}. Với các chương trình trên thì người soạn văn bản sẽ tương tác trực tiếp với chương trình và họ sẽ thấy ngay kết quả của việc đinh dạng. Khi này, văn bản trên màn hình sẽ phản ánh đúng với bản in. + +Khi sử dụng \LaTeX{}, bạn không nhìn thấy bản in ngay khi soạn thảo. Tuy nhiên, sau khi biên dịch bạn có thể xem và sửa đổi nội dung trước khi thực hiện thao tác in ấn. + +\subsection{Trình bày bản in} +Việc thiết kế bản in là một công việc thủ công. Những người soạn văn bản không có khiếu trình bày thường mắc phải một số lỗi định dạng nghiêm trọng vì quan điểm: ``Nếu một tài liệu trông sắc sảo thì nó đã được thiết kế tốt.'' Tuy nhiên các tài liệu được in ấn là để đọc chứ không phải để trưng bày trong một phòng triển lãm nghệ thuật. Do đó, tính rõ ràng, dễ đọc, dễ hiểu phải được đặt lên hàng đầu. Ví dụ: + +\begin{itemize} +\item Kích thước của font chữ và việc đánh số tiêu đề phải được chọn một cách hợp lý nhằm làm cho cấu trúc của các chương, mục trở nên rõ ràng đối với người đọc. +\item Chiều dài của dòng văn bản phải đủ ngắn để không làm mỏi mắt người đọc; đồng thời, nó phải đủ dài để có thể nằm vừa vặn trong trang giấy. Điều này mới nghe qua ta thấy có vẻ mâu thuẫn nhưng đây chính là một yếu tố rất quan trọng quyết định đến tính rõ ràng và đẹp mắt của tài liệu. +\end{itemize} + +Với các hệ soạn thảo \emph{WYSIWYG}, tác giả thường tạo ra các tài liệu sắc sảo, trông đẹp mắt nhưng lại không đảm bảo được tính thống nhất trong định dạng các thành phần của tài liệu. \LaTeX{} ngăn chặn những lỗi như thế bằng cách yêu cầu người soạn thảo phải định nghĩa \emph{cấu trúc logic} của tài liệu. Sau đó, chính \LaTeX{} sẽ lựa chọn cách trình bày tốt nhất. + +\subsection{Những điểm mạnh và điểm yếu của \LaTeX{}} +Khi những người sử dụng các phầm mềm \emph{WYSIWYG} và những người sử dụng LaTeX{} gặp nhau, họ thường tranh luận về ``những \emph{điểm mạnh / điểm yếu} của \LaTeX{} đối với các chương trình soạn thảo thông thường'' và ngược lại. Cách tốt nhất mà bạn nên làm là đứng giữa và lắng nghe. Tuy nhiên, đôi lúc bạn sẽ không thể nào đứng ngoài được! + +\medskip\noindent Dưới đây là một số \emph{điểm mạnh} của \LaTeX{}: + +\begin{itemize} +\item Các mô hình trình bày bản in chuyên nghiệp đã có sẵn và điều này sẽ giúp cho tài liệu do bạn soạn thảo trông thật chuyên nghiệp. +\item Việc soạn thảo các công thức toán học, kỹ thuật được hỗ trợ đến tối đa. +\item Người sử dụng chỉ cần học một số lệnh dễ nhớ để xác định cấu trúc logic của tài liệu. Người dùng gần như không bao giờ cần phải suy nghĩ nhiều đến việc trình bày bản in vì công cụ sắp chữ \TeX{} đã làm việc này một cách tự động. +\item Ngay cả những cấu trúc phức tạp như chú thích, tham chiếu, biểu bảng, mục lục, \ldots cũng được tạo một cách dễ dàng. +\item Bạn có thể sử dụng rất nhiều gói thêm vào (add-on package) miễn phí nhằm bổ sung những tính năng mà \LaTeX{} không hỗ trợ một cách trực tiếp. Ví dụ: các gói thêm vào có thể hỗ trợ việc đưa hình ảnh \textsc{PostScript} hay hỗ trợ việc lập nên các danh mục sách tham khảo theo đúng chuẩn. Bạn có thể tham khảo thêm thông tin về các gói cộng thêm trong tài liệu \companion. +\item \LaTeX{} khuyến khích người soạn thảo viết những tài liệu có cấu trúc rõ ràng bởi vì đây là cơ chế làm việc của \LaTeX{}. +\item \TeX{}, công cụ định dạng của \LaTeXe{}, có tính khả chuyển rất cao và hoàn toàn miễn phí. Do đó, chương trình này sẽ chạy được trên hầu hết các hệ thống phần cứng, hệ điều hành khác nhau. +\end{itemize} + +% +% Thêm vào các ví dụ +% + +\medskip + +\noindent \LaTeX{} cũng có nhiều điểm chưa thuận lợi cho người sử dụng. Bạn có thể liệt kê ra những điểm bất lợi này khi bắt đầu sử dụng \LaTeX{}. Ở đây, tôi xin liệt kê ra một vài điểm như sau: +\begin{itemize} + \item \LaTeX{} không phục vụ tốt cho những kẻ đánh mất lương tri. + \item Mặc dù, đối với một kiểu trình bày văn bản định sẵn, các tham số đình dạng đều có thể thay đổi nhưng việc thiết kế một kiểu trình bày mới hoàn toàn là rất khó khăn và tốn nhiều thời gian.\footnote{Một số tin đồn cho rằng đây sẽ là một trong những điểm yếu được khắc phục tronog phiên bản \LaTeX{}3} + \item Biên soạn những tài liệu không có cấu trúc, hoặc lộn xộn ... là rất khó khăn + \item Trong những bước làm việc đầu tiên bạn có thể dùng chuột nhưng khi sử dụng quen thì con chuột sẽ không phục vụ gì nhiều cho khái nhiệm đánh dấu logic (Logical Markup). +\end{itemize} + +\section{Các tập tin nhập liệu của \LaTeX{}} +Dữ liệu đưa vào cho \LaTeX{} là văn bản thông thường được lưu dưới dạng kí tự \texttt{ASCII}. Bạn có thể soạn thảo tập tin này bằng một chương trình soạn thảo văn bản thông thường như \emph{Notepad}, \emph{vim}, \emph{gvim}, \ldots Tập tin này sẽ chứa phần văn bản cũng như các lệnh định dạng của \LaTeX{}. + +\subsection{Khoảng trắng} +Các kí tự: khoảng trắng hay tab được xem như nhau và được gọi là kí tự ``\wi{khoảng trắng}''. Nhiều kí tự khoảng trắng liên tiếp cũng chỉ được xem là \wi{một} khoảng trắng. Các khoảng trắng ở vị trí bắt đầu một hàng thì được bỏ qua. Ngoài ra kí tự xuống hàng đơn được xem là một khoảng trắng. \index{khoảng trắng! ở đầu hàng} + +Một hàng trắng giữa hai hàng văn bản sẽ xác định việc kết thúc một đoạn văn. \emph{Nhiều hàng trắng} được xem là \emph{một} hàng trắng. + +Từ đây trở đi, các ví dụ sẽ được trình bày như sau: bên trái sẽ là phần dữ liệu được nhập vào và bên phải sẽ là kết quả được xuất ra tương ứng (phần kết quả được xuất ra được đóng khung). + +\begin{example} +Đây là một ví dụ cho thấy +rằng nhiều khoảng +trắng cũng +chỉ được xem là +một khoảng trắng. + + +Đồng thời một hàng trắng +sẽ bắt đầu một đoạn mới. +\end{example} + +\subsection{Một số kí tự đặc biệt} +Những kí tự sau là các kí tự được \wi{dành riêng} hay có một ý nghĩa đặc biệt trong \LaTeX{} hoặc là nó không có mặt trong bất kỳ bộ font chữ nào. Khi bạn nhập chúng vào một cách trực tiếp thì thông thường chúng sẽ không được in ra và đôi khi nó cũng khiến cho \LaTeX{} làm một số việc mà bạn đã không dự đoán trước hoặc chúng cũng có thể khiến cho \LaTeX{} báo lỗi. %Các kí tự đặt biệt đó là: + +\begin{code} +\verb. # $ % ^ & _ { } ~ | . % $ +\end{code} +Bạn sẽ thấy rằng các kí tự này sẽ được sử dụng rất nhiều trong tài +liệu. Để sử dụng các kí hiệu trên trong tài liệu, bạn cần phải thêm vào một tiền tố phía trước là dấu gạch chéo (\bs{}). +\begin{example} +\# \$ \% \^{} \& \_ \{ \} \~{} +\end{example} + +Các kí hiệu khác có thể được in ra trong các công thức toán hay các dấu trọng âm với các chỉ thị lệnh. Dấu gạch chéo (\bs{}) +\emph{không thể} được nhập vào bằng cách thêm vào trước nó một dấu gạch chéo (\verb|\\|) như các trường hợp trên. Khi bạn nhập vào \verb|\\| thì \LaTeX{} sẽ hiểu rằng bạn muốn xuống +hàng\footnote{Bạn nên nhập vào % +\texttt{\$}\ci{backslash}\texttt{\$}. Chỉ thị lệnh này sẽ in ra % +dấu '\bs{}'.}. + +\subsection{Một số lệnh của \LaTeX{}} + +Các lệnh của \LaTeX{} cần phải được nhập vào theo đúng chữ hoa và +chữ thường. Nó có thể có hai dạng thức như sau: +\begin{itemize} + \item Chúng có thể bắt đầu bằng dấu \verb|\| và tiếp theo là tên lệnh (chỉ gồm các kí tự). Các tên lệnh thường được kết thúc bằng một khoảng trắng, một số hay một 'kí hiệu'. + \item Chúng gồm có một dấu vạch chéo ngược (\bs{}) và chỉ đúng một `kí hiệu'. +\end{itemize} +% +% \\* doesn't comply ! +% +% +% Can \3 be a valid command ? (jacoboni) +% +\label{whitespace} + +\LaTeX{} bỏ qua khoảng trắng sau các lệnh. Nếu bạn muốn có khoảng trắng sau các lệnh thì bạn nên nhập thêm vào \verb|{}| và một khoảng trắng hay một lệnh khoảng trắng đặc biệt sau tên lệnh. Việc nhập vào \verb|{}| sẽ ngăn cản \LaTeX{} xoá mất các kí tự khoảng trắng sau tên lệnh. + +\begin{example} +Knuth phân loại người +sử dụng \TeX{} thành +\TeX{}nicians +và \TeX + eperts. +\end{example} +Rõ ràng trong ví dụ trên, khi sử dụng lệnh \verb|\TeX| mà không thêm vào \verb|{ }| thì chữ các khoảng trắng giữa từ `experts' và \verb|\TeX| bị bỏ qua và do đó chúng được viết liền nhau thành \TeX{}experts. + +Một số lệnh cần có \wi{tham số}. Các tham số này sẽ được ghi ở +giữa dấu ngoặc \verb|{ }| ở phía sau tên lệnh. Một số lệnh có yêu +cầu tham số; tuy nhiên, các tham số này là \wi{tuỳ chọn}, khi này nó được +nhập vào trong dấu ngoặc vuông \verb|[ ]|. + +\begin{example} +Bạn có thể \textsl{dựa} vào tôi! +\end{example} + +\begin{example} +Vui lòng bắt đầu một +hàng mới!\newline +Cám ơn! +\end{example} + +\subsection{Các lời chú thích} \index{comments} +Khi mà \LaTeX{} gặp một kí tự \verb|%| thì nó sẽ bỏ qua phần còn lại của hàng đang được xử lý. Ngoài ra, các kí tự xuống hàng và các khoảng trắng ở đầu hàng tiếp theo sẽ được bỏ qua. + +Bạn có thể sử dụng kí tự này để thực hiện việc ghi chú vào tập tin soạn thảo mà không lo lắng việc in chúng ra cùng với bản in hoàn chỉnh. + +\begin{example} +Nó quả là % đơn giản +% tốt hơn <---- +một ví dụ khùng điên, + vô nghĩa +\end{example} + +Ngoài ra, kí tự \texttt{\%} còn có thể được sử dụng để chia các hàng dữ liệu +nhập vào quá dài khi mà các kí tự khoảng trắng hay là xuống hàng +không được phép xuất hiện. + +Với các lời bình dài, bạn có thể sử dụng môi trường được cung cấp +bởi gói \pai{verbatim} là \ei{comment}. Gói này được đưa vào sử dụng thông qua lệnh sau: \verb|\usepackage{verbatim}| + +\begin{example} Đây là một ví dụ khác +\begin{comment} +cũng đơn giản nhưng hữu dụng +\end{comment} +minh hoạ cách đưa lời bình +vào tài liệu. +\end{example} + +Bạn cần chú ý rằng môi trường ghi chú này không làm việc trong những môi trường phức tạp như là các môi trường chứa các công thức toán học. + +\section{Cấu trúc của tập tin nhập liệu} +Khi mà \LaTeXe{} xử lý một tập tin dữ liệu vào, nó sẽ đòi hỏi dữ +liệu vào phải có một \wi{cấu trúc} nhất định. Mỗi tập tin +dữ liệu vào phải được bắt đầu bởi lệnh: +\begin{code} +\verb|\documentclass{...}| +\end{code} + +Lệnh này sẽ xác định kiểu của tài liệu mà bạn muốn soạn thảo. Tiếp +đến, bạn có thể thêm vào các lệnh khác để định dạng cấu trúc của +toàn bộ tài liệu. Ngoài ra, bạn có thể sử dụng các \wi{gói} khác +để thêm vào các tính năng mở rộng không có sẵn trong \LaTeX{}. Các +gói lệnh đó có thể được đưa vào bằng cách sử dụng lệnh +\begin{code} +\verb|\usepackage{...}| +\end{code} + +Khi việc khai báo định dạng của tài liệu đã hoàn tất\footnote{Vùng dữ +liệu nằm giữa \texttt{\bs + documentclass} và \texttt{\bs + begin$\mathtt{\{}$document$\mathtt{\}}$} được gọi là vùng + \emph{\wi{lời tựa}} (tiếng Anh là preamble).}, bạn có thể bắt đầu soạn phần thân của tài liệu với lệnh +\begin{code} +\verb|\begin{document}| +\end{code} + +Bây giờ thì bạn bắt đầu soạn thảo phần văn bản kết hợp với các +lệnh định dạng hữu ích của \LaTeX{}. Khi hoàn tất việc soạn thảo, bạn sẽ +thêm vào lệnh +\begin{code} +\verb|\end{document}| +\end{code} + +Lệnh này sẽ yêu cầu \LaTeX{} kết thúc phiên làm việc. Nội dung còn lại trong tài liệu sẽ bị bỏ qua. + +Hình~\ref{mini} minh hoạ cấu trúc cơ bản của một tập tin nhập liệu được soạn +thảo theo \LaTeX{}. Một ví dụ về \wi{tập tin nhập liệu} phức tạp +hơn sẽ được cung cấp ở hình~\ref{document} + +\begin{figure}[!bp] +\begin{lined}{6cm} +\begin{verbatim} +\documentclass{article} +\begin{document} +Nhỏ gọn nhưng có nhiều ý nghĩa +\end{document} +\end{verbatim} +\end{lined} +\caption{Tập tin nhập liệu cơ bản của \LaTeX{}} \label{mini} +\end{figure} + +\begin{figure}[!bp] +\begin{lined}{10cm} +\begin{verbatim} +\documentclass[a4paper,11pt]{article} +% Tựa đề của tài liệu +\author{H.~Partl} +\title{Minimalism} +\begin{document} +% Tạo tựa đề +\maketitle +% Tạo bảng mục lục +\tableofcontents +\section{Vài điều thú vị} +Một tài liệu thú vị??!! +\section{Tạm biệt các bạn} +\ldots{} đây là phần kết thúc. +\end{document} +\end{verbatim} +\end{lined} +\caption{Ví dụ về một cấu trúc của một tài liệu được soạn thảo +bằng \LaTeX{}.} \label{document} +\end{figure} + +\section{Một số lệnh thông dụng} +Tôi dám cược rằng bạn đang cố gắng thử làm việc dựa trên đoạn dữ liệu +vào ngắn gọn ở trang \pageref{mini}. Dưới đây là một số hướng dẫn: +bản thân của \LaTeX{} không phải là một chương trình có giao diện +thân thiện với người dùng (\texttt{GUI - Graphic User Interfaces}) với các nút nhấn dùng để định dạng văn bản. \LaTeX{} là một phần mềm xử lý tập tin dữ liệu +vào của bạn. Một vài phiên bản cài đặt của \LaTeX{} có giao diện +đồ họa thân thiện và bạn có thể nhấn chuột để biên dịch. Tuy +nhiên, đối với \texttt{dân chuyên nghiệp} thì nghệ thuật nằm ở +cách mà bạn dùng hàng lệnh để dịch một tập tin dữ liệu vào thông +qua các hàng lệnh. Chú ý: chúng tôi giả sử rằng một phiên bản chạy +được của \LaTeX{} đã có trên máy của bạn. + +\begin{enumerate} +\item + Soạn thảo tập tin dữ liệu vào của bạn bằng một chương trình soạn + thảo đơn giản thông thường. Trên hệ thống máy UNIX thì các phần + mềm soạn thảo thông thường đều có khả năng thực hiện thao tác + này. Trên hệ thống Windows thì bạn có thể sử dụng \emph{Notepad} + hay các chương trình khác và xác định dạng lưu trữ là + \emph{Plain text}. Ngoài ra, bạn cần lưu ý rằng phần mở rộng của tập + tin là \emph{.tex}. + +\item + Chạy \LaTeX{} với tập tin dữ liệu vào của bạn. Nếu chương trình thực hiện thành công thì nó sẽ xuất ra một tập tin có phần mở rộng là \emph{.dvi}. Trong một số tình huống, bạn cần phải chạy \LaTeX{} nhiều lần để có thể có được bảng mục lục và một số tham chiếu bên trong văn bản. Khi mà tập tin dữ liệu vào của bạn có lỗi thì \LaTeX{} sẽ báo cho bạn biết và ngừng thao tác xử lý tập tin này. Khi này, hãy nhấn \texttt{Ctrl-D} để trở về dòng lệnh bình thường. + +\begin{lscommand} +\verb+latex thu01.tex+ +\end{lscommand} + +\item Bây giờ bạn có thể xem tập tin DVI. Có nhiều cách để thực hiện tác vụ này. Bạn có thể xem trên màn hình với lệnh +\begin{lscommand} +\verb+xdvi thu01.dvi &+ +\end{lscommand} + +Lưu ý: lệnh trên được thực thi trên nền hệ điều hành Unix, trong chế độ đồ hoạ X11. Nếu bạn làm việc trên nền hệ điều hành Windows bạn có thể sử dụng chương trình tương tự là \texttt{yap} (yet another previewer). + +Ngoài ra, bạn có thể chuyển tập tin dạng DVI sang dạng PostScript để in ấn hay xem với chương trình Ghostscript. + +\begin{lscommand} +\verb+dvips -Pcmz thu01.dvi -o thu01.ps+ +\end{lscommand} + +Nếu hệ thống \LaTeX{} trên máy bạn đã được cài đặt chương trình \texttt{dvipdf} thì bạn có thể chuyển tập tin từ dạng DVI trực tiếp sang dạng PDF. + +\begin{lscommand} +\verb+dvipdf thu01.dvi+ +\end{lscommand} + +\end{enumerate} + + +\section{Cách trình bày một tài liệu} +\subsection{Các lớp tài liệu}\label{sec:documentclass} +Thông tin đầu tiên mà \LaTeX{} cần biết khi xử lý một tập tin dữ liệu vào là kiểu tài liệu mà người soạn thảo muốn tạo ra. Kiểu tài liệu sẽ được xác định với lệnh +\begin{lscommand} +\ci{documentclass}\verb|[|\emph{tuỳ +chọn}\verb|]{|\emph{lớp}\verb|}| +\end{lscommand} + +\noindent Ở đây, \emph{lớp} cho biết kiểu tài liệu cần biên soạn. Bảng~\ref{documentclasses} liệt kê các kiểu tài liệu được định nghĩa sẵn. Bên cạnh các kiểu tài liệu chuẩn, \LaTeX còn cho phép thêm vào các gói mở rộng nhằm hỗ trợ cho việc tạo ra các kiểu tài liệu khác như: thư từ, các trang trình diễn, \ldots. Tham số \emph{\wi{tuỳ chọn}} sẽ tuỳ biến định dạng của các kiểu tài liệu. Các tham số trong mục \emph{tuỳ chọn} phải được cách nhau bởi dấu phẩy. Bạn có thể xem thêm bảng~\ref{options} để biết thêm các tham số thông dụng. + +\begin{table}[!bp] +\caption{ Các lớp tài liệu.} \label{documentclasses} +\begin{lined}{13cm} +\begin{description} + +\item [\normalfont\texttt{article}] phù hợp khi soạn các bài báo trong các tạp chí khoa học, các văn bản trình diễn, các báo cáo ngắn, chương trình hoạt động, thư mời, \ldots \index{article class} + +\item [\normalfont\texttt{report}] phù hợp khi soạn các báo cáo gồm nhiều chương, các quyển sách nhỏ, luận văn,\ldots \index{report class} + +\item [\normalfont\texttt{book}] phù hợp khi soạn sách.\index{book class} + +\item [\normalfont\texttt{slides}] dùng để thiết kế các trang trình diễn. Kiểu tài liệu này này sử dụng các kí tự sans serif cỡ lớn. Bạn có thể sử dụng một kiểu tài liệu khác là Foil\TeX{}\footnote{% + \texttt{CTAN:/tex-archive/macros/latex/contrib/supported/foiltex}}. + \index{slides class}\index{foiltex} +\end{description} +\end{lined} +\end{table} + +\begin{table}[!bp] +\caption{Các tuỳ chọn cho lớp tài liệu.} \label{options} +\begin{lined}{13cm} +\begin{flushleft} +\begin{description} +\item[\normalfont\texttt{10pt}, \texttt{11pt}, \texttt{12pt}] +\quad Chỉnh kích thước font chữ trong cả tài liệu. Nếu không có tuỳ chọn nào được thiết lập thì cỡ chữ mặc đinh được chọn là +\texttt{10pt}.\index{kích thước font chữ của tài liệu}\index{kích thước font cơ bản} + +\item[\normalfont\texttt{a4paper}, \texttt{letterpaper}, \ldots] +\quad Xác định cỡ giấy. Cỡ giấy mặc đinh là \texttt{letterpaper}. Ngoài ra, còn có các kiểu giấy khác như: \texttt{a5paper}, +\texttt{b5paper}, \texttt{executivepaper} + và \texttt{legalpaper}. \index{legal paper} + \index{paper size}\index{A4 paper}\index{letter paper} \index{A5 + paper}\index{B5 paper}\index{executive paper} + +\item[\normalfont\texttt{fleqn}] \quad các công thức được hiển thị ở bên trái thay vì ở chính giữa. + +\item[\normalfont\texttt{leqno}] \quad đánh số các công thức ở bên trái thay vì ở bên phải. + +\item[\normalfont\texttt{titlepage}, \texttt{notitlepage}] \quad xác định việc tạo một trang trắng ngay sau \wi{ tựa đề của tài liệu} hay không. Theo mặc định, lớp \texttt{article} không bắt đầu một trang trắng ngay sau phần tựa đề. Ngược lại, đối với lớp \texttt{report} và \texttt{book} thì ngược lại.\index{title} + +\item[\normalfont\texttt{onecolumn}, \texttt{twocolumn}] \quad Tài liệu được chia làm 1 hay 2 cột. + +\item[\normalfont\texttt{twoside, oneside}] \quad Xác định xem tài liệu sẽ được xuất ra dạng hai hay một mặt. Lớp +\texttt{article} và \texttt{report} được thiết lập là các tài liệu \wi{ một mặt}. Ngược lại, lớp \texttt{book} là dạng tài liệu \wi{hai mặt}. Những tuỳ chọn này chỉ nhằm xác định dạng thức của tài liệu mà thôi. Tuỳ chọn \texttt{twoside} sẽ \emph{ không} thực hiện việc in tài liệu ra dạng hai mặt. + +\item[\normalfont\texttt{landscape}] \quad Thay đổi cách trình bày từ kiểu trang dọc sang trang ngang. + +\item[\normalfont\texttt{openright, openany}] \quad Các chương sẽ bắt đầu ở các trang bên tay phải hay ở trang trống kế tiếp. Tuỳ chọn này không làm việc đối với lớp \texttt{article} bởi vì đối với lớp này thì không có khái niệm về chương. Theo mặc định, lớp \texttt{report} sẽ bắt đầu các chương ở trong kế tiếp và lớp +\texttt{book} bắt đầu các chương ở trang phía tay phải. +\end{description} +\end{flushleft} +\end{lined} +\end{table} + +Ví dụ: một tập tin nguồn của \LaTeX{} có thể được bắt đầu với +\begin{code} +\ci{documentclass}\verb|[11pt,twoside,a4paper]{article}| +\end{code} + +Lệnh này sẽ báo cho \LaTeX{} biết rằng bạn cần tạo một tài liệu kiểu \emph{article} +với cỡ chữ là \emph{11 điểm}, được in \emph{hai mặt} trên khổ giấy \emph{A4}. + +\subsection{Các gói} \index{package} +Trong quá trình soạn thảo tài liệu, bạn sẽ nhận thấy rằng có một số công việc mà \LaTeX{} không thể giải quyết được. Ví dụ, chỉ với \LaTeX{} thì bạn không thể kết hợp các hình ảnh vào tài liệu được, hay đơn giản hơn là bạn không thể đưa màu sắc vào tài liệu. Khi này, để có thể mở rộng khả năng của \LaTeX{}, bạn sẽ cần thêm vào một số công cụ bổ sung (chúng được gọi là các \emph{gói}). Để sử dụng các gói bổ sung này, ta cần phải sử dụng lệnh: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{tuỳ % +chọn}\verb|]{|\emph{tên gói}\verb|}| +\end{lscommand} +\noindent \emph{ tuỳ chọn} là một danh sách các từ khoá nhằm kích hoạt các tính năng của gói. Với các phiên bản \LaTeX{} chuẩn, bạn có thể tìm thấy rất nhiều các gói cơ bản. Ngoài ra, bạn có thể tìm thấy các gói khác được phân phối +riêng lẻ. Bạn có thể vào các trang web có liên quan để biết thêm thông tin về cách cài đặt và sử dụng các gói. Bạn có thể tìm hiểu thêm thông tin chi tiết về mã nguồn, cách thiết kế trong quyển \companion. + +\begin{table}[!hbtp] +\caption{ Một số gói được phân phối chúng với \LaTeX{}.} +\label{packages} +\begin{lined}{11cm} +\begin{description} +\item[\normalfont\pai{doc}] Cung cấp tài liệu về các chương trình của \LaTeX{}. Chúng được mô tả trong tập tin \texttt{doc.dtx}\footnote{ tập tin này có trên máy của bạn và bạn có thể dịch nó sang dạng DVI vào một thư mục bất kỳ bằng cách đánh lệnh \texttt{latex doc.dtx} Với các tập tin được đề cập khác bạn cũng có thể thao tác tương tự.} + +\item[\normalfont\pai{exscale}] Cung cấp các phiên bản có thể thay đổi kích thước của các font chữ về toán.\\ + Thông tin được mô tả trong tập tin \texttt{ltexscale.dtx}. + +\item[\normalfont\pai{fontenc}] Xác định cách \wi{mã hoá font chữ} mà \LaTeX{} nên dùng.\\ + Thông tin được mô tả trong tập tin \texttt{ltoutenc.dtx}. + +\item[\normalfont\pai{ifthen}] Cung cấp các lệnh thao tác trên các biểu mẫu\\ + `if \ldots then do\ldots hay là do\ldots.'\\ Thông tin được mô + tả trong tập tin \texttt{ifthen.dtx} và \companion. + +\item[\normalfont\pai{latexsym}] để truy cập đến các kí hiệu trong các font chữ của \LaTeX{}. Bạn nên sử dụng gói \texttt{latexsym}. Thông tin được mô tả trong tập tin \texttt{latexsym.dtx} và trong +\companion. + +\item[\normalfont\pai{makeidx}] Cung cấp các lệnh để tạo chỉ mục. Thông tin được mô tả trong mục~\ref{sec:indexing} và trong \companion. + +\item[\normalfont\pai{syntonly}] Biên dịch tài liệu mà không tiến hành sắp chữ. Gói này cho phép kiểm tra lỗi cú pháp khi soạn thảo mà không biên dịch cho nên việc kiểm tra diễn ra rất nhanh. + +\item[\normalfont\pai{inputenc}] Hỗ trợ việc nhập liệu theo các bảng mã như ASCII, ISO Latin-1, ISO Latin-2, 437/850 IBM, Apple Macintosh, Next, ANSI-Windows hay do người dùng định nghĩa.\\ +Thông tin được mô tả trong \texttt{inputenc.dtx}. +\end{description} +\end{lined} +\end{table} + +\subsection{Các định dạng trang của trang văn bản} +\LaTeX{} hỗ trợ ba kiểu định dạng sẵn cho phần \wi{tiêu đề} / \wi{phần +chân} (header/footer) của các trang văn bản. Câu lệnh điều khiển: +\begin{lscommand} +\ci{pagestyle}\verb|{|\emph{kiểu}\verb|}| +\end{lscommand} +\noindent Tham số \emph{kiểu} xác định kiểu định dạng được sử dụng. Bảng~\ref{pagestyle} liệt kê tất cả các kiểu định dạng được định nghĩa sẵn của trang văn bản. + +\begin{table}[!thbp] +\caption{Các kiểu định dạng sẵn của trang văn bản trong \LaTeX.} +\label{pagestyle} +\begin{lined}{12cm} +\begin{description} + +\item[\normalfont\texttt{plain}] đánh và xuất số trang ở giữa phần chân ở cuối trang văn bản. Đây là kiểu định dạng mặc định. + +\item[\normalfont\texttt{headings}] xuất tiêu đề của chương hiện tại và số thứ tự của trang văn bản ở vùng tiêu đề của trang; đồng thời, phần chân của trang được để trống. + +\item[\normalfont\texttt{empty}] đặt cả phần tiêu đề và phân chân của trang là rỗng. + +\end{description} +\end{lined} +\end{table} + +Bạn cũng có thể đặt định dạng cho riêng từng trang với lệnh sau: +\begin{lscommand} +\ci{thispagestyle}\verb|{|\emph{style}\verb|}| +\end{lscommand} + +Bạn có thể tham khảo thêm chi tiết về việc trình bày tiêu đề và phần chân của trang văn bản theo ý riêng trong tài liệu +\companion{} hay trong mục~\ref{sec:fancy} ở trang~\pageref{sec:fancy}. + +\section{Một số dạng tập tin thường gặp} +Khi làm việc với \LaTeX{}, có đôi lúc bạn sẽ cảm thấy mình bị lạc giữa một mê cung các tập tin với các phần đuôi mở rộng khác nhau. Dưới đây là danh sách liệt kê các \wi{kiểu tập tin} mà bạn có thể gặp phải khi làm việc với \TeX{}. Lưu ý rằng đây chỉ là một bảng tóm tắt các dạng tập tin thông dụng mà bạn có thể gặp trong khi làm việc với \LaTeX{}. + +\begin{description} + +\item[\eei{.tex}] Tập tin nhập liệu của \LaTeX{} hay \TeX{}. Nó +có thể được biên dịch với lệnh:\ + \texttt{latex}. +\item[\eei{.sty}] Gói lệnh thêm vào cho \LaTeX{}. Nó là một tập +tin riêng lẽ và bạn có thể kết hợp nó vào tập tin tài liệu của bạn +bằng cách sử dụng lệnh: \ + \ci{usepackage}. +\item[\eei{.dtx}] Tài liệu về \TeX{}. Tập tin này là dạng được cung cấp với các tập tin định dạng. Nếu bạn dịch một tập tin .DTX thì bạn sẽ có được tài liệu về các tập lệnh trong gói chứa trong tập tin .DTX. + +\item[\eei{.ins}] Các tập tin cài đặt đi kèm với các tập tin có phần mở rộng là .DTX. Nếu bạn tải về một gói cộng thêm của \LaTeX{} từ trên mạng, thông thường thì bạn sẽ có được một tập tin .dtx và một tập tin .ins. Chạy \LaTeX{} đối với tập tin .ins sẽ được kết quả là tập tin .dtx. + +\item[\eei{.cls}] Tập tin lưu các lớp định nghĩa việc định dạng +tài liệu của bản. Chúng được sử dụng bởi lệnh:\\ +\ci{documentclass}. + +\item[\eei{.fd}] Tập tin mô tả font chữ giúp \LaTeX{} có thông tin về các font chữ mới. +\end{description} + + +Dưới đây là một số tập tin được tạo ra khi bạn sử dụng \LaTeX{} để biên dịch tập tin dữ liệu vào: + +\begin{description} +\item[\eei{.dvi}] Tập tin này mô tả dữ liệu độc lập với thiết bị. Nó chứa đựng kết quả chính của quá trình biên dịch của \LaTeX{}. Bạn có thể xem nội dung của nó bằng các chương trình xem tập tin DVI như \emph{YAP, dvips}, \ldots. + +\item[\eei{.log}] Lưu các thông tin chi tiết về quá trình biên dịch cuối cùng. + +\item[\eei{.toc}] Lưu tiêu đề của tất cả các mục. Nó sẽ được đọc trong lần biên dịch tiếp theo và được sử dụng để tạo bảng mục lục. + +\item[\eei{.lof}] Tương tự như tập tin .toc nhưng nó lưu thông tin về danh sách các hình ảnh. + +\item[\eei{.lot}] Tương tự như hai tập tin trên nhưng nó lưu thông tin về các bảng trong tài liệu. + +\item[\eei{.aux}] Tập tin này chuyển các thông tin biên dịch từ tập tin này đến tập tin khác. Các tập tin .aux này sẽ được dùng để lưu thông tin về các tham chiếu chéo. + +\item[\eei{.idx}] Nếu tài liệu của bạn có trang về chỉ mục thì tập tin này sẽ lưu tất cả các từ khoá. Bạn có thể biện dịch tập tin này với lệnh:\\ + \texttt{makeindex}. Tham khảo thêm chương \ref{sec:indexing} ở trang \pageref{sec:indexing} để biết thêm chi tiết. + +\item[\eei{.ind}] Chứa thông tin đã được dịch từ tập tin .idx. Bạn có thể đính kèm tập tin này vào tài liệu của bạn cho lần biên dịch tiếp theo. + +\item[\eei{.ilg}] Tập tin này lưu trữ thông tin về những gì mà lệnh \texttt{makeindex} đã tiến hành.. +\end{description} + + +\section{Các tài liệu lớn} +Thông thường, khi làm việc với các tài liệu lớn, ta thường chia tài liệu ra làm nhiều phần nhỏ hơn để việc quản lý tài liệu được thuận tiện, dễ dàng hơn. \LaTeX{} cung cấp cho bạn hai lệnh hỗ trợ cho việc này. +\begin{lscommand} +\ci{include}\verb|{|\emph{filename}\verb|}| +\end{lscommand} +\noindent Bạn có thể sử dụng lệnh này ở trong phần thân của tài liệu để chèn vào nội dung của một tập tin khác có tên là +\emph{filename.tex}. Lưu ý rằng \LaTeX{} sẽ không bắt đầu một trang mới trước khi xử lý các dữ liệu trong tập tin dữ liệu vào nhập từ tập tin \emph{filename.tex} + +Lệnh thứ hai có thể sử dụng trong phần tựa đề. Nó cho phép bạn hướng dẫn \LaTeX{} chỉ đưa vào một số tập tin. +\begin{lscommand} +\ci{includeonly}\verb|{|\emph{filename}\verb|,|\emph{filename}% +\verb|,|\ldots\verb|}| +\end{lscommand} + +Sau khi lệnh này được thực thi ở phần tựa đề của tài liệu, thì chỉ có các lệnh \ci{include} ứng với các tập tin trong danh sách tham số của lệnh \ci{includeonly} mới có tác dụng. Lưu ý rằng không có khoảng trắng giữa tên các tập tin trong phần danh sách tham số và các tập tin phải được cách ra bởi dấu phẩy. + +Lệnh \ci{include} tiến hành sắp chữ dữ liệu từ nhập tin ở một trang mới. Việc sử dụng lệnh \ci{includeonly} là rất hữu ích bởi vì các chỉ thị kết thúc trang sẽ không bị di chuyển ngay cả khi một số tập tin đưa vào bị bỏ qua. Nếu không thích việc sắp chữ này thì bạn có thể chèn tập tin vào trực tiếp thông qua lệnh: +\begin{lscommand} +\ci{input}\verb|{|\emph{filename}\verb|}| +\end{lscommand} + +\noindent Lệnh này chỉ đơn thuần là kèm tập tin được chỉ đinh vào +tài liệu hiện thời của bạn mà không kèm theo điều kiện gì cả. + +Nhằm giúp cho \LaTeX{} có thể kiểm tra tài liệu của bạn một cách +nhanh chóng hơn, bạn có thể sử dụng gói \pai{syntonly}. Gói này +cho phép \LaTeX{} lướt qua tài liệu của bạn và chỉ kiểm tra một số +cú pháp và các lệnh nhưng không xuất ra kết quả (tập tin DVI). Khi +sử dụng gói này, \LaTeX{} sẽ chạy rất nhanh và bạn sẽ tiết kiệm +được rất nhiều thời gian. Cách sử dụng gói này rất đơn giản: +\begin{verbatim} +\usepackage{syntonly} +\syntaxonly +\end{verbatim} + +Khi mà bạn muốn tạo ra các trang kết quả thật sự, bạn chỉ việc loại bỏ +gói \emph{syntonly} ra khỏi tài liệu. + +% +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/tiengviet.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/tiengviet.tex new file mode 100644 index 00000000000..eaecd707d60 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/tiengviet.tex @@ -0,0 +1,12 @@ +\chapter{Soạn thảo tài liệu tiếng Việt}
+
+Để soạn thảo được tiếng Việt trong \LaTeX{} bạn cần sử dụng gói +\pai{vn\TeX{}}. Tiến sĩ Hàn Thế Thành, tác giả của pdf\TeX{} và +pdf\LaTeX{}, đã tạo ra gói này. Bạn hãy vào trang +\href{http://vntex.org}{http://vntex.org} +để có được thông tin mới nhất về gói vn\TeX{} cũng như những hỗ trợ +soạn thảo tiếng Việt khác. + +% Local Variables: +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/title.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/title.tex new file mode 100644 index 00000000000..a49dc7f070e --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/title.tex @@ -0,0 +1,65 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: The title page +% $Id: title.tex,v 1.1.1.1 2002/02/26 10:04:20 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\ifx\pdfoutput\undefined % We're not running pdftex +\else \pdfbookmark{Tua de}{title} \fi +\newlength{\centeroffset} +\setlength{\centeroffset}{-0.5\oddsidemargin} +\addtolength{\centeroffset}{0.5\evensidemargin} +%\addtolength{\textwidth}{-\centeroffset} +\thispagestyle{empty} +\vspace*{\stretch{1}} +\noindent\hspace*{\centeroffset}\makebox[0pt][l]{\begin{minipage}{\textwidth} +\flushright +{\Huge\bfseries Một tài liệu ngắn gọn\\ +giới thiệu về \LaTeXe{} + +} +\noindent\rule[-1ex]{\textwidth}{5pt}\\[2.5ex] +\hfill\emph{\Large hay \LaTeXe{} trong \pageref{verylast} phút} +\end{minipage}} + +\vspace{\stretch{1}} +\noindent\hspace*{\centeroffset}\makebox[0pt][l]{ +\begin{minipage}{\textwidth} +\flushright {\bfseries +Biên soạn: Tobias Oetiker\\[1.5ex] +Hubert Partl, Irene Hyna và Elisabeth Schlegl\\[3ex]} +\bfseries{Dịch bởi: Nguyễn Tân Khoa\\} Phiên bản~4.00, Ngày 07 +tháng 06 năm 2005 +\end{minipage}} +%\addtolength{\textwidth}{\centeroffset} +\vspace{\stretch{2}} + + +\pagebreak +\begin{small} + Bản quyền \copyright 2000-2005 thuộc về Oetiker và những người + đóng góp cho tài liệu LShort. ``All rights reserved''. + + %Đây là một tài liệu miễn phí. Bạn có thể phân phối lại tài liệu + %này cho các người khác hay sửa đổi tài liệu (tuân theo những mục + %yêu cầu trong giấy phép bản quyền GNU General Public License của + %Free Software Foundation; phiên bản 2 hay các phiên bản sau). +Đây là một tài liệu miễn phí. Bạn hoàn toàn có thể phân phối lại cho những người sử dụng khác hoặc có thể chỉnh sửa cho phù hợp. Tuy nhiên bạn phải tuân theo những yêu cầu trong giấy phép bản quyền GNU (General Public License của Free Software Foundation; phiên bản 2 hay các phiên bản khác -- theo ý kiến riêng của bạn). + + %Tài liệu này đến tay các bạn với hy vọng là nó sẽ trở nên hữu ích + Tài liệu này được phát hành với hy vọng rằng nó sẽ trở nên hữu ích, + nhưng nó \textbf{KHÔNG KÈM THEO BẤT KỲ SỰ BẢO ĐẢM NÀO}, ngay cả những + đảm bảo ngầm hiểu về việc thương mại hoá hay phải phù hợp với một + đích cụ thể nào đó (vấn đề này bạn có thể tham khảo giấy phép GNU General Public License để biết thêm chi tiết)\@. + + Thông thường, bạn sẽ nhận được một bản sao của giấy phép GNU + General Public License kèm theo tài liệu này; nếu chưa có, bạn + có thể gửi thư đến Free Software Foundation, Inc., + 675 Mass Ave, Cambridge, MA 02139, USA. để có một bản sao. +\end{small} + + +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% coding: utf-8 +% End: diff --git a/Master/texmf-dist/doc/latex/lshort-vietnamese/src/typeset.tex b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/typeset.tex new file mode 100644 index 00000000000..11a966b9524 --- /dev/null +++ b/Master/texmf-dist/doc/latex/lshort-vietnamese/src/typeset.tex @@ -0,0 +1,1131 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Typesetting Part of LaTeX2e Introduction +% $Id: typeset.tex,v 1.2 2003/03/19 20:57:47 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\chapter{Soạn thảo văn bản} + +\begin{intro} +Sau khi đọc xong chương vừa qua, bạn đã có những kiến thức cơ bản về cấu trúc của một tài liệu được soạn thảo với \LaTeXe{}. Trong chương này, bạn sẽ được cung cấp thêm các thông tin khác để có thể soạn thảo những tài liệu thực sự bằng \LaTeX{}. +\end{intro} + +\section{Cấu trúc văn bản và vấn đề về ngôn ngữ} +\secby{Hanspeter Schmid}{hanspi@schmid-werren.ch} +Điều quan trọng khi soạn thảo một tài liệu (trừ các tài liệu hiện đại DAAC~\footnote{Different At All Cost, một bản dịch của Swiss UVA (Um's Verrecken Anders).}) là khả năng truyền đạt những ý tưởng, thông tin, kiến thức đến độc giả. Độc giả sẽ dễ tiếp thu hơn khi nội dung được soạn thảo và trình bày một cách có hệ thống. Ngoài ra, điều này còn được phản ánh thông qua nghệ thuật in ấn bởi vì bản in sẽ phản ánh cấu trúc logic của ý tưởng và ý nghĩa của các thành phần bên trong. + +\LaTeX{} khác với các hệ soạn thảo văn bản khác ở điểm bạn chỉ cần cung cấp cho nó cấu trúc logic và ý nghĩa của các thành phần của văn bản. Sau đó, mô hình của bản in sẽ được thiết kế một cách tự động sao cho phù hợp với các yêu cầu định dạng trong phần ``tuỳ chọn'' ở đầu tài liệu hay trong các tập tin kèm theo. + +Đơn vị quan trọng nhất trong \LaTeX{} (cũng như trong in ấn) là \wi{đoạn văn}. Chúng ta gọi đó là các ``văn bản đơn vị'' bởi vì một đoạn văn bản sẽ phản ánh những ý nghĩ liền lạc hay một ý tưởng cụ thể. Những mục sau sẽ giúp cho bạn biết được các cách thức để thực hiện các công việc như: yêu cầu \LaTeX{} xuống hàng với lệnh \texttt{\bs\bs}, hay ngắt đoạn bằng cách nhập vào một hàng trắng. Việc quyết định khi nào kết thúc một đoạn văn là rất quan trọng bởi vì các đoạn văn sẽ có nhiệm vụ chuyển tải những ý tưởng, ý nghĩ. Khi mà một ý nghĩ vẫn còn tiếp tục mà ta lại viết nó ở một đoạn văn khác thì sẽ không hợp lí. Ngược lại, ta nên bắt đầu một đoạn văn mới khi ta bắt đầu một dòng suy nghĩ mới. + +Trên thực tế, hầu hết mọi người chưa đánh giá đúng mức vai trò của việc đặt các dấu cách đoạn một cách hợp lý khi soạn thảo tài liệu. Hơn nữa, nhiều người còn không biết được ý nghĩa của việc cách đoạn các đoạn văn; hay cụ thể là nói +về việc ngắt đoạn trong \LaTeX{} mà không hiểu rõ về nó. Bên cạnh đó, việc soạn thảo các công thức Toán học nằm trên cùng một hàng với phần văn bản cũng dễ dẫn đến một số lỗi rất thông dụng. Đây là một số ví dụ: bạn hãy tự kiểm tra xem tại sao có lúc thì các hàng trống (ngắt đoạn) được sử dụng trước và sau một phương trình và đôi lúc lại không. (Đừng lo nếu +bạn không hiểu hết các lệnh trong các ví dụ dưới đây! Các lệnh này sẽ được giải thích chi tiết trong chương phía sau.) + +\begin{code} +\begin{verbatim} +% Thí dụ 1 +\ldots khi mà Albert Einstein giới thiệu phương trình: +\begin{equation} + e = m \cdot c^2 \; , +\end{equation} +thì vào thời điểm đó, nó là phương trình được biết đến nhiều nhất +và đồng thời cũng ít người hiểu được nó nhất. + +% Thí dụ 2 +\ldots theo luật Kirchoff về cường độ dòng điện thì: +\begin{equation} + \sum_{k=1}^{n} I_k = 0 \; . +\end{equation} + +Hiệu điện thế theo luật Kirchoff có công thức là \ldots + +% Thí dụ 3 +\ldots có nhiều lợi điểm. + +\begin{equation} + I_D = I_F - I_R +\end{equation} +là hạt nhân của rất nhiều mẫu transistor khác nhau. \ldots +\end{verbatim} +\end{code} + +Đơn vị nhỏ hơn của văn bản là câu. Trong văn bản tiếng Anh, sau dấu chấm câu sẽ là một khoảng trắng lớn. Khoảng trắng này sẽ lớn hơn khoảng trắng đi sau một chữ viết tắt. \LaTeX{} sẽ cố gắng đoán xem bạn muốn đặt khoảng trắng lớn hay nhỏ trong câu. Nếu \LaTeX{} không làm đúng, bạn cần phải hướng dẫn cho nó. Điều này sẽ được đề cập đến ở phần tiếp theo. + +Cấu trúc của một văn bản còn có thể chia nhỏ thành các phần của câu. Hầu hết các ngôn ngữ đều có quy tắc ngữ pháp phức tạp riêng. Bạn cần tham khảo thêm tài liệu về cấu trúc ngữ pháp của tiếng Việt để có thể đặt dấu cho đúng. + +Cuối cùng, bên cạnh việc sắp xếp các đoạn văn một cách hợp lý, bạn cần phải sắp xếp chúng theo cấp bậc có thứ tự như: phần, chương, mục, mục con, \ldots~. + +\section{Định dạng việc xuống hàng và sang trang} +\subsection{Canh lề các đoạn văn} +Sách, tài liệu, \ldots~thường được sắp chữ với các hàng có độ dài bằng nhau. Do đó, \LaTeX{} sẽ tự động chèn vào một cách tối ưu các khoảng trắng và \wi{kí tự xuống hàng} cho cả đoạn văn. Khi cần, \LaTeX{} cũng sẽ ngắt các từ quá dài, không nằm gọn trên một hàng. Ngoài ra, việc đinh dạng các đoạn văn vẫn còn phụ thuộc vào kiểu tài liệu mà ta muốn tạo. Thông thường thì hàng đầu tiên của đoạn văn sẽ thục vào và sẽ không có thêm khoảng trắng giữa câc đoạn văn. Tham khảo +thêm mục~\ref{parsp} để biết thêm chi tiết. + +Trong một số tình huống đặc biệt, bạn cần phải yêu cầu \LaTeX{} +thực hiện việc xuống hàng ngay bằng lệnh sau: +\begin{lscommand} +\ci{\bs} hay \ci{newline} +\end{lscommand} +\noindent Lệnh sau sẽ bắt đầu một hàng mới chứ không phải bắt đầu +một đoạn mới: + +\begin{lscommand} +\ci{\bs*} +\end{lscommand} +\noindent Lệnh sau sẽ cho phép ngắt trang sau khi xuống hàng: + +\begin{lscommand} +\ci{newpage} +\end{lscommand} +\noindent Các lệnh sau: + +\begin{lscommand} +\ci{linebreak}\verb|[|\emph{n}\verb|]|, +\ci{nolinebreak}\verb|[|\emph{n}\verb|]|, +\ci{pagebreak}\verb|[|\emph{n}\verb|]| và +\ci{nopagebreak}\verb|[|\emph{n}\verb|]| +\end{lscommand} +\noindent sẽ thực hiện theo thứ tự tương ứng các công việc như: xuống hàng, không xuống hàng, sang trang, không sang trang. Ngoài ra, chúng còn cho phép người soạn thảo tác động đến việc xuống hàng và sang trang với tham số kèm theo. Số $n$ ở đây có thể lấy các giá trị từ \emph{1} đến \emph{4}. Khi \emph{n = 4} thì \LaTeX{} sẽ tự động bỏ qua lệnh này nếu kết quả không đẹp mắt. Lưu ý: bạn không nên nhầm lẫn giữa việc ``ngắt'' trang với việc ``tạo mới'' một trang. Ngay cả khi bạn sử dụng lệnh ``ngắt hàng'' hay ``ngắt trang'' thì \LaTeX{} vẫn cố gắng thực hiện việc cân bằng biên phải cũng như chiều dài của trang. Nếu bạn thực sự muốn chuyển sang một hàng mới thì hãy sử dụng lệnh tương ứng (hãy đoán xem nên dùng lệnh nào trong các lệnh ở trên). + +\LaTeX{} luôn cố gắng thực hiện việc xuống hàng một cách hợp lý. Nếu nó không thể tìm thấy cách tốt nhất để ngắt hàng theo chuẩn thì nó sẽ giữ nguyên phần văn bản đó (do đó, phần văn bản này sẽ nằm lấn sang lề phải). Khi này, \LaTeX{} sẽ thông báo khi biên dịch là có phần văn bản nằm lấn ra biên (``\wi{overfull box}'').\footnote{Mặc dù \LaTeX{} đưa ra thông báo lỗi nhưng bạn khó có thể nhìn thấy được phần dư ra này. Nếu bạn sử dụng tham số tuỳ chọn là \texttt{draft} trong lệnh \ci{documentclass} thì các hàng này sẽ được đánh dấu bởi một hàng đen ở biên phải.} Bạn có thể hướng dẫn \LaTeX{} ``linh động'' xử lý tình huống thông qua lệnh \ci{sloppy}. Lệnh này ngăn cản việc tạo ra các dòng quá dài bằng cách tăng khoảng cách giữa các từ -- ngay cả khi mà nó làm cho kết quả xuất ra không mấy đẹp mắt. Khi này, cảnh báo lỗi (``\wi{underfull hbox}'') sẽ xuất hiện. Trong đa số các tình huống thì kết quả trông sẽ không mấy đẹp mắt. Bạn có thể trở lại với cách định dạng ban đầu nhờ vào lệnh \ci{fussy}. + +\subsection{Ngắt từ} \label{hyph} +\LaTeX{} sẽ tự động ngắt từ khi cần thiết. Nếu \LaTeX{} thực hiện việc này không được như ý của bạn thì bạn có thể sử dụng lệnh sau để yêu cầu \LaTeX{} giải quyết trường hợp đặc biệt đó. + +\begin{lscommand} +\ci{hyphenation}\verb|{|\emph{danh sách các từ}\verb|}| +\end{lscommand} +\noindent Lệnh này sẽ làm cho các từ trong danh sách bị ngắt quãng tại các điểm được đánh dấu bởi ``\verb|-|''. Tham số của lệnh này chỉ nên chứa các kí tự thông thường hay các dấu được \LaTeX{} xem như kí tự thông thường. Các gợi ý hướng dẫn cho việc ngắt quãng các từ đối với các ngôn ngữ khác nhau sẽ được lưu lại khi lệnh này được thực hiện. Điều này có nghĩa là nếu bạn đặt lệnh này vào phần tựa đề thì tài liệu của bạn sẽ bị ảnh hưởng bởi cách ngắt quãng từ của tiếng Anh. Nếu bạn sử dụng lệnh này sau phần \verb|\begin{document}|; đồng thời, bạn sử một gói hỗ trợ ngôn ngữ +của bạn như là \pai{babel} thì các hướng dẫn về việc ngắt quãng từ sẽ được kích hoạt thông qua gói \pai{babel}. + +Ví dụ dưới đây sẽ ngắt quãng từ ``hyphenation'' cũng như là từ ``Hyphenation''; đồng thời, nó sẽ ngăn không cho từ ``FORTRAN'', ``Fortran'' và ``fortran'' bị ngắt quãng. Lưu ý rằng không có một kí tự đặc biệt nào được phép có mặt trong danh sách tham số. + +Ví dụ: +\begin{code} +\verb|\hyphenation{FORTRAN Hy-phen-a-tion}| +\end{code} + +Lệnh \ci{-} đặt một cách tuỳ ý dấu cách vào một từ. Đây cũng chính +là điểm ngắt quãng duy nhất của từ. Lệnh này đặc biệt hữu dụng đối +với những từ có kí tự đặc biệt (ví dụ như các kí tự về dấu trọng âm) +bởi vì \LaTeX{} không tự động ngắt quãng các từ có kí hiệu đặc +biệt. +\begin{example} +I think this is: su\-per\-cal\-% +i\-frag\-i\-lis\-tic\-ex\-pi\-% +al\-i\-do\-cious +\end{example} + +Nhiều từ có thể được giữ trên cùng một hàng với lệnh: +\begin{lscommand} +\ci{mbox}\verb|{|\emph{đoạn văn bản}\verb|}| +\end{lscommand} +\noindent Lệnh này cho phép các tham số luôn được giữ trên cùng một hàng. +\begin{example} +Số điện thoại của tôi sẽ thay đổi +trong thời gian ngắn sắp đến. Số +mới sẽ là: \mbox{(08 8561144)}. + +Tham số \mbox{\emph{tên tập tin}} + dùng để lưu tên của tập tin. +\end{example} + +Lệnh \ci{fbox} có tính năng tương tự như lệnh \ci{mbox} những có +thêm đặc điểm là có một hộp vẽ xung quanh phần văn bản. + +\section{Các chuỗi kí tự sẵn có trong \LaTeX{}} + +Trong một số ví dụ ở các trang trước, bạn đã làm quen với một vài +lệnh cơ bản của \LaTeX{} phục vụ cho việc soạn thảo những chuỗi +đặc biệt. + +\vspace{2ex} \noindent +\begin{tabular}{@{}lll@{}} +Tên lệnh & Ví dụ & Mô tả\\ +\hline +\ci{today} & \today & Ngày tháng hiện thời\\ +\ci{TeX} & \TeX & Tên của bộ máy sắp chữ yêu thích của bạn!!!\\ +\ci{LaTeX} & \LaTeX & Tên của trò chơi\\ +\ci{LaTeXe} & \LaTeXe & Phiên bản hiện tại của \LaTeX\\ +\end{tabular} + +\section{Các kí tự đặc biệt và các kí hiệu} + +\subsection{Dấu trích dẫn} + +Bạn \emph{không nên} sử dụng \verb|"| làm \wi{dấu trích dẫn} \index{""@\texttt{""}}. Trong in ấn, người ta thường dùng dấu mở ngoặc và đóng ngoặc đặc biệt. Trong \LaTeX{}, bạn nên sử dụng hai dấu~\verb|`| (dấu huyền) làm dấu mở ngoặc và hai dấu~\verb|'| (dấu lược) làm dấu đóng ngoặc. Đối với móc đơn thì sử dụng mỗi một kí tự tương ứng. +\begin{example} +``Vui lòng nhấn phím `x' + để kết thúc.'' +\end{example} +Bạn có thể thấy rằng qui tắc nhập liệu này không đẹp mắt trong quá soạn thảo nhưng kết quả của bản in là rất ấn tượng. Ngoài ra bạn cần chú ý rằng kí hiệu đóng mở ngoặc có thể khác đi tuỳ thuộc vào font chữ đang sử dụng. + +\subsection{Dấu gạch và dấu ngắt quãng} + +\LaTeX{} cung cấp bốn kiểu \wi{dấu gạch}. Bạn có thể sử dụng ba trong số +đó với số các dấu gạch liên tiếp khác nhau. Dấu gạch thứ tư không +phải là một dấu gạch bình thường. Nó là dấu trừ trong toán học +\index{-} \index{--} \index{---} \index{-@$-$} \index{toán +học!trừ}. +\begin{example} +daughter-in-law, X-rated\\ +pages 13--67\\ yes---or no? +\\ $0$, $1$ +và $-1$ +\end{example} +Tên của các dấu gạch này là: `-' \wi{hyphen}, `--' \wi{en-dash}, +`---' \wi{em-dash} và `$-$' \wi{dấu trừ}. + +\subsection{Dấu ngã (\texorpdfstring{$\sim$}{~})} +\index{www}\index{URL}\index{tilde} Kí tự này thường được thấy +trên các địa chỉ web. Để tạo ra kí tự này trong \LaTeX{}, ban có +thể sử dụng lệnh \verb|\~| tuy nhiên kết quả \~{} không hoàn toàn +là điều ta muốn. Bạn nên soạn thảo như sau: +\begin{example} +http://www.rich.edu/\~{}bush \\ +http://www.clever.edu/$\sim$demo +\end{example} + +\subsection{Kí hiệu về độ \texorpdfstring{($\circ$)}{}} + +Ví dụ dưới đây minh hoạ cho việc in ra một \wi{kí hiệu về độ} trong +\LaTeX{}: +\begin{example} +Nhiệt độ hiện nay là $-30\, +^{\circ}\mathrm{C}$. Tôi sắp +bị đóng +băng đây. +\end{example} + +\subsection{Kí hiệu đồng tiền Euro \texorpdfstring{(\euro{})}{}} + +Ngày nay, khi soạn thảo tài liệu có liên quan đến tiền tệ, bạn sẽ cần sử dụng đến kí hiệu của đồng Euro. Hiện nay, có nhiều font chữ có kí hiệu này. Bạn có thể sử dụng gói \pai{textcomp} để đưa vào kí hiệu của đồng Euro như sau: + +\begin{lscommand} +\ci{usepackage}\verb|{textcomp}| +\end{lscommand} + +\noindent dùng lệnh sau: +\begin{lscommand} +\ci{texteuro} +\end{lscommand} + +\noindent để in ra kí hiệu này. + +Nếu font chữ của bạn không hỗ trợ kí hiệu này hay bạn không thích kí hiệu Euro của font chữ trên, bạn có thể sử dụng một trong cách sau: + +Cách 1: dùng gói \pai{eurosym}. Gói này cung cấp kí hiệu chính thức của đồng euro. +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{official}\verb|]{eurosym}| +\end{lscommand} +Nếu bạn muốn kí hiệu đồng Euro phù hợp với font chữ của bạn thì bạn có thể thay thế tuỳ chọn là \texttt{gen} thay cho tuỳ chọn \texttt{official} + +Cách 2: dùng gói \pai{marvosym}. Gói này cung cấp nhiều kí hiệu khác nhau trong đó có kí hiệu đồng Euro +\begin{lscommand} +\ci{EUR} +\end{lscommand} +\begin{example} +Các lệnh: \texteuro{}, \euro{} +và \euro{1000} trông khác nhau. +\end{example} + +\subsection{Dấu ba chấm (\texorpdfstring{\ldots}{...})} + +Trên các máy đánh chữ, \wi{dấu phẩy} hay \wi{dấu chấm} có cùng một kích thước với các kí tự khác. Trong in ấn sách, các kí tự này chỉ chiếm một khoảng nhỏ và được đặt rất sát kí tự trước nó. Do đó, bạn không thể nhập vào `\wi{dấu ba chấm}' bằng cách nhập 3 dấu chấm liên tiếp nhau. Thay vào đó, ta có một lệnh thực hiện việc này: +\begin{lscommand} +\ci{ldots} +\end{lscommand} +\index{...@\ldots} +\begin{example} +Không phải nhập như thế này ... +mà nên nhập như thế này:\\ +New York, Tokyo, Budapest, \ldots +\end{example} + +\subsection{Chữ ghép, gạch nối} +Một số các tổ hợp các kí tự được sắp chữ không chỉ bằng cách lần lượt đưa vào từng kí tự mà phải sử dụng các kí tự đặc biệt. +\begin{code} +{\large ff fi fl ffi\ldots}\quad thay vì \quad {\large f{}f f{}i +f{}l f{}f{}i \ldots} +\end{code} +Các tổ hợp kí tự này được gọi là chữ ghép và có thể ngăn chặn bằng cách chèn vào \ci{mbox}\verb|{}| giữa hai kí tự cần xử lý. Điều này có thể cần thiết đối với các từ được xây dựng từ hai từ khác. +\begin{example} +\Large Not shelfful\\ +but shelf\mbox{}ful +\end{example} + +\subsection{Dấu trọng âm và các kí tự đặc biệt} +\LaTeX{} hỗ trợ việc sử dụng \wi{dấu trọng âm} và các \wi{kí tự đặc biệt} của các ngôn ngữ khác nhau. Bảng~\ref{accents} liệt kê tất cả các dấu trọng âm được áp dụng đối với chữ \emph{o}. Tương tự, bạn cũng có thể ghép các dấu trọng âm này với các kí tự khác. + +Để đặt một dấu trọng âm phía trên chữ \emph{i} hay \emph{j}, dấu +chấm ở phía trên của nó phải được bỏ đi. Điều này được thực hiện +bằng lệnh \verb|\i| và \verb|\j|. + +\begin{example} +H\^otel, na\"\i ve, \'el\`eve,\\ +sm\o rrebr\o d, !`Se\~norita!,\\ +Sch\"onbrunner Schlo\ss{} +Stra\ss e +\end{example} + +\begin{table}[!hbp] +\caption{Dấu trọng âm và các kí tự đặc biệt.} \label{accents} +\begin{lined}{10cm} +\begin{tabular}{*4{cl}} +\A{\`o} & \A{\'o} & \A{\^o} & \A{\~o} \\ +\A{\=o} & \A{\.o} & \A{\"o} & \B{\c}{c}\\[6pt] +\B{\u}{o} & \B{\v}{o} & \B{\H}{o} & \B{\c}{o} \\ +\B{\d}{o} & \B{\b}{o} & \B{\t}{oo} \\[6pt] +\A{\oe} & \A{\OE} & \A{\ae} & \A{\AE} \\ +\A{\aa} & \A{\AA} \\[6pt] +\A{\o} & \A{\O} & \A{\l} & \A{\L} \\ +\A{\i} & \A{\j} & !` & \verb|!`| & ?` & \verb|?`| +\end{tabular} +\index{dotless \i{} và \j}\index{Scandinavian letters} +\index{ae@\ae}\index{umlaut}\index{grave}\index{acute} +\index{oe@\oe}\index{aa@\aa} + +\bigskip +\end{lined} +\end{table} + +\section{Sự hỗ trợ đối với các ngôn ngữ quốc tế} +\index{international} Khi bạn soạn thảo một tài liệu bằng một ngôn ngữ khác với Tiếng Anh, bạn cần phải cấu hình lại \LaTeX{} cho phù hợp: + +\begin{enumerate} +\item Các chuỗi được tạo một cách tự động\footnote{Mục lục, Danh sách các hình minh họa, \ldots } phải được chuyển sang ngôn ngữ đã chọn. Đối với một số ngôn ngữ, những sự thay đổi này có thể được thực hiện thông qua việc sử dụng gói \pai{babel} thiết kế bởi Johannes Braams. + +\item \LaTeX{} cần biết các qui luật về ngắt quãng từ đối với một ngôn ngữ mới. Việc đưa các luật này vào \LaTeX{} là tương đối phức tạp. Nó đòi hỏi phải xây dựng lại tập tin đinh dạng với các mẫu ngắt quãng từ ngữ sẵn có. Bạn có thể tham khảo thêm \guide{} để biết thêm chi tiết. + +\item Đặc trưng về cách thiết kế bản in của từng ngôn ngữ. Ví dụ, trong tiếng Pháp, trước các dấu hai chầm (:) thường có khoảng trắng. +\end{enumerate} + +Nếu hệ thống của bạn đã được cấu hình phù hợp, bạn có thể kích +hoạt gói \pai{babel} bằng cách thêm vào lệnh: + +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{ngôn ngữ}\verb|]{babel}| +\end{lscommand} +\noindent ở sau lệnh \verb|\documentclass|. Một danh sách các \emph{ngôn ngữ} được xây dựng cho hệ thống \LaTeX{} của bạn sẽ được liệt kê mỗi khi trình biên dịch chạy. Babel sẽ tự động kích hoạt các quy luật ngắt quãng từ tương ứng. Nếu định dạng \LaTeX{} của bạn không hỗ trợ việc ngắt quãng từ ngữ, \pai{babel} vẫn hoạt động nhưng tắt chế độ ngắt từ đi. Điều này sẽ dẫn đến những ảnh hưởng xấu đến kết quả xuất ra của tài liệu. + +\textsf{Babel} cũng xác định một số lệnh mới cho một số ngôn ngữ để đơn giản hoá việc nhập các kí tự đặc biệt. Ví dụ như trong tiếng Đức có nhiều hiện tượng biến âm như (\"a\"o\"u) nên ta sẽ có các lệnh tương ứng để xuất ra các kí tự này. Với \textsf{babel}, bạn có thể nhập vào \"o bằng cách đánh \verb|"o| thay vì~\verb|\"o|. + +Nếu bạn sử dụng gói babel với nhiều ngôn ngữ khác nhau +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{ngôn ngữ A}\verb|,|\emph{ngôn ngữ B}\verb|]{babel}| +\end{lscommand} +\noindent bạn phải sử dụng lệnh +\begin{lscommand} +\ci{selectlanguage}\verb|{|\emph{ngôn ngữA}\verb|}| +\end{lscommand} +\noindent để chọn cụ thể một ngôn ngữ. + +Hầu hết các máy tính hiện đại đều cho phép bạn nhập vào các kí tự đặc biệt từ bàn phím. \LaTeX{} có thể điều khiển các kí tự này thông qua gói \pai{inputenc}: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{bảng mã}\verb|]{inputenc}| +\end{lscommand} + +Khi sử dụng gói này, bạn nên quan tâm đến khả năng người khác không thể xem được những tập tin của bạn trên máy của họ do sự khác biệt về bảng mã. Ví dụ như trong tiếng Đức thì biến âm \"a là tương ứng với kí tự 132 trong hệ điều hành OS/2 nhưng trên các hệ thống Unix sử dụng bảng mã ISO-LATIN~1 là 228, trong khi đó với bẳng mã cp1251 của hệ điều hành Windows thì kí tự này không tồn tại. Do đó, bạn nên sử dụng tính năng này một cách cẩn thận. Các bảng mã sau có thể được sử dụng tuỳ thuộc vào các hệ thống mà bạn làm việc\footnote{Để biết thêm thông tin về các bảng mã dành cho ngôn ngữ Latin và hay ngôn ngữ họ Cyrillic, bạn có thể đọc tài liệu của hai gói tương ứng là \texttt{inputenc.dtx} and \texttt{cyinpenc.dtx}. Xem thêm mục~\ref{sec:Packages} để biết cách tạo tài liệu hướng dẫn của các gói.}: +\begin{center} +\begin{tabular}{l | r | r } +Hệ điều hành & \multicolumn{2}{c}{Bảng mã}\\ + & western latin & cyrillic\\ +\hline +Mac & \iei{applemac} & \iei{macukr} \\ +Unix & \iei{latin1} & \iei{koi8-ru} \\ +Windows & \iei{ansinew} & \iei{cp1251} \\ +DOS, OS/2 & \iei{cp850} & \iei{cp866nav} +\end{tabular} +\end{center} + +Trong trường hợp bạn cần phải soạn thảo một tài liệu đa ngôn ngữ và gặp vấn đề với bảng mã, bạn nên chuyển sang sử dụng bảng mã unicode bằng cách sử dụng gói \pai{ucs}. +\begin{lscommand} +\ci{usepackage}\verb|{ucs}|\\ +\ci{usepackage}\verb|[|\iei{utf8}\verb|]{inputenc}| +\end{lscommand} +\noindent giúp bạn soạn thảo tài liệu theo bảng mã \iei{utf8}. + +``Font encoding'' là một vấn đề khác. Nó định nghĩa vị trí của từng kí tự trong font chữ. Các bảng mã khác nhau có thể được ánh xạ vào một bản ``font encoding''. ``Font encoding'' được quản lý thông qua gói \pai{fontenc}: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{encoding}\verb|]{fontenc}| \index{font encodings} +\end{lscommand} +\noindent với \emph{encoding} là là bảng mã của font chữ. Bạn có thể nạp cùng một lúc nhiều bản mã khác nhau. + +``Font encoding'' mặc định của \LaTeX{} là \label{OT1} \fei{OT1}, đây là ``encoding'' của font chữ Computer Modern \TeX{}. Font chữ này chỉ có 128 kí tự 7-bit. Khi cần đến các kí tự có dấu \TeX{} sẽ tự động kết hợp kí tự thông thường và kí tự dấu lại với nhau. Mặc dù kết quả trông đẹp mắt khi in ấn nhưng cách làm này khiến cho việc ngắt từ tự động không thể thực hiện. Bên cạnh đó các kí tự Hy Lạp hay Cyrillic hay một số kí tự latin đặc biệt không thể tạo được chỉ bằng cách kết hợp kí tự thông thường và kí tự dấu. + +Để giải quyết vấn đề này, một số font 8-bit chữ giống font chữ CM đã ra đời. Các font chữ \emph{Extended Cork} (EC) trong ``encoding'' \fei{T1} chứa các kí tự thông thường, dấu chấm câu, ... cho hầu hết các ngôn ngữ có gốc Latin ở Châu Âu. Các font chữ LH có các kí tự cần thiết để soạn các tài liệu bằng các ngôn ngữ sử dụng ``Cyrillic script''. Vì số kí tự Cyrillic là rất nhiều nên các font này được chia thành bốn ``encoding'' ---\fei{T2A}, \fei{T2B}, \fei{T2C} và~\fei{X2}.\footnote{Bạn có thể tham khảo thêm tài liệu về danh sách các ngôn ngữ được hỗ trợ trong \cite{cyrguide}.} Các font chữ CG chứ các kí tự tronng \fei{LGR} ``encoding'' và dùng để soạn các văn bản tiếng Hy Lạp. + +Thông qua việc sử dụng các font chữ này, bạn có thể sử dụng tính năng ngắt từ như khi soạn thảo tài liệu tiếng Anh. + +\subsection{Sự hỗ trợ đối với tiếng Bồ Đào Nha} + +%\secby{Demerson Andre Polli}{polli@linux.ime.usp.br} +Để kích hoạt tính năng ngắt quãng từ những và thay đổi các chuỗi +gốc sang \wi{tiếng Bồ Đào Nha},\index{Portugu\^es} với lệnh: +\begin{lscommand} +\verb|\usepackage[portuguese]{babel}| +\end{lscommand} +Nếu như bạn đang ở Brazil, bạn có thể thay thế ngôn ngữ bằng +\wi{brazilian}. + +Trong tiếng Bồ Đào Nha, có rất nhiều dấu trọng âm nên bạn cần thêm +vào gói sau + +\begin{lscommand} +\verb|\usepackage[latin1]{inputenc}| +\end{lscommand} +để có thể nhập liệu +\begin{lscommand} +\verb|\usepackage[T1]{fontenc}| +\end{lscommand} +và lệnh trên để tính năng ngắt quãng từ được thực hiện đúng. + +Xem bảng~\ref{portuguese} để biết thêm chi tiết về những gì cần +thêm vào phần tựa đề của tài liệu để sử dụng tính năng hỗ trợ cho +Tiếng Bồ Đào Nha. Lưu ý rằng chúng ta sẽ sử dụng việc mã hoá dữ +liệu vào dạng latin1. Do đó, nó sẽ không làm việc trên nền tảng +Mac hay DOS. Để sử dụng tính năng này, bạn chỉ cần sử dụng cách mã +hoá phù hợp với hệ thống của bạn. + +\begin{table}[btp] +\caption{Phần tựa đề hỗ trợ tiếng Bồ Đào Nha.} \label{portuguese} +\begin{lined}{5cm} +\begin{verbatim} +\usepackage[portuges]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\end{verbatim} +\bigskip +\end{lined} +\end{table} + +%\newpage + +\subsection{Sự hỗ trợ đối với tiếng Pháp} +%\secby{Daniel Flipo}{daniel.flipo@univ-lille1.fr} +Để có thể sử dụng được tính năng hỗ trợ tiếng Pháp trong \LaTeX{}, +bạn có thể sử dụng lệnh sau: + +\begin{lscommand} +\verb|\usepackage[frenchb]{babel}| +\end{lscommand} + +Lưu ý rằng, vì lý do phát triển, tên của gói \textsf{babel} dành +cho tiếng Pháp là \emph{frenchb} hay \emph{francais} chứ không +phải là \emph{french}. + +Tính năng này kích hoạt tính năng ngắt quãng từ trong tiếng Pháp +khi bạn đã cấu hình đúng cho hệ thống \LaTeX{}. Nó cũng sẽ tự động +thay đổi các chuỗi tự động thành tiếng Pháp (như là: Mục lục, Tài +liệu tham khảo, \ldots). Đồng thời, một tập hợp các lệnh mới cũng +sẽ có hiệu lực nhằm hỗ trợ cho việc soạn thảo các tài liệu bằng +tiếng Pháp. Tham khảo thêm mục \ref{cmd-french} để biết thêm chi +tiết . + +\begin{table}[!htbp] +\caption{Các lệnh đặc biệt dành cho tiếng Pháp.} +\label{cmd-french} +\begin{lined}{9cm} +\selectlanguage{french} +\begin{tabular}{ll} +\verb+\og guillemets \fg{}+ \quad &\og guillemets \fg \\[1ex] +\verb+M\up{me}, D\up{r}+ \quad &M\up{me}, D\up{r} \\[1ex] +\verb+1\ier{}, 1\iere{}, 1\ieres{}+ \quad &1\ier{}, 1\iere{}, 1\ieres{}\\[1ex] +\verb+2\ieme{} 4\iemes{}+ \quad &2\ieme{} 4\iemes{}\\[1ex] +\verb+\No 1, \no 2+ \quad &\No 1, \no 2 \\[1ex] +\verb+20~\degres C, 45\degres+ \quad &20~\degres C, 45\degres \\[1ex] +\verb+\bsc{M. Durand}+ \quad &\bsc{M.~Durand} \\[1ex] +\verb+\nombre{1234,56789}+ \quad &\nombre{1234,56789} +\end{tabular} +\selectlanguage{vietnam} +\bigskip +\end{lined} +\end{table} +%\selectlanguage{vietnam} + +Ngoài ra, bạn sẽ thấy rằng cách trình bày các danh sách sẽ thay đổi khi ta chuyển sang tiếng Pháp. Để biết thêm chi tiết về cách làm việc của tuỳ chọn \texttt{frenchb} của gói \textsf{babel} để có thể tuỳ biến tính năng của nó, bạn có thể chạy chương trình dịch của \LaTeX{} để dịch tập tin \texttt{frenchb.dtx} và đọc tập tin kết quả \texttt{frenchb.dvi}. + +\subsection{Sự hỗ trợ đối với tiếng Đức} +Để có thể sử dụng tính năng hỗ trợ này, bạn có thể sử dụng lệnh +sau: +\begin{lscommand} +\verb|\usepackage[german]{babel}| +\end{lscommand} + +Lệnh trên sẽ kích hoạt tính năng ngắt quãng từ đối với tiếng Đức +sau khi bạn đã cấu hình hệ thống \LaTeX{} một cách hợp lý. Ngoài +ra, nó cũng tự động thay đổi các chuỗi tự động sang tiếng Đức. Bên +cạnh đó, tập hợp các lệnh hỗ trợ cho việc soạn thảo văn bản bằng +tiếng Đức cũng sẽ được kích hoạt. Hãy tham khảo thêm~\ref{german} +để biết thêm chi tiết. Đối với gói \pai{inputenc}, tất cả các tính +năng này sẽ bị tắt đi nhưng văn bản của bạn vẫn cố định với một +bảng mã cụ thể. + +\begin{table}[!htbp] +\caption{Một số kí hiệu đặc biệt trong tiếng Đức.} \label{german} +\begin{lined}{8cm} +\selectlanguage{german} +\begin{tabular}{*2{ll}} +\verb|"a| & "a \hspace*{1ex} & \verb|"s| & "s \\[1ex] +\verb|"`| & "` & \verb|"'| & "' \\[1ex] +\verb|"<| or \ci{flqq} & "< & \verb|">| or \ci{frqq} & "> \\[1ex] +\ci{flq} & \flq & \ci{frq} & \frq \\[1ex] +\ci{dq} & " \\ +\end{tabular} +\selectlanguage{vietnam} +\bigskip +\end{lined} +\end{table} + +Trong các tài liệu bằng tiếng Đức, bạn thường gặp các kí hiệu trích dẫn trong tiếng Pháp (\flqq đây là một ví dụ\frqq). Khi sắp chữ cho một tài liệu bằng tiếng Đức, đôi lúc ta thấy rằng không có sự thống nhất về việc này. Đôi khi dấu trích dẫn trông như: \frqq ví dụ\flqq. Nhưng đối với những người Switzerland nói tiếng Đức thì dấu trích dẫn trông giống như trong tiếng Pháp: \flqq trích dẫn \frqq. + +Một vấn đề lớn xuất phát từ việc sử dụng lệnh \verb+\flq+: nếu bạn +sử dụng các font chữ OT1 (theo mặc định) thì dấu trích dẫn sẽ +trông giống như kí hiệu toán ``$\ll$'' và nó sẽ gây ra một số vấn +đề. Do đó, để sử dụng dấu trích dẫn như trên thì bạn nên thêm vào +lệnh sau: \verb|\usepackage[T1]{fontenc}|. + +\subsection[Hỗ trợ đối với tiếng Hàn Quốc]{Hỗ trợ đối với tiếng +Hàn quốc\footnotemark}\label{support_korean}\footnotetext{Phần này +được đưa vào do có rất nhiều câu hỏi xung quanh việc soạn thảo +bằng tiếng Hàn Quốc trong \LaTeX{}. Mục này được soạn thảo bởi +Karnes KIM thay mặt cho nhóm dịch tài liệu này sang tiếng Hàn. +Ngoài ra, nó cũng được dịch sang tiếng Anh bởi SHIN Jungshik và +tóm tắt lại bởi Tobi Oetiker} + +Để sử dụng tính năng này, bạn cần giải quyết 3 vấn đề sau: +\begin{enumerate} +\item Bạn phải có khả năng soạn thảo tập tin dữ liệu vào bằng +tiếng Hàn. Và tập tin dữ liệu này phải đơn thuần là một tập tin +văn bản. Tuy nhiên bởi vì tiếng Hàn sử dụng các kí tự riêng không +có trong bảng mã US-ASCII cho nên các kí tự sẽ trông rất lạ đối +với các chương trình soạn thảo với bảng mã ASCII thông thường. Hai +bảng mã được sử dụng rỗng rãi nhất trong việc soạn thảo tiếng Hàn +là EUC-KR và phần mở rộng của nó để tương thích với bảng mã sử +dụng bởi MS-Windows bằng tiếng Hàn là CP949/Windows-949/UHC. Với +các bảng mã này thì các kí tự trong bảng mã US-ASCII sẽ đại diện +cho kí tự ASCII thông thường tương tự như các bảng mã tương thích +khác như ISO-8859-\textit{x}, EUC-JP, Shift\_JIS và Big5. Mặt +khác, các âm tiết Hangul, Hanjas (Các kí tự Trung Quốc sử dụng +trong tiếng Hàn), Hangul Jamos, Hirakanas, Katakanas, các kí hiệu +hy lạp kirin và các kí hiệu, kí tự khác trong KS~X~1001 sẽ được +đại diện bởi hai quãng tám liên tiếp. Phần đầu tiên lưu tập MSB +của nó. Đến giữa những năm 1990, người ta đã mất rất nhiều công +sức trong việc xây dựng một môi trường hỗ trợ tiếng Hàn đối với +các hệ điều hành không phải bằng tiếng Hàn. Bạn có thể xem thêm ở +địa chỉ \url{http://jshin.net/faq} để lướt qua các thông tin về +làm thế nào để sử dụng tiếng Hàn trong các hệ điều hành không phải +bằng tiếng Hàn trong những năm 1990. Ngày nay, cả ba hệ điều hành +chính (Mac OS, Unix, Windows) đều hỗ trợ tương đối tốt cho các +ngôn ngữ khác nhau trên thế giới. Do đó, việc soạn thảo một tài +liệu bằng tiếng Hàn không còn quá khó khăn ngay cả khi trên một +máy tính không chạy hệ điều hành tiếng Hàn. + +\item \TeX{} và \LaTeX{} được thiết kết cho các hệ thống chữ viết +không vượt quá 256 kí tự trong bảng chữ cái. Do đó, để chúng có +thể làm việc với các ngôn ngữ có nhiều kí tự hơn như tiếng Hàn +Quốc% +\footnote{Korean Hangul là một bảng chữ cái với 14 phụ âm và +10 nguyên âm cơ bản (Jamos). Không giống như hệ thống chữ viết +Latin hay Cyrillic, các kí tự riêng lẽ phải được sắp xếp trong các +hình chữ nhật cùng kích thước như các kí tự tiếng Trung Quốc, mỗi +ô sẽ đại điện cho một âm tiết. Một tập hợp vô hạn các âm tiết có +thể được tạo từ tập hữu hạn các âm tiết và phụ âm này. Chuẩn chính +tả mới trong tiếng Hàn (cả Nam lẫn Bắc Hàn) đặt ra một số giới hạn +về việc lập nên các nhóm này. Do đó chỉ có một số hữu hạn các âm +tiết đúng ngữ pháp là tồn tại. Bảng mã tiếng Hàn định nghĩa mã cho +từng âm tiết này (KS~X~1001:1998 và KS~X~1002:1998). Do đó, bảng +chữ cái tiếng Hàn sẽ được xử lý như trong tiếng Nhật và Trung Quốc +với hệ thống chữ viết gồm hàng vạn các kí tự tượng hình và kí tự +tốc ký. ISO~10466/Unicode đề nghị cả hai cách của việc hiển thị +tiếng Hàn dùng cho tiếng Hàn hiện đại bằng cách dùng bảng mã +Conjoining Hangul Jamos (bảng chữ cái có tại +\url{http://www.unicode.org/charts/PDF/U1100.pdf}) để biết thêm về +mở rộng cho tất cả các âm tiết đúng chính tả trong tiếng hang hiện +đại (\url{http://www.unicode.org/charts/PDF/UAC00.pdf}). Một trong +những vấn đề làm nản lòng nhât khi soạn thảo một văn bản bằng +tiếng Hàn với \LaTeX{} hay các hệ soạn thảo khác là việc hỗ trợ +Middle Korean và tiếng Hàn trong tương lai---các âm tiết có thể +được biểu diễn bằng cách kết hợp Jamos trong unicode. Người ta hy +vọng rằng trong tương lai, bộ máy định dạng \TeX{} như $\Omega$ và +$\Lambda$ sẽ giải quyết được được vấn đề này để các nhà ngôn ngữ +học và lịch sử học sẽ rời bỏ việc sử dụng MS Word (hiện nay MS +Word hỗ trợ khá tốt cho Middle Korean).}, tiếng Trung Quốc. Do đó, +một cơ chế mới đã được xây dựng. Nó chia các font chữ CJK với hàng +ngàn hay hàng vạn các tổ hợp thành các font chữ nhỏ hơn với 256 kí +tự. Đối với tiếng Hàn, có 3 gói đang được sử dụng rộng rãi là: +\wi{H\LaTeX{}} viết bởi UN~Koaunghi, \wi{h\LaTeX{}p} viết bởi +CHA-Jaechoon và \wi{CJK package} viết bởi +Werner~Lemberg.% +\footnote{Bạn có thể download các gói trên ở địa chỉ\\ +\texttt{CTAN:/tex-archive/language/korean/HLaTeX/}\\ +\texttt{CTAN://tex-archive/language/korean/CJK/} và +\texttt{http://knot.kaist.ac.kr/htex/}} H\LaTeX và h\LaTeX{}p hỗ +trợ tối đa cho tiếng Hàn. Cả hai đều có thể xử lý các tập tin được +soạn thảo với bảng mã EUC-KR. H\LaTeX{} có thể xử lý luôn cả tập +tin dữ liệu vào với bảng mã CP949/Windows-949/UHC. Bạn cũng có thể +dùng nó để soạn thảo các tài liệu đa ngôn ngữ (đặc biệt là tiếng +Trung Quốc, Nhật và Hàn Quốc). + +Gói CJK có thể xử lý dữ liệu được soạn thảo bằng bảng mã UTF-8 +cũng như một số bảng mã khác như EUC-KR và CP949/Windows-949/UHC. +Bạn cũng có thể dùng nó để soạn thảo các tài liệu đa ngôn ngữ (đặc +biệt là tiếng Trung Quốc, Nhật và Hàn Quốc). Tuy nhiên, gói CJK +này không đi kèm với bất kỳ font chữ Hàn nào. + +\item Mục đích cuối cùng của việc sử dụng các chương trình soạn +thảo như \TeX{} và \LaTeX{} là để có được một tài liệu có ``thẩm +mỹ''. Do đó, việc có những font chữ đẹp là một yếu tố rất quan +trọng. H\LaTeX{} cung cấp những font \index{Korean font!UHC font} +UHC \textsc{PostScript} với 10 họ font khác nhau và các font chữ +Minhwabu\footnote{Bộ Văn Hoá Hàn Quốc} (TrueType) với 5 họ font +khác nhau. Gói CJK làm việc với một tập hợp font chữ được sử dụng +bởi phiên bản cũ hơn của H\LaTeX{} và có thể sử dụng các font +\mbox{TrueType} của Bitstream. +\end{enumerate} + +Để sử dụng gói H\LaTeX{}, bạn hãy khai báo như sau trong phần tựa +đề của tài liệu: +\begin{lscommand} +\verb+\usepackage{hangul}+ +\end{lscommand} + +Lệnh này sẽ kích hoạt tính năng soạn thảo tiếng Hàn. Các tiêu đề +của chương, mục, mục con, mục lục, \ldots sẽ được dịch sang tiếng +Hàn và định dạng của tài liệu cũng sẽ thay đổi theo quy ước mẫu +tài liệu bằng tiếng Hàn. + +Các gói trên cũng cung cấp tính năng ``lựa chọn một mẫu nhỏ''. +Trong tiếng Hàn, có rất nhiều cặp tiền tố tương đương về mặt ngữ +pháp nhưng khác nhau về hình thức. Cặp tiền tố nào đúng sẽ tuỳ +thuộc vào âm tiết đứng trước kết thúc bởi một nguyên âm hay phụ +âm. (Điều này phức tạp hơn nhưng ta có thể nói nôm na như thế cho +dễ hiểu.) Người dân Hàn Quốc sẽ không gặp khó khăn trong việc lựa +chọn cặp tiền tố nào cho thích hợp nhưng \TeX{} sẽ không xác định +được việc sử dụng cặp nào để sử dụng làm tham chiếu và các chuỗi +mặc định sẽ thay đổi trong khi soạn thảo. H\LaTeX{} đã giải phóng +được người dùng khỏi vấn đề này bằng một cơ chế làm việc hoạt động +khá tốt (nhưng vẫn có lỗi). + +Khi bạn không cần một số tính năng đặc biệt của soạn thảo tiếng +Hàn, để đơn giản hoá, bạn có thể dùng lệnh sau để kích hoạt tính +năng soạn thảo bằng tiếng Hàn: +\begin{lscommand} +\verb+\usepackage{hfont}+ +\end{lscommand} + +Để biết thêm chi tiết về việc soạn thảo tiếng Hàn với H\LaTeX{}, +bạn có thể tham khảo thêm ở \emph{H\LaTeX{} Guide}. Hãy tham khảo +thêm thông tin ở trang web người Hàn Quốc dùng TeX{} tại địa chỉ +\url{http://www.ktug.or.kr/}. Đồng thời bạn cũng có thể tìm thấy +tài liệu này bằng tiếng Hàn. + +\section{Khoảng cách giữa các từ} +Để biên phải của một tài liệu được canh thẳng cột, \LaTeX{} sẽ chèn khoảng trắng vào giữa các từ. \LaTeX{} sẽ chèn nhiều khoảng trắng hơn vào cuối câu, và điều này sẽ làm cho văn bản dễ đọc hơn. \LaTeX{} qui định rằng một câu sẽ kết thúc với dấu chấm câu, dấu hỏi hay dấu chấm cảm. Nếu một dấu chấm câu theo sau một chữ viết hoá thì nó không được xem là kết +thúc của một câu bởi vì các dấu chấm đứng sau các chữ viết hoa thường xuất hiện ở các từ viết tắt. + +Tất cả các trường hợp ngoại lệ đối với qui tắt này phải được xác định cụ thể bởi người soạn thảo. Một dấu gạch chéo đứng trước một khoảng trắng sẽ tạo ra một khoảng trắng nở rộng. Một dấu~`\verb|~|' sẽ tạo ra một khoảng trắng không thể nở rộng và ngăn không cho xuống hàng. Lệnh \verb|\@| đứng trước một dấu chấm câu sẽ xác định rằng dấu chấm này kết thúc một câu ngay cả khi nó theo sau một chữ cái viết hoa.\cih{"@} \index{~@ \verb.~.} \index{tilde@dấu ngã ( \verb.~.)} \index{., sau khoảng trắng} +\begin{example} +Mr.~Smith was happy to see +her\\ cf.~Fig.~5\\ +I like NEWWORLD\@. +What about you? +\end{example} + +Khoảng trắng thêm vào sau dấu chấm câu có thể bị bỏ qua với lệnh sau: +\begin{lscommand} +\ci{frenchspacing} +\end{lscommand} +\noindent Lệnh này sẽ yêu cầu \LaTeX{} \emph{không} chèn thêm khoảng trắng vào sau dấu chấm. Điều này rất phổ biến trong các ngôn ngữ khác với tiếng Anh, trừ phần mục lục tài liệu tham khảo. Nếu bạn sử dụng lệnh \ci{frenchspacing} thì không cần sử dụng lệnh \verb|\@|. + +\section{Tựa đề, các chương và các mục} +Nhằm giúp cho người đọc dễ dàng tìm ra những phần cần thiết trong tài liệu, bạn nên chia nhỏ tài liệu thành các chương, mục và mục con. \LaTeX{} hỗ trợ các lệnh đặc biệt dùng tựa đề của các mục làm đối số. Việc sử dụng chúng theo thứ tự như thế nào sẽ tuỳ thuộc vào bạn. + +Các lệnh sau sẵn có dành cho lớp tài liệu dạng \texttt{article}: +\nopagebreak +\begin{lscommand} +\ci{section}\verb|{...}|\\ +\ci{subsection}\verb|{...}|\\ +\ci{subsubsection}\verb|{...}|\\ +\ci{paragraph}\verb|{...}|\\ +\ci{subparagraph}\verb|{...}| +\end{lscommand} + +Nếu bạn muốn chia tài liệu của mình thành các phần mà không ảnh hưởng đến việc đánh số chương, mục bạn có thể sử dụng lệnh sau: +\begin{lscommand} +\ci{part}\verb|{...}| +\end{lscommand} + +Khi làm việc với lớp tài liệu \texttt{report} hay \texttt{book}, lệnh chia cấu trúc lớn nhất là +\begin{lscommand} +\ci{chapter}\verb|{...}| +\end{lscommand} + +Trong lớp tài liệu dạng \texttt{article} không có khái niệm chương. Bạn có thể xem các tài liệu dạng article như các chương +của một quyển sách. + +Khoảng cách giữa các đoạn, việc đánh số và kích thước font chữ của tiêu đề của các đoạn sẽ được \LaTeX{} quyết định một cách tự động. + +Hai lệnh chia đoạn sau tương đối đặc biệt: +\begin{itemize} +\item Lệnh \ci{part} không ảnh hưởng đến việc đánh số thứ tự các +chương. +\item Lệnh \ci{appendix} không có tham số. Lệnh này chỉ +thay đổi việc đánh số chương từ số sang chữ.\footnote{Đối +với lớp tài liệu dạng \texttt{report} thì nó thay đổi cách đánh số +các mục.} +\end{itemize} + +\LaTeX{} sẽ tạo ra bảng mục lục bằng cách trích lấy phần tựa đề của các mục và vị trí trang của chúng ở lần biên dịch cuối cùng. Lệnh +\begin{lscommand} +\ci{tableofcontents} +\end{lscommand} +\noindent sẽ hiển thị nội dung của bảng mục lục tại vị trí nó được chèn vào. Một tài liệu cần phải được biên dịch hai lần để \LaTeX{} có thể xây dựng được bảng mục lục. Đôi khi \LaTeX{} sẽ yêu cầu bạn biên dịch lần thứ ba để có được một bảng mục lục thật chính xác. + +Tất cả các lệnh chia đoạn được liệt kê ở trên cũng có thể được viết dưới dạng có dấu \verb|*| ở phía sau. Khi này, tựa đề của các mục sẽ không được hiển thị và không được đưa vào bảng mục lục. Ví dụ như khi bạn không muốn hiển thị tựa đề của mục \verb|\section{Trợ giúp}| vào bảng mục lục, bạn có thể chia đoạn với lệnh \verb|\section*{Trợ giúp}|. + +Thông thường tựa đề của các mục sẽ được đưa vào ở bảng mục lục. Đôi khi điều này không thực hiện được do tựa đề quá dài. Khi này, ta có thể yêu cầu \LaTeX{} đưa vào phần mục lục một tựa đề thay thế ngắn hơn. + +\begin{code} +\verb|\chapter[Tựa đề cho bảng mục lục]{Đây là một tựa đề|\\ +\verb| dài và chán ngắt, không thú vị chút nào}| +\end{code} + +Tựa đề của tài liệu sẽ được tạo ra bởi lệnh +\begin{lscommand} +\ci{maketitle} +\end{lscommand} +\noindent Phần tựa đề của tài liệu phải được xác định bởi một +trong số các lệnh sau: +\begin{lscommand} +\ci{title}\verb|{...}|, \ci{author}\verb|{...}| và có thể thêm và +tuỳ chọn về ngày tháng với lệnh \ci{date}\verb|{...}| +\end{lscommand} +\noindent trước khi gọi lệnh \verb|\maketitle|. Tham số \ci{author} có thể được cung cấp với nhiều tên cách nhau bởi lệnh +\ci{and}. + +Bạn có thể tham khảo thêm ví dụ về các lệnh trên ởhình~\ref{document} ở trang ~\pageref{document}. + +Bên cạnh các lệnh chia đoạn được giới thiệu ở trên, \LaTeXe{} giới thiệu thêm 3 lệnh để sử dụng với tài liệu là \verb|book|. Chúng sẽ rất hữu ích cho việc chia đoạn ấn phẩm của bạn. Các lệnh này dùng để thay đổi tựa đề của các chương và việc đánh số trang sẽ làm việc theo yêu cầu của bạn: + +\begin{description} +\item[\ci{frontmatter}] phải là lệnh đầu tiên ngay sau lệnh \verb|\begin{document}|. Khi này các trang sẽ được đánh số theo số La Mã và các mục sẽ không được đánh số. Thông thường, bạn nên sử dụng lệnh chia đoạn với dấu \verb|*| phía sau (như là \verb|\chapter*{Lời tựa}|) đối với lời tựa nhằm khiến cho \LaTeX{} không liệt kê chúng. + +\item[\ci{mainmatter}] nằm ngay phía trước chương đầu tiên của quyển sách. Các trang sẽ được đánh số theo số Ả Rập và khởi động lại bộ đếm số trang. + +\item[\ci{appendix}] đánh dấu việc bắt đầu các phụ lục. Sau khi lệnh này được gọi, các chương sẽ được đánh số bằng các kí tự. + +\item[\ci{backmatter}] xuất hiện ngay trước phần cuối cùng của tài liệu như mục lục tài liệu tham khảo và bảng chỉ mục. +Trong các tài liệu chuẩn, bạn sẽ không thấy được tác dụng của nó một cách cụ thể. +\end{description} + +\section{Tham chiếu chéo} +Trong các quyển sách, bảng báo cáo, bài báo, ta thường thấy rất nhiều \wi{tham chiếu chéo} đến hình ảnh, biểu bảng và các đoạn văn bản đặc biệt. \LaTeX{} cung cấp các lệnh sau hỗ trợ cho việc tạo tham chiếu chéo: +\begin{lscommand} +\ci{label}\verb|{|\emph{tên nhãn}\verb|}|, +\ci{ref}\verb|{|\emph{tên nhãn}\verb|}| và +\ci{pageref}\verb|{|\emph{tên nhãn}\verb|}| +\end{lscommand} +\noindent với \emph{tên nhãn} là một tên gọi được chỉ định bởi người soạn thảo. \LaTeX{} thay thế \verb|\ref| bởi số thứ tự của các mục, mục nhỏ, hình, biểu bảng hay các định lý tương ứng với lệnh \verb|\label|. Lệnh \verb|\pageref| sẽ in ra số thứ tự của trang xuất hiện lệnh \verb|\label| tương ứng.\footnote{Các lệnh này không biết đến đối tượng chúng tham chiếu đến. Lệnh \ci{label} chỉ lưu lại số hiệu của việc đánh số cuối cùng.} Đối với tựa đề của các mục thì số thứ tự của lần biên dịch trước sẽ được sử dụng. +\begin{example} +Một tham chiếu đến mục con +\label{sec:con} trông như: ``xem +mục~\ref{sec:con} ở +trang~\pageref{sec:con}.'' +\end{example} + +\section{Chú thích ở cuối trang} +Việc thêm vào chú thích ở cuối trang được thực hiện với lệnh: +\begin{lscommand} +\ci{footnote}\verb|{|\emph{nội dung cần chú thích}\verb|}| +\end{lscommand} +\noindent khi này, một lời chú thích sẽ được in ra ở cuối trang. Những lời chú thích phải được đặt~\footnote{``đặt'' là một trong những từ thông dụng trong tiếng Việt.} sau một từ hay một câu mà chúng tham chiếu đến. Các lời chú thích đối với một câu hay một đoạn của câu nên được đặt sau dấu chấm hay dấu phẩy.\footnote{Lưu ý rằng những lời ghi chú cuối trang sẽ khiến cho người đọc mất đi sự chú ý đối với phần văn bản đang đọc. Hầu hết chúng ta đều tò mò nên hay đọc phần chú thích phía dưới trước. Do đó, đôi khi ta có thể thêm vào những thông tin ở các phần chú thích ở cuối trang và điều này rất hiệu quả!\footnotemark}\footnotetext{Thông tin không cần phải nằm ngay những vị trí mà nó hướng đến!!!.} +\begin{example} +Người dùng \LaTeX{} rất hay sử dụng chú thích\footnote{Đây là một chú thích} +\end{example} + +\section{Các từ được nhấn mạnh} +Nếu một văn bản được đánh bằng máy đánh chữ thì \texttt{các từ +quan trọng sẽ được nhấn mạnh bằng cách \underline{gạch dưới} +chúng.} +\begin{lscommand} +\ci{underline}\verb|{|\emph{nội dung}\verb|}| +\end{lscommand} + +\noindent Đối với các ấn bản của sách thì các từ sẽ được nhấn mạnh bằng cách thay đổi định dạng của chúng thành \emph{in nghiêng}. \LaTeX{} hỗ trợ việc này bằng cách cung cấp lệnh sau +\begin{lscommand} +\ci{emph}\verb|{|\emph{nội dung}\verb|}| +\end{lscommand} +\noindent để nhấn mạnh phần \emph{nội dung}. Tuỳ thuộc vào ngữ cảnh, lệnh này sẽ tác động đến tham số theo các tương ứng: +\begin{example} +\emph{Để nhấn mạnh một từ +trong một đoạn văn bản đã +được nhấn mạnh thì \LaTeX{} +sẽ sử dụng font chữ +\emph{bình thường} +để nhấn mạnh từ ấy.} +\end{example} +\noindent bạn cần phân biệt việc yêu cầu \LaTeX{} \emph{nhấn mạnh} một từ và yêu cầu \LaTeX{} sử dụng một \emph{font khác} đối với từ đó: +\begin{example} +\textit{Bạn cũng có thể + \emph{nhấn mạnh} văn bản + khi mà nó đã được chỉnh là + in nghiêng,} +\textsf{trong font chữ dạng + \emph{sans-serif},} +\texttt{hay kiểu + \emph{đánh máy}.} +\end{example} + +\section{Môi trường}\label{env} +Để thuận tiện cho việc định dạng phần văn bản, \LaTeX{} đã định nghĩa sẵn một số \wi{môi trường} hỗ trợ. Để sử dụng, bạn cần phải nhập vào như sau: +\begin{lscommand} +\ci{begin}\verb|{|\emph{môi trường}\verb|}|\quad + \emph{văn bản}\quad +\ci{end}\verb|{|\emph{môi trường}\verb|}| +\end{lscommand} +\noindent với \emph{môi trường} là tên của môi trường cần sử dụng. Môi trường có thể đan xen vào nhau khi mà thứ tự đan xen là hợp lí. +\begin{code} +\verb|\begin{aaa}...\begin{bbb}...\end{bbb}...\end{aaa}| +\end{code} + +\noindent Trong phần này, bạn sẽ được giải thích về tất các các môi trường quan trọng trong \LaTeX{}. + +\subsection{Các môi trường liệt kê} +Với \LaTeX{}, ta có các môi trường liệt kê sau: +\begin{itemize} + \item Môi trường \ei{itemize} phù hợp với việc liệt kê những danh sách đơn giản. + + \item Môi trường \ei{enumerate} được dùng để liệt kê các danh sách (các mục được đánh số một cách tự động). + + \item Môi trường \ei{description} được dùng khi cần mô tả các mục trong danh sách.\cih{item} +\end{itemize} +\begin{example} +\flushleft +\begin{enumerate} +\item Bạn có thể kết +hợp môi trường các danh +sách theo ý mình: +\begin{itemize} +\item Nhưng đôi khi nó +trông +không đẹp. +\item[-] Với một dấu gạch. +\end{itemize} +\item Do đó, hãy nhớ rằng: +\begin{description} +\item[Những điều ngớ ngẩn] sẽ trở +nên hay khi chúng nằm trong một +danh sách +\item[Những điều hay] có thể được +trình bày một cách đẹp +mắt thông qua các danh sách. +\end{description} +\end{enumerate} +\end{example} + +\subsection{Canh trái, canh phải, và canh giữa} +Môi trường \ei{flushleft} và \ei{flushright} có tác dụng canh trái hay canh phải đoạn văn bản.\index{canh trái} Bên cạnh đó, môi trường \ei{center} có tác dụng canh giữa đoạn văn. Nếu bạn không đưa ra các kí hiệu xuống hàng (\ci{\bs}) thì \LaTeX{} sẽ tự động làm điều đó cho bạn. +\begin{example} +\begin{flushleft} +Đoạn văn bản này được\\ +canh trái. \LaTeX{} sẽ không +cố gắng làm +cho các hàng có cùng chiều dài. +\end{flushleft} +\end{example} +\begin{example} +\begin{flushright} +Đoạn văn bản này được\\ +canh phải. \LaTeX{} sẽ không +cố gắng làm +cho các hàng có cùng chiều dài. +\end{flushright} +\end{example} +\begin{example} +\begin{center} +Nằm ở tâm \\của trái đất. +\end{center} +\end{example} + +\subsection{Trích dẫn và các đoạn thơ} +Môi trường \ei{quote} rất hữu dụng khi soạn thảo các lời trích dẫn, các câu quan trọng hay các ví dụ. +\begin{example} +Một quy luật quan trọng +để kiểm soát chiều dài +của một hàng là: +\begin{quote} +Bình quân thì mỗi hàng +có không quá 66 kí tự. +\end{quote} +Đây chính là lý do vì sao +mà các gói của \LaTeX{} có +các biên lớn +theo mặc định và đây cũng +là lý do tại sao các báo +lại sử dụng +cách in làm nhiều cột. +\end{example} + +Có hai môi trường khác có tính năng tương tự là: \ei{quotation} và \ei{verse}. Môi trường \texttt{quotation} rất hữu ích đối với các trích dẫn dài khoảng vài đoạn văn bởi vì nó sẽ canh lề hàng đầu tiên của các đoạn. Ngoài ra, môi trường \ei{verse} thích hợp với việc soạn các bài thơ khi mà việc xuống hàng đóng một vai trò quan trọng. Việc xuống hàng sẽ được thực hiện với lệnh \ci{\bs} ở cuối hàng và một hàng trắng ở cuối các đoạn thơ. +\begin{example} +Lặng lẽ +\begin{flushleft} +\begin{verse} +Em đếm thời gian trôi mãi\\ +Sao ngày cứ dài bất tận\\ +Sao đêm cứ mãi +mong lung\\ +Để em lạc mất\\ +Mất anh thật rồi.\\ + +Tỉnh giấc\\ +Trời bừng sáng bên em\\ +Cô đơn, lặng lẽ\\ +Em lại đếm +thời gian trôi mãi\\ +Bao cuộc tình đến rồi đi\\ +Như cơn gió\\ +Nhưng có bao giờ em khóc được đâu\\ +Phải chăng nước mắt đã chôn +sâu tình cũ\\ +Phải chăng trong lòng\\ +Em chỉ khóc vì anh? \ldots +\end{verse} +\end{flushleft} +\begin{flushright} + Đoàn Thị Ngọc Hà +\end{flushright} +\end{example} + +\subsection{Lời tựa} +Các tài liệu khoa học thường bắt đầu với phần tóm tắt nội dung chính để giúp cho độc giả có được cái nhìn tổng quát. \LaTeX{} cung cấp môi trường \ei{abstract} để thực hiện việc này. Thông thường môi trường này sẽ được sử dụng với kiểu lài liệu là bài báo (article). + +\newenvironment{abstract}% + {\begin{center}\begin{small}\begin{minipage}{0.8\textwidth}}% + {\end{minipage}\end{small}\end{center}} +\begin{example} +\begin{abstract} +Nội dung của phần lời tựa. +\end{abstract} +\end{example} + +\subsection{In ấn đúng nguyên văn} +Các văn bản được soạn thảo trong cặp lệnh \verb|\begin{|\ei{verbatim}\verb|}| và \verb|\end{verbatim}| sẽ được in ấn trực tiếp ra máy in giống như những gì bạn đã nhập vào (bao gồm cá việc xuống hàng, khoảng trắng mà không thông qua quá +trình định dạng của \LaTeX{}). + +Để thực hiện điều này bên trong một đoạn văn thì ta sử dụng lệnh sau: +\begin{lscommand} +\ci{verb}\verb|+|\emph{nội dung}\verb|+| +\end{lscommand} +\noindent Lệnh \verb|+| là một ví dụ về kí tự giới hạn. Bạn có thể sử dụng các kí tự bất kỳ trừ các chữ cái, dấu \verb|*| hay khoảng trắng. Có rất nhiều ví dụ của \LaTeX{} trong sách này được soạn với lệnh này. +\begin{example} +Lệnh \verb|\ldots| \ldots +\begin{verbatim} +10 PRINT "HELLO WORLD "; +20 GOTO 10 +\end{verbatim} +\end{example} +\begin{example} +\begin{verbatim*} +phiên bản có dấu * +ở phía sau của môi trường +\ei{verbatim} nhấn +mạnh khoảng trắng giữa +các từ trong văn bản. +\end{verbatim*} +\end{example} + +Lệnh \ci{verb} cũng có thể được sử dụng tương tự như trên +\begin{example} +\verb*|như thế này :-) | +\end{example} +Môi trường \texttt{verbatim} và lệnh \verb|\verb| không được sử dụng làm tham số của các lệnh khác. + +\subsection{Môi trường bảng} +\newcommand{\mfr}[1]{\framebox{\rule{0pt}{0.7em}\texttt{#1}}} +Môi trường \ei{tabular} có thể được sử dụng để soạn thảo các \wi{bảng} đẹp mắt với sự tuỳ biến các đường kẻ đứng và đường kẻ dọc. \LaTeX{} sẽ xác định chiều rộng của các cột một cách tự động. + +Tham số \emph{table spec} của lệnh +\begin{lscommand} +\verb|\begin{tabular}[|\emph{pos}\verb|]{|\emph{table spec}\verb|}| +\end{lscommand} +\noindent xác định định dạng của bảng. \mfr{l} xác định cột canh lề trái, \mfr{r} xác định cột canh lề phải và \mfr{c} xác định cột canh giữa; \mfr{p\{\emph{độ rộng}\}} xác định cột có kích thước cho trước với nội dung được canh lề ở cả hai bên kèm theo các kí tự xuống hàng; kí hiệu \mfr{|} xác định đường kẻ thẳng đứng. + +Đối với các cột có nội dung quá dài so với chiều rộng của trang, \LaTeX{} sẽ không tự động bao bọc (wrap) nội dung bên trong cột. Tham số \mfr{p\{độ rộng\}} sẽ định độ rộng của cột và tự động bao bọc văn bản trong cột như đối với các đoạn văn bản thông thường. + +Tham số \emph{pos} xác định vị trí của bảng theo chiều dọc dựa vào đường kẻ bao quanh phần văn bản. Bạn có thể nhập vào các giá trị \texttt{t}, \texttt{b} và \texttt{c} để xác định việc sắp xếp bảng ở đầu, ở cuối hay ở giữa trang. + +Trong môi trường \texttt{tabular}, lệnh \texttt{\&} được dùng để ngăn cách các cột, lệnh \ci{\bs} bắt đầu một hàng mới và lệnh \ci{hline} dùng để vẽ một hàng ngang. Bạn có thể thêm vào các đường kẻ nhỏ bằng các lệnh như +\ci{cline}\texttt{\{}\emph{j}\texttt{-}\emph{i}\texttt{\}} với i +và j là số cột mà đường kẻ đi qua.\index{"|@ \verb."|.} + +\begin{example} +\begin{tabular}{|r|l|} +\hline 7C0 & cơ số 16 \\ +3700 & cơ số 8 \\ +\cline{2-2} 11111000000 +& cơ số 2 +\\ \hline \hline +1984 & số thập phân \\ \hline +\end{tabular} +\end{example} +\begin{example} +\begin{tabular}{|p{4.7cm}|} +\hline +Đoạn văn này sẽ được +đóng khung lại. Hy vọng +rằng bạn sẽ +thích tính năng này. +\\ \hline +\end{tabular} +\end{example} + +Kí tự phân cách cột có thể được xác định với lệnh \mfr{@\{...\}}. Lệnh này sẽ xoá khoảng cách nội giữa các cột và thay vào đó là kí tự giữa dấu ngoặc do bạn chỉ định. Dưới đây là một ứng dụng phổ biến của lệnh này trong việc sắp thẳng hàng các số nguyên. Một ứng dụng khác của lệnh này là dùng để bỏ qua khoảng trắng ở đầu bản với tham số \mfr{@\{\}}. +\mfr{@\{\}}. +\begin{example} +\begin{tabular}{@{} l @{}} +\hline +không có khoảng cách trên đầu +\\ \hline +\end{tabular} +\end{example} +\begin{example} +\begin{tabular}{l} +\hline +có khoảng trắng ở hai đầu\\ +\hline +\end{tabular} +\end{example} +% +% This part by Mike Ressler +% +\index{decimal alignment} Hiện nay, \LaTeX{} chưa hỗ trợ trực tiếp cho việc sắp thẳng hàng các cột lưu các số thập phân,\footnote{nếu các gói ``công cụ'' đã được cài đặt trên máy của bạn thì hãy tham khảo thêm gói \pai{dcolumn}.} nhưng chúng ta vẫn có thể sắp thẳng hàng bằng cách dùng 2 cột: một cột được canh lề bên phải gồm các số nguyên và một cột được canh lề bên trái chứa số thập phân. Lệnh \verb|\@{.}| sẽ được dùng để thay đổi dấu phân cách giữa các cột thành dấu ``.''. Đừng quên thay thế các dấu chấm thập phân trong số liệu của bạn thành kí hiệu cách cột (\verb|&|). Bạn có thể dùng thêm một cột để xuất tựa đề bằng cách sử dụng lệnh\ci{multicolumn}. + +\begin{example} +\begin{tabular}{c r @{.} l} +Các biểu thức đối với số +$\pi$ & \multicolumn{2}{c}{Value} +\\ \hline $\pi$ & 3&1416 +\\ $\pi^{\pi}$ +& 36&46 \\ +$(\pi^{\pi})^{\pi}$ +& 80662&7 +\\ +\end{tabular} +\end{example} +\begin{example} +\begin{tabular}{|c|c|} +\hline \multicolumn{2}{|c|} +{Nguyễn} \\ +\hline Tân & Khoa! \\ +\hline +\end{tabular} +\end{example} + +Nội dung soạn thảo với môi trường \texttt{tabular} luôn nằm gọn trên một trang văn bản. Nếu bạn muốn soạn thảo các bảng dài, bạn có thể tham khảo thêm các môi trường như \pai{supertabular} và \pai{longtabular}. + +\section{Tính linh động trong cách trình bày} +Ngày nay, đa số ấn phẩm đều chứa rất nhiều hình ảnh và biểu bảng. Đây là các thành phần cần được xử lý đặc biệt bởi vì chúng không được phép bị phân tách ra ở các trang khác nhau. Một trong những biện pháp khắc phục là bắt đầu một trang mới mỗi khi gặp phải hình minh hoạ hay biểu bảng quá lớn để có thể trình bày gọn trong một trang. Giải pháp này sẽ làm cho một số trang của tài liệu gần như là rỗng hay có rất ít nội dung làm cho bản in trở nên không đẹp. + +Một giải pháp khác cho vấn đề này là cho phép hình minh hoạ hay biểu bảng không nằm gọn trong trang hiện tại nằm trong trang kế tiếp trong khi phần nội dung của trang kế tiếp sẽ tiếp tục được trình bày trong trang hiện tại. \LaTeX{} cung cấp hai môi trường để thực hiện việc này, một dành cho các hình minh hoạ và một dành cho các biểu bảng. Để có thể sử dụng tốt hai môi trường trên, bạn cần hiểu được cơ chế làm việc bên trong của \LaTeX{}. Nếu bạn không nắm vững điều này thì đôi khi \LaTeX{} sẽ làm bạn thất vọng vì nó không bố trí biểu bảng hay hình minh hoạ đúng vị trí mà bạn mong muốn. + +\bigskip +Trước tiên, ta hãy xem qua các lệnh được \LaTeX{} hỗ trợ để thực hiện công việc này: + +Tất cả các dữ liệu trong môi trường \ei{figure} hay \ei{table} đều được xem là dữ liệu linh động. Cả hai môi trường này đều hỗ trợ một số tuỳ chọn về vị trí sắp đặt chúng trong tài liệu + +\begin{lscommand} +\verb|\begin{figure}[|\emph{vị trí}\verb|]| hay +\verb|\begin{table}[|\emph{vị trí}\verb|]| +\end{lscommand} +% +Tham số \emph{vị trí} báo cho \LaTeX{} biết vị trí có thể trình bày nội dung. Tham số này được thiết lập bằng cách xây dựng một chuỗi định dạng từ các lệnh có sẵn. Xem bảng~\ref{tab:permiss} để biết thêm chi tiết. + +\begin{table}[!tbp] +\caption{Các vị trí được phép.}\label{tab:permiss} +\noindent +\begin{minipage}{\textwidth} +\medskip + +\begin{center} +\begin{tabular}{@{}cp{10cm}@{}} +Kí hiệu & Vị trí đặt nội dung \ldots\\ \hline +\rule{0pt}{1.05em}\texttt{h} & \emph{ngay tại vị trí} mà biểu bảng hay hình minh hoạ được soạn thảo. Tuỳ chọn này phù hợp với các font chữ nhỏ.\\ +[0.3ex] \texttt{t} & ở \emph{đầu} của một trang\\[0.3ex] \texttt{b} & ở \emph{cuối} của một trang\\ +[0.3ex] \texttt{p} & trên một trang \emph{đặc biệt} chỉ chứa các dữ liệu linh động như vậy.\\ +[0.3ex] \texttt{!} & không quan tâm đến các tham số bên trong\footnote{như là số biểu bảng hay hình minh họa linh động được phép có trên một trang.}, ảnh hưởng đến việc sắp xếp nó. +\end{tabular} +\end{center} + +\noindent Lưu ý rằng \texttt{pt} và \texttt{em} là hai đơn vị của \TeX{}. Bạn có thể đọc thêm ở bảng \ref{units} ở trang \pageref{units} để biết thêm chi tiết. +\end{minipage} +\end{table} + +Một biểu bảng có thể bắt đầu với hàng lệnh sau: +\begin{code} +\verb|\begin{table}[!hbp]| +\end{code} +% +\noindent Tham số \wi{vị trí} \verb|[!hbp]| cho yêu cầu \LaTeX{} đặt biểu bảng ngay tại vị trí hiện thời (\texttt{h}) hay +trên một trang đặc biệt chỉ dành cho các dữ liệu linh động như biểu bảng này (\texttt{p}) hay ở cuối trang (\texttt{b}) thậm chí trong trường hợp nó trông không đẹp mắt (\texttt{!}). Việc bố trí theo mặc định sẽ là \verb|[tbp]|. + +\LaTeX{} sẽ đặt các biểu bảng hay hình minh hoạ theo các tham số do ta cung cấp. Khi mà biểu bảng hay hình minh họa +không thể được hiển thị ngay, nó sẽ được đưa vào hàng đợi\footnote{Đây là hàng đợi dạng FIFO---`first in first out'}. +Khi một trang mới bắt đầu, \LaTeX{} kiểm tra hàng đợi và cố gắng đưa biểu bảng hay hình minh hoạ phù hợp nhất vào. Nếu \LaTeX{} không thực hiện được thì biểu bảng hay hình minh hoạ trong hàng đợi ấy sẽ được xem như vừa mới xuất hiện trong văn bản\footnote{trừ trường hợp ta sử dụng tham số là `h' và tham số này sẽ không thực hiện được} (có nghĩa là nó sẽ bị đưa xuống cuối hàng đợi để chờ đợi được xử lý.) \LaTeX{} sẽ cố gắng để giữ đúng thứ tự xuất hiện của các biểu bảng và hình minh họa. Đây là lý do mà tại sao một hình minh hoạ hay biểu bảng bị đẩy xuống đến cuối tài liệu. Do đó: + +\begin{quote} +Nếu \LaTeX{} không đặt các biểu bảng hay hình minh họa đúng vị trí +bạn mong muốn thì lỗi gây ra là do một biểu bảng hay hình minh hoạ +nào đó đã gây nghẽn hàng đợi. +\end{quote} + +\LaTeX{} cho phép việc định vị trí chỉ với một tham số nhưng điều này sẽ gây ra các vấn đề bởi vì nếu \LaTeX{} không thể đặt nó tại vị trí như yêu cầu thì nó sẽ gẫy nghẽn hàng đợi, ảnh hưởng đến các thành phần khác trong hàng đợi này. Cụ thể, bạn không nên sử dụng tham số [h]---tham số này hoạt động không tốt và do đó, trong các phiên bản gần đây của \LaTeX{}, tham số này tự động được thay đổi bởi tham số [ht]. + +\bigskip +\noindent Chúng tôi đã giải thích cho các bạn về một số những khó khăn hay gặp; tuy nhiên, vẫn còn một số điều cần lưu ý khi sử dụng hai mội trường này. + +Lệnh +\begin{lscommand} +\ci{caption}\verb|{|\emph{tiêu đề}\verb|}| +\end{lscommand} +\noindent định tiêu đề cho biểu bảng hay hình minh hoạ. Việc đánh số thứ tự vào chuỗi ``Hình'' hay ``Bảng'' sẽ được \LaTeX{} tự động thực hiện. + +Hai lệnh sau +\begin{lscommand} +\ci{listoffigures} và \ci{listoftables} +\end{lscommand} +\noindent làm việc tương tự như lệnh \verb|\tableofcontents|. Lệnh này cho phép xuất ra danh sách các hình ảnh minh hoạ hay biểu bảng. Các danh sách này sẽ hiển thị cả phần tựa đề. Do đó, nếu bạn đặt các tựa đề quá dài thì bạn nên cung cấp thêm một tựa đề tuỳ chọn ngắn hơn đề \LaTeX{} có thể thay thế nó vào trong danh sách. Để làm điều này, bạn chỉ cần đưa thêm tựa đề được thu gọn vào trong dấu ngoặc vuông. +\begin{code} +\verb|\caption[Ngắn gọn]{Đây là một tựa đề dài ơi là dài, dài ...}| +\end{code} + +Với các lệnh như \verb|\label| và \verb|\ref|, bạn có thể tham chiếu đến một biểu bảng hay một hình minh hoạ. + +Dưới đây là một ví dụ về việc vẽ một hình vuông và chèn nó vào tài liệu. Bạn có thể sử dụng nó nếu bạn muốn dành khoảng trống cho các hình ảnh sắp được thêm vào tài liệu. +\begin{code} +\begin{verbatim} +Hình~\ref{white} là một ví dụ về ảnh. +\begin{figure}[!hbp] +\makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}} +\caption{Hình có kích thước 5x5~cm.} \label{white} +\end{figure} +\end{verbatim} +\end{code} +\noindent Trong ví dụ trên, \LaTeX{} sẽ \emph{cố gắng}~\texttt{!} đặt một hình ngay tại vị trí này\footnote{giả sử như hàng đợi đang rỗng}. Nếu \LaTeX{} không thực hiện thành công thì nó sẽ cố gắng đặt hình này ở cuối trang. Nếu \LaTeX{} vẫn không thực hiện được thì nó sẽ cố gắng đặt hình này ở một trang nào phù hợp. Nếu trang này không thoả các việc dặt hình này, \LaTeX{} sẽ bắt đầu một trang mới và lại tiến hành lại các thao tác trên. + +Trong một số tình huống thì bạn cần sử dụng lệnh sau +\begin{lscommand} +\ci{clearpage} hay là lệnh \ci{cleardoublepage} +\end{lscommand} +\noindent nhằm yêu cầu \LaTeX{} phải xuất ra ngay tất cả các biểu bảng hay hình minh hoạ trong hàng đợi và bắt đầu một trang mới. Lệnh \ci{cleardoublepage} sẽ tạo thêm một trang mới bên phải. + +Bạn sẽ học cách để đưa các hình ảnh \textsc{PostScript} vào tài liệu được soạn bởi \LaTeXe{} ở phần sau. + +\section{Bảo vệ các lệnh ``dễ vỡ''} +Văn bản làm tham số cho các lệnh như \ci{caption} hay \ci{section} có thể xuất hiện nhiều lần trong tài liệu (e.g trong phần mục lục cũng như trong phần nội dung văn bản). Một số lệnh sẽ gây ra lỗi khi được sử dụng làm tham số cho các lệnh giống như \ci{section}. Các lệnh này gọi là \wi{các lệnh `dễ vỡ'}---ví dụ như lệnh \ci{footnote} hay \ci{phantom}. Các lệnh `dễ vỡ' này cần phải được bảo vệ (tất cả chúng ta đều cần được bảo vệ?). Bạn có thể bảo vệ chúng bằng cách đặt lệnh \ci{protect} trước các lệnh này. + +Lệnh \ci{protect} chỉ có hiệu lực đối với lệnh ngay bên phải của nó. Việc lạm dụng lệnh \ci{protect} cũng không gây ảnh hưởng gì. +\begin{code} +\verb|\section{Tôi là một người ân cần|\\ +\verb| \protect\footnote{và bảo vệ phần chú thích cuối trang}}| +\end{code} |