แก้ปัญหาภาษาไทยให้ stellarium
ผู้นิยมสังเกตดวงดาวยามค่ำคืน จะรู้จักโปรแกรมท้องฟ้าจำลอง stellarium กันดี โปรแกรมนี้เป็นเหมือนแผนที่ดาวสามมิติ พร้อมแสดงตำแหน่งดาวเคราะห์ เนบิวลา ทางช้างเผือก และกาแล็กซีต่าง ๆ
stellarium เริ่มมีการแปลข้อความเป็นภาษาไทยในรุ่น 0.9.1 (17 มกราคม 2551) โดยสืบดูแล้วมาจาก Ubuntu เพื่อนบ้านเรานี่เอง แต่ปัญหาคือ มันแสดงภาษาไทยเป็นกล่องสี่เหลี่ยมหมดเลย ผมเลยเลี่ยงด้วยการเรียกในโลแคล C มาตลอด จนกระทั่งพบวิธีแก้ปัญหาการแสดงผลภาษาไทย
เข้าเรื่องเลยละกัน แฟ้มที่เกี่ยวข้องก็คือ /usr/share/stellarium/data/fontmap.dat
ซึ่งมีเนื้อหาประมาณนี้:
# This file defines what font Stellarium should use for a given locale # # Format is: locale font_file font_scale fixed_width_font_file fixed_width_font_scale # Font files must be ttf format, located in the data directory. # Absolute path can be given by starting file adress with a '/' # # Default font # default DejaVuSans.ttf 1 DejaVuSansMono.ttf 1 # # Overrides per locale # zh_HK ukai.ttf 1.2 ukai.ttf 1.2 zh_TW ukai.ttf 1.2 ukai.ttf 1.2 zh_CN ukai.ttf 1.2 ukai.ttf 1.2 ja ukai.ttf 1.2 ukai.ttf 1.2 ja_JP ukai.ttf 1.2 ukai.ttf 1.2 ko ukai.ttf 1.2 ukai.ttf 1.2
เราก็เพียงเพิ่มรายการสำหรับโลแคลไทยเข้าไปแค่นั้น แต่อย่าไปเชื่อคอมเมนต์ที่บอกว่าสามารถระบุชื่อแฟ้มของฟอนต์เป็น absolute path ได้ เพราะลองทำดูแล้วไม่ได้ผลครับ วิธีที่ได้ผลคือ
- เอาฟอนต์ไทยมาใส่ใน
/usr/share/stellarium/data/
โดยผมสร้างเป็น symlink เอาจากแพกเกจttf-thai-tlwg
โดยเลือกฟอนต์ธรรมดาหนึ่งตัว และ monospace อีกหนึ่งตัว# ln -s /usr/share/fonts/truetype/thai/Waree.ttf /usr/share/stellarium/data # ln -s /usr/share/fonts/truetype/thai/TlwgTypo.ttf /usr/share/stellarium/data
- เพิ่มรายการต่อท้ายใน
/usr/share/stellarium/data/fontmap.dat
:th Waree.ttf 1 TlwgTypo.ttf 1 th_TH Waree.ttf 1 TlwgTypo.ttf 1
จากนั้นก็เพลิดเพลินกับชื่อหมู่ดาวเป็นภาษาไทยคุ้นหูกันได้เลย
- thep's blog
- Log in to post comments
![]() |
ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้ |
Comments
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 4 June, 2009 - 14:50 Permalink
งาม
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 4 June, 2009 - 14:55 Permalink
อ่านหัวข้อใน twitter (Stellarium workaround for Thai)
แล้วนึกว่า เป็น workaround แบบยิ่งใหญ่อลังการ :p
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 3 March, 2010 - 14:10 Permalink
stellarium เริ่มมีการแปลข้อความเป็นภาษาไทยในรุ่น 0.9.1 (17 มกราคม 2551) โดยสืบดูแล้วมาจาก Ubuntu เพื่อนบ้านเรานี่เอง แต่ปัญหาคือ 220-602 มันแสดงภาษาไทยเป็นกล่องสี่เหลี่ยมหมดเลย ผมเลยเลี่ยงด้วยการเรียกในโลแคล C มาตลอด จนกระทั่งพบวิธีแก้ปัญหาการแสดงผลภาษาไทย
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 5 June, 2009 - 14:17 Permalink
เจ๋งครับพี่ ดีครับผม เหมาะสมครับท่าน
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 5 June, 2009 - 14:33 Permalink
ขอบคุณหลาย ๆ เด้อ..........
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 7 June, 2009 - 10:39 Permalink
ขอบคุณครับ
ก่อนแก้ อักษรมุมบนซ้ายก็ปกติไทยได้
หลังแก้ อักษรมุมบนซ้ายก็ปกติไทย ที่สี่เหลี่ยมในภาพก็เป็นไทยสวยงามแต่ที่เป็นตัวอัลฟา เบตาจะเป็นสี่เหลี่ยมแทน โดยอักษรที่มุมบนซ้ายก็แสดงปกติดี
ยังไม่รู้ว่าเป็นจากฟอนต์ไหน
ใช้ อูบุนตู๙.๐๔ ครับ
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 9 June, 2009 - 10:34 Permalink
ดูเหมือนว่า stellarium เขาจะเปิดฟอนต์ ttf แล้ววาดเองนะครับ ถ้า glyph ขาด ก็ไม่ได้พยายามหาจากฟอนต์อื่น อย่างตัว alpha, beta นี่ ก็ไม่มีใน Waree ต้องใช้จาก DejaVu แต่ปัญหาคือมันยังไม่มีกลไกแบบนั้นใน stellarium
วิธีแก้ อาจจะหาฟอนต์ไทยที่มี glyph ครบ ๆ ครับ เช่น ฟอนต์ DejaVuSansThai ของคุณ wd: http://www.thaitux.info/node/502
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 10 June, 2009 - 01:28 Permalink
ขอบคุณครับ
ใช้ DejaVuSansThai.ttf แทน Waree.ttf แล้วใช้ได้ครับ
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 15 June, 2009 - 13:44 Permalink
ผมใช้ windows XP ลองดูแล้วไม่ได้ผลครับ
ขอความกรุณาบอกวิธีด้วยครับ
Re: แก้ปัญหาภาษาไทยให้ stellarium
on 1 September, 2009 - 13:32 Permalink
มันยอดมาก Sara !
ใช้ DejaVuSansThai.ttf แทน Waree.ttf ก็ Ok. ขอขอบคุณทุกคำแนะนำ
ฟอนต์ DejaVuSansThai loadที่ ของคุณ wd: http://www.thaitux.info/node/502
แก้ไข
# Default font
#
default DejaVuSansThai.ttf 1 DejaVuSansThai-Bold.ttf 1
และเพิ่ม
th DejaVuSansThai.ttf 1 TlwgTypo.ttf 1
th_TH DejaVuSansThai.ttf 1 TlwgTypo.ttf 1