P&ID
P&ID with TikZ

ความลำบากอันหนึ่งในการเขียนหนังสือ ก็คือการวาดรูปประกอบหนังสือ ส่วนใหญ่ถ้าไม่มีทีมงานวาดรูป ตัวผู้เขียนที่เป็นอาจารย์ก็ต้องเขียนเองวาดรูปเอง ปัญหาคือถ้ารูปยาก ๆ ก็ไม่รู้จะวาดอย่างไร จะใช้โปรแกรมวาดรูปก็มีปัญหาตามมามากมาย โปรแกรมฟรี หรือเสียเงินแต่ใช้ฟรีได้ (academic version) ก็ต้องเรียนรู้การวาดรูปใหม่ คนไม่มีหัวรับประกันได้ว่าใช้เวลาหลายเดือนกว่าจะเรียนรู้ได้ การใช้ TikZ กับ M4 Circuit Macro นั้นเหมาะกับรูปทั่ว ๆ ไป ส่วนงานเฉพาะก็ลำบาก ยกเว้น M4 Cirucit Macro ที่ว่าวงจรไฟฟ้าได้ดีที่สุดอยู่แล้ว WinFIG (มีค่าใช้จ่าย) ดูจะแก้ปัญหาได้ทั้งหมด แต่การวาดรูปเฉพาะทางก็เสียเวลามาก ในสาขาที่ผมทำงานอยู่ การวาดรูป P&ID ก็เป็นปัญหามาก วันนี้ก็มีแพ็กเกจแนะนำ ผมยังไม่ได้ลองใช้ แต่คิดว่าน่าจะเพียงพอต่อความต้องการในการวาดรูปประกอบหนังสือ ซึ่งมี Chemplants - Symbology to draw chemical plants with TikZ PIDcircuitTikZ ผมยังไม่เคยใช้แต่จดไว้ก่อน อีกตัวหนึ่งที่กำลังตามหาอยู่ก็คือโปรแกรมวาดรูป Mechanics

Read More →
ความลับสวรรค์ 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 →
Diagrams on a Big Diagram

ปัญหาหนึ่งในการวาดรูปแผนภาพในการแสดงข้อมูลของการตอบสนองที่ตำแหน่งต่าง ๆ นั้น เป็นเรื่องที่ยากมากสำหรับการวาดรูปด้วย LaTeX อาจจะต้องวาดหลายรูปแล้วนำไปย่อแล้ววางยังตำแหน่งต่าง ๆ ซึ่งไม่สะดวกนัก ตัวอย่างเช่น แผนภาพ Poincare   ใน http://texample.net/tikz/examples/poincare/ ได้มีการแชร์วิธีการวาดแผนภาพแบบนี้ เอาไว้ศึกษากันนะครับ  

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

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

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

Read More →
เอกสารคำสอนภาษาไทย

ในการเขียนเอกสารภาษาไทยเล่มโต ๆ กลุ่มอาจารย์หลาย ๆ คนจะนิยมใช้ XeLaTeX ร่วมกับฟอนต์ TH Sarabun New จากที่รู้ ๆ กันอยู่คือฟอนต์บน windows ไม่เท่ากับบน LaTeX ต้องทำการขยายด้วยตัวคูณ 1.29 หรือ 1.3 และการเว้นบรรทัดก็ใช้ 1.2 ขึ้นไป การใช้วิธีนี้มีข้อจำกัดอยู่พอสมควร เรื่องฟอนต์ของ Math mode ซึ่งไม่ได้ขยายตามตัวอักษร กล่าวคือตัวคูณที่กล่าวมานั้นเหมาะกับฟอนต์ 12 pt ของ LaTeX ไม่ได้เหมาะกับขนาดอื่น ถ้าเราขยายไปมากกว่านั้นก็จะทำให้ฟอนต์ของ Math mode ไม่ได้ขยับตาม วิธีการแก้ปัญหานี้ก็คือใช้คำสั่ง

ซึ่งไม่สะดวกเอาซะเลยเพราะต้องปรับพารามิเตอร์ถึง 4 ค่าด้วยกัน อาจารย์ท่านหนึ่งได้ติดปัญหานี้ แล้วอาจารย์ท่านนั้นก็ได้แลกเปลี่ยนกับผมพอสมควร จนอาจารย์ท่านนั้นได้คำตอบคือการใช้ class extbook ซึ่งเป็นการขยายความสามารถของ class book โดยที่เราไม่ต้องมานั่งปรับค่าต่าง ๆ ให้ยุ่งยาก ซึ่งมีความสามารถดังนี้ […]

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 →
The Power of TikZ

ได้รู้จัก TikZ มานาน แต่ใช้น้อยมาก ทั้ง ๆ ที่ pgf และ TikZ เป็นระบบกราฟฟิคที่เกิดมาคู่กับ Beamer (tool ในการสร้าง presentation ที่นิยมมาก ๆ ในวงการศึกษา) เหตุผลก็ง่าย ๆ ครับ ตัวภาษาที่เป็นคู่มือเล่มหนายังกับ textbook อ่านจบไปร้อยหน้า ก็ยังทำอะไรมากไม่ได้ วิธีการเลี่ยงไปใช้ pgfplot ช่วยในบางกรณีก็ทำมาแล้ว ยากพอกันแต่คู่มือบางกว่า ปัญหาก็เกิดอีกเพราะมันช้ามาก ผมยกตัวอย่าง ถ้าผมต้องการวาดภาพแบบนี้ลงในหนังสือผม (คลิ๊กที่รูปเพื่อดูขนาดจริง) จะทำอย่างไรครับ เมื่อก่อนผมใช้ m4 circuit macro ส่วนกราฟก็ใช้ MATLAB บ้าง ใช้ winfig บ้าง แล้วแต่ความสะดวก ซึ่งไม่สะดวกเอาซะเลย เพราะการวาดกราฟด้วยโปรแกรมวาดรูปที่ถึงจะเป็นโปรแกรมวาดรูปแบบเว็กเตอร์ ก็ยังน่ารำคาญอยู่ดี ใช้หลายโปรแกรม ต้องลากเมาท์ไป เล็งจุดแล้วเล็งอีก สรุปปัญหาหลัก ๆ คือต้องใช้หลายโปรแกรม ต้องเข้าใจผมด้วยนะครับว่าผมใช้ […]

Read More →
Macro floats สำหรับ WinEDT

โพสนี้เป็นของแฟน WinEDT ซึ่งใครไม่ได้ใช้อยู่ก็ข้ามไปนะครับ ต้องบอกก่อนว่าบรรณาธิกรณ์ (editor) ตัวนี้ ผมใช้มายาวนานมาก และซื้อมากใช้สองรอบ รอบแรกคือเวอร์ชัน 4 (อัปเกรดฟรีตลอดชีพ) พอเป็นเวอร์ชัน 6 เจ้าของโปรแกรมบอกต้องลงทุนเพิ่ม อยากได้ต้องซื้อใหม่ ก็ทำการซื้อไป แล้วก็ใช้มาตลอด ข้อจำกัดของ WinEDT นั้นก็มีเยอะ เช่นไม่มีระบบ autocomplete ซึ่งจะว่าไปแล้วผู้ใช้ที่ชำนาญ ก็ไม่มีใครใช้ นอกจากนั้น WinEDT ยังใช้วิธีการปรับเปลี่ยนส่วนติดต่อกับผู้ใช้ที่ยากลำบากมาก แต่เจ้าของโปรแกรมอ้างว่าถ้าใช้ LaTeX ได้ระดับนี้ การแก้ไขส่วนติดต่อผู้ใช้ด้วย text mode ก็ไม่น่าจะมีปัญหา ถ้ามีปัญหาก็เลิกใช้ไปเถอะ (จะเห็นว่าสังคมนี้โหดมากแต่ไหนแต่ไร) คุณ Karl Koeller ที่น่าจะเป็นหนึ่งเดียวบน http://www.winedt.org/ แล้วมั้งตอนนี้ ได้นำเสนอแพ็กเกจ floats ให้ชุมชนได้ใช้  ผมได้ลองใช้แล้ว บอกได้คำเดียวว่ามันยอดมากครับ ความสามารถหลัก ๆ ก็คือการเอา caption ของรูปภาพ ตาราง มานำเสนอในรูปแบบโครงสร้างต้นไม้ ทำให้เราเข้าถึงได้ง่ายขึ้น […]

Read More →
underscore !

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

Read More →