ความลับสวรรค์ 3

ในการทำหนังสือด้วย LaTeX นั้น ปัญหาหนึ่งก็คือเรื่องการตั้งค่าขนาดของฟอนต์ ซึ่งจำกัดมีไม่กี่ขนาด ทั้งนี้เนื่องจาก class book กำหนดไว้แค่นั้น (โดยคนทำ LaTeX ไม่ใช่คนทำ TeX) ได้แลกเปลี่ยนกับเพื่อน และเพื่อนแนะนำให้ใช้ class extbook ใช้อย่างไร ทำอย่างไร หาเอกสารอ่านเอาเองนะครับ

ความลับที่ 2 ซึ่งไม่ลับอะไรแต่เข้าใจยากหน่อย เกี่ยวกับแพ็กเกจ subfig ซึ่งถ้าใช้งานปกติแบบคนทั่วไปก็ไม่มีปัญหาอะไรครับ แต่ถ้าใช้งานยาก ๆ สลับซับซ้อน ก็มักจะมีปัญหา กรณีนี้คือ caption ที่เป็นตัวอักษรไม่เป็นไปตามหวัง คือหวังให้เป็นภาษาไทย และไม่อยู่ตรงกลาง คือหวังให้อยู่ตรงกลางรูป วิธีแก้ ก็ดูการ \renewcommand{\thesubfigure}{\thalph{subfigure}} สำหรับปัญหาที่ 1 ส่วนปัญหาที่สองก็ทำได้โดยการ \captionsetup[subfigure]{oneside, margin={0.5cm, 0cm}} รายละเอียดลึก ๆ ดูคู่มือเอาเองนะครับ รับประกันได้ว่าหากันเมื่อยและไม่ค่อยรู้เรื่องเท่าไหร่ ง่ายสุดคือทำตามและปรับค่าเอา ได้ก็คือได้ (ฮา)  

[…]

Read More →
ความลับสวรรค์ 2

เอาด่วน ๆ เร็ว ๆ จดไว้กันลืม โดยปกติ caption ของรูปจะอยู่ข้างล่าง และของตารางจะอยู่ข้างบน แต่จะด้วยเหตุผลอะไรไม่ทราบเวลาแพ็กเกจ caption แล้ว ค่าตั้งต้นมันจะให้ caption อยู่ข้างล่าง วิธีแก้ทำดังนี้ครับ

ก็เป็นอันว่าจบ

Read More →
ความลับสวรรค์

เนื่องจากไม่ค่อยมีเวลาเขียน โพสนี้เป็นการรวบรวมข้อมูลเล็ก ๆ น้อย ๆ สำหรับจดไว้กันลืมครับ lmodern ต้องลงเอง มันไม่ลงให้อัตโนมัติ สำหรับ MiKTeX นั้น XeLaTeX ต้องใช้ -enable-write18 แทนที่จะเป็น --shell-escape สำหรับหนังสือภาษาไทย ที่มีตัวภาษาอังกฤษ และสมการคณิตศาสตร์ปน ให้ใช้ตัวเลือก no-math \usepackage[no-math]{fontspec}เข้าไปเจอความลับสวรรค์จาก page Thai Students Love LaTeXเพื่อสั่งให้ LaTeX ไม่ใช้ฟอนต์ไทยกับสมการคณิตศาสตร์ ใน beamer ในสมการคณิตศาสตร์ ที่มี $\hat{f}$ เวลาแสดงผลจะเพี้ยน ป้อนกันได้ด้วย \usefonttheme{professionalfonts} แค่นี้ก่อนนะครับ

Read More →
การแก้ปัญหาฟอนต์ Helvetica ในเอกสารที่สร้างจาก LaTeX แล้วมีปัญหากับ IEEE PDF eXpress

ถ้าใครเขียนบทความวิจัยเพื่อไปตีพิมพ์ในประชุมวิชาการระดับนานาชาติ สิ่งหนึ่งที่ควรจะดูก็คือเรื่องบทความวิจัยของเรามันจะไปอยู่ในฐานข้อมูลหรือไม่ หนึ่งในฐานข้อมูลยอดนิยมก็คือ IEEE Explore นั่นเอง เงินที่เสียเพิ่มขึ้นก็แลกเอาว่าจะให้บทความเราหายไปหรือคงอยู่ ผมได้รับการตอบรับให้ตีพิมพ์ในประชุมวิชาการระดับนานาชาติ ซึ่งต้องจ่ายเงินแล้ว upload บทความตัวสุดท้ายของเราขึ้นไปให้คณะผู้จัดงานได้รวบรวมไปตีพิมพ์ ปกติผมสร้างเอกสารจาก XeLaTeX ได้ตัว pdf มา ก็ upload ได้ไม่มีปัญหา แต่ก็มีเรื่องจนได้ เนื่องจากรูปกราฟของบทความผมที่สร้างขึ้นจากโปรแกรมคำนวณยอดนิยม ดังมีค่าเริ่มต้นของฟอนต์ต่าง ๆ เป็น Helvetica ซึ่งแน่นอนไม่มีบน windows ก็ประเมินไม่ผ่านตามระเบียบ แก้ยังไงน่ะเหรอครับ ก็ง่าย ๆ กลับเข้าไปแก้ที่รูปภาพที่มีอยู่รวม ๆ ประมาณ 20 รูป แต่ละรูปก็แก้ประมาณ 4-5 จุด ทำไปหนึ่งรูป ผลหรือครับ ไม่ได้ครับ เนื่องจากมีฟอนต์ซ่อนหาไม่เจออยู่บนที่ต่าง ๆ ในรูปกราฟเต็มไปหมด กระบวนท่าถัดมาที่ผมใช้ก็คือการใช้โปรแกรม IrfanView มาแปรงรูปจาก eps ไปเป็น pdf ให้ (ตรงนี้ไม่งงนะครับ) เราก็จะได้รูปภาพแบบเวกเตอร์ที่ไม่ได้ใช้ความได้เปรียบของเวกเตอร์ (ไม่งงนะ) […]

Read More →
underscore !

เป็นเรื่องที่ user เก่า(และแก่ด้วย) อย่างผมถึงกับต้องตีอกชกหัวตัวเอง ตกม้าตายเอาง่าย ๆ เรื่องมีอยู่ว่า ผมเข้าใจเอาเองมาตลอดว่าใน LaTeX เขียน underscore '_' ได้เฉพาะใน math mode และจะหมายถึงการใส่ตัวห้อย (subscript) ปัญหาของผมที่เจอบ่อย ๆ ก็คือเวลาที่ผมต้องการจะเขียนชื่อไฟล์ที่มีตัว underscore นี้ ผมมักใช้ท่าพิเศษ เช่นใช้คำสั่ง \verb หรือ \url ซึ่งสามารถใช้งานได้ปกติ แต่ไม่ใช่ท่ามาตรฐาน ออกจะเป็นขบวนท่านอกด่านไปซักหน่อย วันนี้ต้องเขียนเอกสารอธิบายไฟล์ โดยต้องอ้างชื่อไฟล์หลายไฟล์ และบางชื่อไฟล์ต้องไปอยู่ในหลายสถานที่ ๆ ไม่ค่อยจะได้อยู่ เช่น ใน \caption เป็นต้น และนั่นคือที่มาของปัญหาเพราะขบวนท่า \verb ไม่ทำงาน ขบวนท่า \url ทำบ้างไม่ทำบ้าง ก็เลยต้องหาวิธี แล้วก็พบว่าวิธีมาตรฐานนั้นมีมานานมากแล้วตั้งแต่ LaTeX 2.09 โน่น สุดยอดไหมหล่ะ ก็แค่ใช้ \_ เท่านั้นเอง ง่ายสะดวก […]

Read More →
Plot2SVG MATLAB and Inkscape

หลายคงคงรู้ว่าเวลาเอารูปจาก MATLAB ไปใส่ในเอกสาร LaTeX นั้น ฟอนต์ที่อยู่ในกราฟนั้นจะไม่เหมือนกับเอกสาร ปัญหานี้จะว่าใหญ่ก็ไม่เชิง จะว่าเล็กก็ไม่เชิง ขึ้นอยู่กับมุมมองของแต่ละคน แน่นอนสำหรับผมนั้นแค่เอารูปแบบ pdf หรือ eps ไปใช้ในเอกสารแล้วภาพไม่แตก พิมพ์ออกมาสวยงามกว่าชาวบ้านเขาก็พอแล้ว แต่ปรากฏว่าปัญหานี้ใหญ่พอสมควรสำหรับคนเยอรมันที่ผมทำงานด้วย จริง ๆ มีวิธีแก้ไขหลายวิธีปัญหานี้ได้พูดกันอย่างกว้างขวางที่ What is the best way to include Matlab graphics รวมถึงวิธีแก้ไขด้วยครับ  วิธีที่ดีที่สุดให้ดูคำตอบของคุณ Shuhao Cao ที่มีรูปเยอะ ๆ ซึ่งคุณ Shuhao Cao ได้แสดงปัญหาของการใช้ matlab2tikz ซึ่งมีผู้นิยมใช้กันมาก ซึ่งปัญหาเหล่านี้นั้นผมก็เจอเหมือนกัน และไม่เคยใช้ matlab2tikz สำเร็จเลย วิธีที่คุณ Cao เสนอให้ใช้คือ plot2SVG ซึ่งโหลดได้จากเว็บของ  plot2svg_20120915.zip การติดตั้งก็เหมือนกับแพ็กเกจของ Matlab ทั่วไป การเรียกใช้คำสั่งก็อ่านได้ในคู่มือที่ติดมาด้วยครับ เมื่อได้ไฟล์ […]

Read More →
การเพิ่ม List of Figures กับ List of Tables ลงในสารบัญ

เป็นเรื่องใหม่ที่พึ่งรู้ว่ามันเป็นปัญหา สืบเนื่องจากการใช้คำสั่ง addcontentsline{toc}{chapter}{bibname} เพื่อเพิ่มรายชื่อบทลงในสารบัญนั้น ซึ่งโดยปกติจะใช้สั่งให้มีรายชื่อของสารบัญตาราง สารบัญรูป และอื่น ๆ ลงในสารบัญ และสิ่งที่ผมพึ่งรู้ก็คือคำสั่งนี้จะแสดงเลขหน้าผิดเสมอ แก้อย่างไรก็ไม่สำเร็จ ค้นไปค้นมาเลยได้ความรู้จาก Patrick Jöckel's ดังนี้ ในการเพิ่มรายชื่อบทที่สร้างขึ้นเองลงในหน้าสารบัญ จำพวกกิจกรรมประกาศ บทคัดย่อ ฯลฯ การใช้คำสั่ง

นั้นจะต้องทำหลังคำสั่ง chapter ของบทนั้น ๆ กรณีต้องการเพิ่มรายการของสารบัญให้มี สารบัญ สารบัญตาราง สารบัญรูป และเอกสารอ้างอิง สามารถทำได้โดยใช้แพ็กเกจ tocnatbibind ซึ่งจะทำให้เลขหน้าเป็นไปตามจริง ซึ่งได้ลองกับแพ็กเกจ ThaiLaTeX แล้วไม่มีปัญหาแต่อย่างใดครับ สำหรับวิธีการใช้แพ็กเกจนี้ก็ง่าย ๆ ครับ แค่เรียกใช้แพ็กเกจดังกล่าวก็พอ ส่วนการใช้งานแบบละเอียดก็อ่านได้จากคู่มือของแพ็กเกจครับ สุดท้ายหวังว่าจะเป็นประโยชน์แก่คนที่กำลังเขียน Thesis ด้วย LaTeX แล้วโดนท้วงติงเรื่องเลขหน้าผิดครับ

Read More →
เรื่องวุ่น ๆ เกี่ยวกับตาราง ตอนที่ 3 multirow with color

ในตอนที่แล้วได้นำเสนอการสร้างตารางที่มีการผสานตารางในแนวตั้งด้วยแพ็กเกจ multirow ไปแล้ว ซึ่งตอนเก่า ๆ ติดตามได้จาก เรื่องวุ่น ๆ เกี่ยวกับตาราง ตอนที่  1 เรื่องทั่วไป เรื่องวุ่น ๆ เกี่ยวกับตาราง ตอนที่ 2 multirow ในตอนนี้จะเกี่ยวการใช้สี ถ้าใครยังจำการใช้ Word ได้ ก็คงจะจำได้ว่าการใส่ตารางในเอกสาร Word นั้น ง่ายดายมาก แถมยังมีแม่แบบให้เลือกมากมาย และก็จะมีการใช้สีเพื่อให้ง่ายต่อการมองเห็นด้วย (ทั้ง ๆ ที่ขณะนั้นเครื่องพิมพ์สียังอยู่ห่างไกลความจริงพอสมควร) สำหรับ LaTeX และพวกพ้องก็มีการใช้สีสำหรับตารางด้วย การใส่สีลงในตารางนั้นทำได้หลายวิธี และมีแพ็กเกจให้เลือกใช้ แต่ในที่นี้จะแนะนำให้ใช้ความสามารถเกี่ยวกับตารางของแพ็กเกจ xcolor ซึ่งปกติเราก็เรียกใช้กันอยู่แล้ว วิธีการเรียกใช้ความสามารถในการใช้สีในตารางของแพ็กเกจ xcolor นั้นทำได้โดยการเพิ่มตัวเลือก table เข้าไปดังนี้

เมื่อเลือกแล้วเราก็จะสามารถใส่สีลงในตารางได้อย่างง่ายดาย   ส่วนตัวเลือก svgnames นั้นเป็นการใช้ชื่อสีที่ทำไว้แล้ว ซึ่งรายชื่อสีก็ดูได้จากคู่มือของ xcolor ในบทที่ว่าด้วย color by names […]

Read More →
เรื่องวุ่น ๆ เกี่ยวกับตาราง ตอนที่ 2 multirow

ใครยังไม่ได้อ่านตอนที่หนึ่งก็ไปอ่านได้ที่ เรื่องวุ่น ๆ เกี่ยวกับตาราง ตอนที่ 1 เรื่องทั่วไป ซึ่งเป็นความรู้เบื้องต้นเกี่ยวกับตาราง  ในวันนี้เป็นตอนที่สองของบทความที่คุณสุขุมส่งมา ซึ่งเป็นเรื่องเกียวกับการผสานแนวตั้ง (merge row) ซึ่งจะว่าเป็นเทคนิคเบื้องต้นก็ไม่ถูกนักเพราะว่าจำเป็นต้องใช้แพ็กเกจพิเศษช่วย นั่นคือแพ็กเกจ multirow นั่นเอง มาดูตัวอย่างกันก่อน จากตัวอย่างในรูปข้างบน จะเห็นว่า คำว่า Defenders, Midfielders, Strikers นั้นจะอยู่ตรงกึ่งกลางของ 4, 3 , 2 แถวตามลำดับ ใน LaTeX นั้นใช่ว่าจะทำกันได้ง่าย ๆ นักเลงรุ่นเก่าจริง ๆ (คนที่ไม่รู้จักแพ็กเกจ multirow) จะใช้คำสั่ง raisebox  ซึ่งยุ่งยากมาก ๆ เรียกว่าทำทีก็ต้องเปิดตำราทีนั่นแหละ การมาของแพ็กเกจ multirow จึงเป็นสวรรค์ของนัก TeX จากตัวอย่างในรูปข้างบน สามารถทำได้โดยการเรียกใช้แพ็กเกจ multirow และ booktabs แพ็กเกจหลังสำหรับคำสั่ง toprule ฯลฯ ดูได้จากตอนที่ […]

Read More →
เรื่องวุ่น ๆ เกี่ยวกับตาราง ตอนที่ 1

ในการใช้งาน LaTeX นั้นมีอยู่สองเรื่องที่ค่อนข้างเป็นปัญหา  ทั้ง ๆ เป็นเรื่องที่ใช้กันค่อนข้างบ่อยบนโปรแกรม Word Processing  สองสิ่งนี้ก็คือ Tab กับตาราง ในโปรแกรม Word Processing นั้นจะมีส่วนติดต่อกับผู้ใช้จึงทำให้การทำงานร่วมกับตารางนั้นค่อนข้างง่าย แต่สำหรับ LaTeX แล้วต้องทำเองจึงยากและสับสนพอสมควร ในการสร้างตารางในเอกสารวิชาการที่ดีนั้น สามารถหาอ่านได้จากเอกสารของแพ็กเกจ booktabs สำหรับที่เป็นภาษาไทยก็เคยมีคนเขียนไว้ที่ การทำตารางให้สวย โดยคุณ ichris  แต่ช้าก่อนการใช้งานแพ็กเกจ booktabs นั้นดีง่าย แต่เข้ากันไม่ได้กับแพ็กเกจ caption ซึ่งมีประโยชน์มากกว่า ด้วยเหตุผลง่าย ๆ คือของง่าย ๆ แบบที่ booktabs ทำได้นั้น ทำเองได้ไม่ยาก แต่สิ่งที่ caption ทำได้นั้น ทำเองได้ค่อนข้างยาก ดังนั้นเราลองมาสร้างตารางในเอกสารที่สร้างด้วย LaTeX ในแบบต่าง ๆ กันดูนะครับ บทความวันนี้ได้รับความอนุเคราะห์จากคุณสุขุมอีกเช่นเคยครับ แต่จะมีการดัดแปลงแก้ไขโดนผมอีกเช่นเคยครับ (อันนี้ได้รับอนุญาตแล้ว)  สำหรับมือใหม่ เราลองมาดูว่าการสร้างตารางที่ถูกต้องควรจะเริ่มต้นอย่างไรนะครับ รหัสเริ่มต้นที่มาตรฐานสำหรับการสร้างตารางเป็นแบบตัวอย่างข้างล่างนี้นะครับ

การใช้สิ่งแวดล้อม […]

Read More →
Equation numbering with alphabet

ในบางครั้งในการเขียนสมการเราก็ต้องการจัดกลุ่มของสมการเช่น 1a 1b ... 1e แทนที่จะเรียงแบบ 1 2 ... 5 ซึ่งแบบแรกจะสามารถสื่อสารได้ดีกว่าว่าเป็นสมการเรื่องเดียวกัน ปกติก็ไม่เคยใช้หรือคิดจะใช้นะครับ พอดีเห็นคำค้นเรื่องนี้ก็เลยสนใจ พอค้น google ก็มีคนแนะนำว่าใน package amsmath นั้นมีชุดคำสั่งนี้ให้อยู่แล้ว แถมยังบอกหน้าให้เสร็จสรรพว่าหน้า 10 พอเข้าไปก็ลองทำตามที่คู่มือบอก ปรากฏว่าไม่ได้ ก็ไม่ยากครับไปค้น google อีกรอบได้วิธีทำที่ละเอียดกว่าที่ wikibooks ซึ่งมีวิธีการดังนี้นะครับ

ไปลองดูรายละเอียดกันเองนะครับ ไม่ยากอะไร ถ้าต้องการ 1ก 2ข ... ก็ต้องลงแพ็กเกจภาษาไทยก่อนแล้วก็ทำตามนี้นะครับ

โดยการแปลงตัวเลขให้เป็นภาษาไทย โดยใช้คำสั่ง thaialph{equation} ก็จะได้หน้าตาดังรูป ข้างล่างนี้ ก็คิดว่าน่าจะมีประโยชน์ในการเขียนเอกสารภาษาไทยบ้างนะครับ

Read More →