Microsoft’s Bug

Not mine….

MS's word break bug.

This is why we need to embed ZWSP into the document. It’s not for the present time only, it’s for future use too. Imagine one day you import your html into docbook and found that all paragraph become frustrated.

With embedded ZWSP, you just carefully compose a document and then it will usable everywhere it go.

 

ThaiPort

หลังจากพยายามมาหลายวันก็ได้บทสรุปสำหรับการเขียนภาษาไทยเพื่อให้ตัดคำได้จากบราวเซอร์ทุกตัวที่รองรับ Unicode โดยตอนที่เขียนนี้ทดสอบผ่านแล้วจาก Gecko (Firefox, k-meleon), Opera, Trident (Internet Explorer) ทั้งสามตัวสามารถแสดงภาษาไทยได้ถูกต้องทั้งหมด โดยสามารถควบคุมผ่านทาง Unicode สำหรับตัดคำคือ ZWSP (0x200B) โดยในความเป็นจริงแล้วทั้ง Mozilla และ Opera ต่างก็แนะนำให้ใช้เครื่องหมายนี้แทนการหวังให้ Mozilla และ Opera จะยอมทำตัวตัดคำให้

ปัญหาคือ ZWSP ดันไม่ถูกรองรับโดย IE ซึ่งดันเป็นตัวที่มีผู้ใช้มากที่สุด แต่ปัญหาก็มีทางออกเมื่อไมโครซอฟท์ระบุว่าการที่ไม่รองรับ ZWSP ในตัว IE เองนั้นก็เพราะไมโครซอฟท์ได้อิมพลีเมนต์ไปแล้วในฟอนต์ Arial Unicode MS ซึ่งต้องยอมรับว่าเป็นฟอนต์ที่รองรับ Unicode ได้ค่อนข้างดีมาก

วิธีการแก้ไขตอนนี้คือการบังคับให้ ZWSP ต้องถูกแสดงด้วยฟอนต์ Arial Unicode MS เท่านั้น โดยในกรณีของผม ผมใส่มันไปใน CSS ซึ่งยังไม่แน่ใจว่าเป็นการกระทำที่ดีรึเปล่า โดยที่จริงแล้วอาจจะดีกว่าถ้าใส่เป็น Style ลงไปในทุกๆ span เลย อันนี้ต้องไปถามผู้รู้กันต่อไป โดยข้อเสียของวิธีการของผมคือ html มันดูรกมาก ไม่เชื่อลองเข้ามาดูซอร์สดู เอา Style ใส่เข้าไปทุก span คงเน่ากว่านี้

ตอนนี้ที่เหลือคือการทำ php wordbreak กับการทดสอบ tag ตัดคำที่ใช้อยู่ ขอความช่วยเหลือว่าถ้าใครใช้ safari ช่วยรายงานบั๊กการตัดคำหน่อยครับ เผื่อจะได้แก้กันต่อไปได้

๊Update: By Mk’s help, ZWSP Project now work on Mac but not linux. I decided to scope the project to support only linux that came with installed “DejaVu Sans”. If confirmed working, I will implement automatic word breaking for next.

 

ZWSP#2

หลังจากทดสอบรอบแรกไม่ผ่าน คิดว่าอาจจะเป็นเพราะ TinyMCE วันนี้เราก็เอาอีกรอบ ถ้าคุณย่อขนาดหน้าต่าง Firefox แล้วมันตัดคำถูก แสดงว่าความคิดเริ่มต้นของผมเริ่มเข้าท่าแล้วล่ะ

ลองอีกรอบ

 

ZWSP

หลัง​จาก​ทดสอบ​รอบแรก​ไม่​ผ่าน คิดว่า​อาจจะ​เป็น​เพราะ TinyMCE วันนี้​เรา​ก็​เอา​อีก​รอบ ถ้า​คุณ​ย่อ​ขนาด​หน้าต่าง Firefox แล้ว​มัน​ตัด​คำ​ถูก แสดง​ว่า​ความคิด​เริ่มต้น​ของ​ผม​เริ่ม​เข้าท่า​แล้ว​ล่ะ