1 / 25

การสร้างเอกสารด้วย LaTeX Part II

การสร้างเอกสารด้วย LaTeX Part II. ผศ.ดร.ชัยพร ใจแก้ว ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยเกษตรศาสตร์. เนื้อหา. การปรับตั้งค่าขนาดกระดาษและขอบเอกสาร การสร้างคำสั่งใหม่ การใส่ภาพและตารางในเอกสาร การเตรียมภาพบิทแม็บและเวคเตอร์สำหรับเอกสาร การใช้งานภาษาไทยใน LaTeX

lula
Download Presentation

การสร้างเอกสารด้วย LaTeX Part II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. การสร้างเอกสารด้วย LaTeXPart II ผศ.ดร.ชัยพร ใจแก้ว ภาควิชาวิศวกรรมคอมพิวเตอร์คณะวิศวกรรมศาสตร์ มหาวิทยาลัยเกษตรศาสตร์

  2. เนื้อหา • การปรับตั้งค่าขนาดกระดาษและขอบเอกสาร • การสร้างคำสั่งใหม่ • การใส่ภาพและตารางในเอกสาร • การเตรียมภาพบิทแม็บและเวคเตอร์สำหรับเอกสาร • การใช้งานภาษาไทยใน LaTeX • คลาสเอกสารอื่น ๆ ที่น่าสนใจ

  3. การตั้งค่ากระดาษและคอลัมน์การตั้งค่ากระดาษและคอลัมน์ • ใช้ตัวเลือกในคลาส article • เลือกกระดาษขนาด A4 คอลัมน์เดียว \documentclass[a4paper]{article} • เลือกกระดาษขนาด Letter สองคอลัมน์ \documentclass[letterpaper,twocolumn]{article} • เลือกกระดาษขนาด A4 คอลัมน์เดียวใช้ฟอนต์ 12pt เป็นมาตรฐาน \documentclass[12pt,a4paper]{article}

  4. การตั้งค่าขอบกระดาษ (margin) • ทำได้โดยการตั้งค่าตัวแปรที่เกี่ยวข้อง • \setlength{\textwidth}{8in} • LaTeX ใช้ตำแหน่ง (1in,1in) เป็นจุดอ้างอิง • แพ็กเกจ geometry ให้ความสะดวกมากกว่าในการตั้งค่า

  5. แพ็กเกจ geometry • เพิ่มความสะดวกในปรับตั้งค่าเลย์เอาท์ของเอกสาร • ตัวอย่าง • ขนาดเนื้อความ = 7in x 10in จัดตำแหน่งกลางหน้ากระดาษ \usepackage[text={7in,10in},centering]{geometry} • ขอบเอกสารทุกด้าน = 1.5in \usepackage[margin=1.5in]{geometry} • ขอบบน,ขอบขวา,ขอบล่าง = 1in ขอบซ้าย = 1.5in \usepackage[top=1in,bottom=1in,right=1in,left=1.5in]{geometry}

  6. การสร้างคำสั่งใหม่ • \newcommand สร้างคำสั่งใหม่ • \renewcommand สร้างคำสั่งทับคำสั่งเดิม

  7. ตัวอย่างการใช้ \newcommand • คำสั่งด้านล่างสร้างคำสั่ง \xvec เพื่อพิมพ์ข้อความ x1,…,xnในตำแหน่งที่เรียกใช้ (ต้องอยู่ในโหมด math) \newcommand{\xvec}{x_1,\ldots,x_n} • คำสั่งด้านล่างรับพารามิเตอร์ 2 ตัว \newcommand{\avec}[2]{#1_1,\ldots,#1_#2} • อ้างอิงในคำสั่งโดยใช้ #1 และ #2 ตามลำดับ • \avec{a}{k} ให้ผลลัพธ์เป็น a1,…,ak

  8. ตัวอย่างการใช้ \renewcommand • ปรับให้ใช้เลขโรมันใหญ่เป็นหมายเลข section \renewcommand{\thesection}{\Roman{section}}

  9. ตาราง • สร้างตารางโดยใช้ tabular environment • \begin{tabular}{cols} … \end{tabular} \begin{tabular}{rlc} Head1 & Head2 & Head3 \\ \hline A & B & C \\ D & & E \end{tabular} \begin{tabular}{r|lc} Head1 & Head2 & Head3 \\ \hline A & B & C \\ D & & E \end{tabular}

  10. รูปภาพ • ใช้คำสั่ง \includegraphics ในแพ็กเกจ graphicx • pdfLaTeX รองรับไฟล์ฟอร์แมตดังนี้ • PDF (สำหรับ vector graphics) • PNG (สำหรับ lossless bitmap graphics) • JPG (สำหรับ lossy bitmap graphics)

  11. ตัวอย่างการใช้ \includegraphics • ดึงภาพจากไฟล์ pic1.pdf ใส่ไว้ในเอกสาร \includegraphics{pic1.pdf} • กำหนดให้ภาพมีขนาดลดลงครึ่งหนึ่ง \includegraphics[scale=.5]{pic1.pdf} • กำหนดให้ภาพมีความกว้าง 2 นิ้ว \includegraphics[width=2in]{pic1.pdf} • กำหนดให้ภาพมีความกว้าง 50% ของความกว้างเนื้อความ \includegraphics[width=.5\textwidth]{pic1.pdf} • หมุนภาพ 45 องศาทวนเข็มนาฬิกา \includegraphics[angle=45]{pic1.pdf}

  12. Floating Table และ Figure • โดยปกติตารางหรือรูปภาพจะถูกแทรกในเนื้อความ ณ ตำแหน่งเดียวกันกับซอร์ส • ตารางหรือภาพที่ใหญ่มากจะถูกตัดขึ้นหน้าใหม่ ทำให้เหลือพื้นที่ว่างในหน้าเดิมมากเกินไป • แก้ไขได้โดยทำให้ตารางและภาพ "ลอยได้" • \begin{table}…\end{table} สร้าง floating table • \begin{figure}…\end{figure} สร้าง floating figure • \begin{table*}…\end{table*} หรือ \begin{figure*}…\end{figure*} เป็นการระบุให้ภาพหรือตารางถูกวางคร่อมสองคอลัมน์

  13. ตัวอย่างการใช้ Floating Table/Figure • ชุดคำสั่งข้างต้นมีผลดังนี้ • สร้าง float ที่บรรจุภาพ pic1.jpg • ภาพถูกจัดไว้กึ่งกลางหน้ากระดาษตามแนวนอน • คำบรรยายใต้ภาพคือ "A picture" \begin{figure} \begin{center} \includegraphics{pic1.jpg} \end{center} \caption{A picture} \end{figure}

  14. การระบุตำแหน่งการวาง Float • t (top) - พยายามวาง float ไว้ด้านบนของหน้ากระดาษ • b (bottom) - พยายามวาง float ไว้ด้านล่างของหน้ากระดาษ • p (page) - พยายามวาง float ไว้ในหน้าพิเศษที่มีแต่ float • ตัวอย่างเช่น \begin{figure}[btp]…เป็นการระบุให้ LaTeX • พยายามวาง float ไว้ด้านล่างของหน้ากระดาษก่อน • หากไม่สำเร็จให้พยายามวางไว้ด้านบน • หากไม่สำเร็จอีกให้จัดรวมไว้ในหน้าพิเศษแยกต่างหาก • ค่าดีฟอลท์ของการวางคือ tbp

  15. การเตรียมภาพแบบเวคเตอร์การเตรียมภาพแบบเวคเตอร์ • pdfLaTeX รองรับไฟล์ฟอร์แมต PDF • ใช้โปรแกรมใดก็ได้ที่บันทึกภาพเป็น PDF ได้ • Inkscape, XFig, ฯลฯ • PDF ที่สร้างจาก MS Word หรือ Powerpoint มักมีขนาดเต็มหน้ากระดาษ • โหลดและบันทึกผ่าน Inkscape เพื่อปรับขอบภาพใหม่

  16. การแก้ไขไฟล์ PDF ด้วย Inkscape • เปิดเอกสาร PDF ด้วย Inkscape • เลือกวัตถุภาพ สั่ง Ungroup จนกระทั่งพื้นหลังแยกกลุ่มออกมา • ลบวัตถุที่เป็นพื้นหลังทิ้ง • เลือกวัตถุที่เหลือทั้งหมด • เลือกเมนู File -> Document Properties แล้วกด Fit page to selection • บันทึกไฟล์

  17. การแบ่งซอร์สโค้ดเป็นหลายไฟล์การแบ่งซอร์สโค้ดเป็นหลายไฟล์ • ใช้คำสั่ง \input เพื่อโหลดซอร์สจากไฟล์อื่น \documentclass{article} \begin{document} \section{Introduction} \input{intro.tex} \section{Related Work} \input{related.tex} \section{Results} \input{results.tex} \end{document}

  18. ภาษาไทยใน LaTeX • การรองรับภาษาไทยของ LaTeX/pdfLaTeX ค่อนข้างยุ่งยาก • ต้องติดตั้งฟอนต์ภาษาไทยแยกต่างหาก • ต้องแปลงไฟล์ให้อยู่ในรหัส สมอ. (TIS620) • ปัจจุบันมีแพ็กเกจ inputencที่รองรับรหัสยูนิโค้ด • ต้องใช้โปรแกรมตัดคำแยกต่างหาก • รวมไว้ในชุดโปรแกรม ThaiLaTeX

  19. ตัวอย่างการใช้ ThaiLaTeX ระบุว่าเอกสารเป็นภาษาไทย (ชื่อหัวข้อ รูป ตาราง วันที่ ฯลฯ จะเป็นภาษาไทยทั้งหมด) • ตัดคำด้วยโปรแกรม swath • คอมไพล์ผลลัพธ์ด้วย pdflatex \documentclass{article} \usepackage[thai]{babel} \usepackage[utf8x]{inputenc} \begin{document} เอกสารภาษาไทย \end{document} ระบุว่าอินพุทเข้ารหัสเป็นแบบ UTF-8 testthai.tex $ swath -f latex -u u,u < testthai.tex > testthai.ttx $ pdflatex testthai.ttx

  20. XeTeX/XeLaTeX • ทำงานคล้ายคลึงกับ pdfLaTeX • ใช้งานฟอนต์ที่ติดตั้งไว้กับระบบปฏิบัติการได้ทันที • ใช้ระบบตัดคำของระบบปฏิบัติการ • รองรับซอร์สไฟล์รหัส UTF-8 • รวมไว้ในชุดโปรแกรม MiKTeX ตั้งแต่เวอร์ชัน 2.7 เป็นต้นมา

  21. การตั้งค่าให้ XeTeX • เพิ่มคำสั่งต่อไปนี้ลงใน preamble ของเอกสาร \usepackage{xltxtra} \usepackage{xunicode} \usepackage{fontspec} \defaultfontfeatures{Scale=MatchLowercase} \XeTeXlinebreaklocale "th_TH" \setmainfont[Script=Thai]{Loma} \setmonofont[Script=Thai]{TlwgTypewriter} ปรับให้อักขระภาษาไทยมีความสูงประมาณอักขระภาษาอังกฤษตัวเล็ก ใช้ระบบตัดคำภาษาไทย ใช้ฟอนต์ Loma เป็นฟอนต์หลัก ใช้ฟอนต์ TlwgTypewriter เป็นฟอนต์แบบ Monospace (เช่นที่ใช้กับคำสั่ง \texttt)

  22. แหล่งข้อมูลสำหรับภาษาไทยบน LaTeX • Thai LaTeX User Group • http://thaitug.daytag.org/wordpress/ • Swath (โปรแกรมตัดคำ) สำหรับวินโดวส์ • http://code.google.com/p/swath/ • เอกสารแนะนำการใช้งาน XeTeX/XeLaTeX ของ ผศ.ดร.ประมวล สุธีจารุวัฒน์ • http://www.ie.eng.chula.ac.th/~pramual/books/XeTeX

  23. ตัวอย่างคลาสอื่น ๆ ที่น่าสนใจ • คลาส IEEEtran - สำหรับสร้างเอกสารวิชาการในรูปแบบของ IEEE (รองรับทั้ง conference และ journal) • ข้อมูลเพิ่มเติม http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/ • คลาส res- สำหรับใช้สร้าง Resume • ดูตัวอย่างได้จาก http://rpi.edu/dept/arc/training/latex/resumes/

  24. ตัวอย่างคลาสอื่น ๆ ที่น่าสนใจ (ต่อ) • คลาส beamer - สร้างสไลด์สำหรับนำเสนอ • ดูข้อมูลเพิ่มเติมจาก http://tug.ctan.org/tex-archive/macros/latex/contrib/beamer

  25. แหล่งข้อมูลเพิ่มเติม • ดาวน์โหลดแพ็กเกจและคลาส รวมถึงคู่มือการใช้งาน http://www.ctan.org/

More Related