Đây là lỗ hổng nổi tiếng trong công cụ hiển thị văn bản của Windows khi được yêu cầu hiển thị văn bản từ phải sang trái, tiếng Ả Rập hoặc tiếng Do Thái. Nó có một vấn đề khó giải quyết, mọi người thường quay trở lại với các từ và dấu câu của phương Tây khi không có từ thay thế tốt nào có sẵn trong ngôn ngữ. Tên thương hiệu và tên công ty chẳng hạn. Trình kết xuất cố gắng đoán đúng thứ tự hiển thị bằng cách xem xét các điểm mã, với các ký tự trong bộ ký tự La tinh rõ ràng phải được hiển thị từ trái sang phải.
Nhưng nó lộn xộn tại dấu chấm câu, với dấu ngoặc đơn hiển thị nhiều nhất. Bạn phải rõ ràng về nó vì vậy nó biết phải làm gì, bạn phải sử dụng đánh dấu Unicode từ phải sang trái, U+200F
hoặc \u200f
trong mã C#. Ngược lại, sử dụng dấu từ trái sang phải nếu bạn biết mình cần hiển thị LTR, U+200E
.
Nguồn
2013-01-24 16:53:21
99,999% không phải là lỗi mã mà là bất kỳ đầu ra nào bạn chọn. Bạn thấy đầu ra này ở đâu? Đó là phức tạp khủng khiếp cho giao diện người dùng để hỗ trợ cả hai hướng, cho đến ngày nay thậm chí gmail có vấn đề lớn với nó. –