นี้คำถามที่แอปเปิ้ลมีข้อความ
กุญแจนี้คืออะไร? ⎋
รูปแบบใดที่ฉันชอบใน Google Chrome
เหตุใดอักขระ Unicode หรือคนอื่น ๆ ที่ไม่สามารถเล่นได้ใน Google Chrome บน Windows 7
นี้คำถามที่แอปเปิ้ลมีข้อความ
กุญแจนี้คืออะไร? ⎋
รูปแบบใดที่ฉันชอบใน Google Chrome
เหตุใดอักขระ Unicode หรือคนอื่น ๆ ที่ไม่สามารถเล่นได้ใน Google Chrome บน Windows 7
คำตอบ:
ฉันสมมติว่ามันเป็นปัญหาการทดแทนแบบอักษร
เบราว์เซอร์พบปัญหา "สัญลักษณ์ที่เลือกไม่ได้อยู่ในแบบอักษรที่ระบุ" มีสองทิศทางที่คุณสามารถไปได้จากที่นี่: คุณสามารถดึง glyph ที่เทียบเท่าออกมาจากแบบอักษรอื่น (ซึ่งมักจะดูแตก แต่อาจไม่ชัดเจนว่าทำไมกับผู้ใช้) หรือเพียงแค่แสดงตัวยึดตำแหน่งที่ไม่พบอักขระ (ซึ่ง จะดูแตกเสมอ แต่อย่างน้อยก็เห็นได้ชัด)
ฉันจินตนาการว่า Firefox และ Opera รับรู้ว่าสัญลักษณ์ที่ร้องขอนั้นเป็นสัญลักษณ์ที่ปลอดภัยในการดึงจากแบบอักษรอื่นในขณะที่เบราว์เซอร์ที่เหลืออยู่นั้นมีความอนุรักษ์นิยมและเพิ่งแสดงสัญลักษณ์ "Uh ... dunno"
น่าสนใจ ไม่ใช่แค่ Chrome - คุณอาจถามว่าทำไมเบราว์เซอร์ใด ๆต่อไปนี้ไม่สามารถแสดงบน Windows 7:
จากบนลงล่าง:
ดังนั้น Firefox และ Opera สามารถแสดงอักขระยูนิโค้ดนี้ใน Windows 7 แต่เบราว์เซอร์อื่นไม่สามารถทำได้
กุญแจนี้คืออะไร? ⎋
คำถามที่ถามว่า "เพราะเหตุใดอักขระ Unicode จึงไม่สามารถแสดง [... ] ใน Google Chrome บน Windows 7" คือ
ตัวละครนั้นเป็นเพียง codepoint ของ Unicode ซึ่งเป็นตัวเลขโดยพลการ มีจำนวน codepoints Unicode จำนวนมากที่ไม่มีสัญลักษณ์ 'เป็นทางการ' แม้ว่าพวกเขาจะมีสัญลักษณ์ก็ไม่จำเป็นต้องเป็นกรณีที่ตัวอักษรของคุณมีสัญลักษณ์สำหรับ codepoint นั้น หากคุณเลือกแบบอักษรอื่นคุณอาจท้ายด้วยสัญลักษณ์อื่น
ฉันดู CSS สำหรับหน้าและมันแสดงให้เห็นว่าตัวละครนี้แสดงใน Arial (รวมถึงฟอนต์อื่น ๆ ที่ไม่สำคัญ) Windows มาพร้อมกับ Arial ดังนั้นควรเลือกแบบอักษรนั้นก่อนเสมอ ดูเหมือนว่า Arial จะไม่มีสัญลักษณ์สำหรับ codepoint ของ Unicode ทุกครั้งที่คุณไม่มี glyph สำหรับ codepoint มันวางในรูปแบบของกล่องที่ระบุว่าไม่มี glyph (ตามที่คนอื่น ๆ ระบุไว้)
คำถามที่ใหญ่กว่าคือ Firefox คืออะไรหรือเบราว์เซอร์อื่นที่ทำงานบน Windows ฉันดูแบบอักษรอื่น ๆ ที่ระบุไว้ใน CSS (ฉันคิดว่ามันอาจจะล้มลงในแบบอักษร CSS ถัดไป) แต่พวกเขายังไม่มี glyph สำหรับ codepoint นั้น ความเป็นไปได้อย่างหนึ่งคือ Firefox จริงมาพร้อมกับแบบอักษร
เมื่อขุดลงใน firefox ฉันสังเกตเห็นแบบอักษรบางอย่างสำหรับสัญลักษณ์ทางคณิตศาสตร์ที่นี่: 'C: \ Program Files (x86) \ Mozilla Firefox \ res \ fonts' บางทีนี่อาจเป็นที่มาของมัน
ฉันรู้ว่านี่เป็นคำถามเก่า ๆ แต่สำหรับผู้ที่เพิ่งเริ่มต้นกับ Google ฉันมีวิธีแก้ปัญหาที่ทำงานได้ในปี 2013 ก่อนอื่นคุณต้องยืนยันว่าคุณมีแบบอักษรที่ติดตั้งในพีซี Windows 7 ที่สามารถแสดงผลได้ ตัวอักษร:
http://www.fileformat.info/info/unicode/char/238b/index.htm
สมมติว่าอย่างน้อยหนึ่งตัวอักษรในรายการแบบอักษรท้องถิ่นทำให้สิ่งนี้:
หากไม่มีให้ติดตั้งฟอนต์ Unicode "catch all" สองสามตัว: Code2000และSymbola
เมื่อคุณมีแบบอักษรที่จะแสดงสัญลักษณ์คุณสามารถลองหน้าทดสอบเบราว์เซอร์:
http://www.fileformat.info/info/unicode/char/238b/browsertest.htm
Chrome 28.0.1500.95 (และอาจเป็นรุ่นล่าสุดทั้งหมด) ทำการทดแทนแบบอักษร ... ส่วนใหญ่
ไม่ว่าด้วยเหตุผลใดก็ตามถึงแม้จะมีแบบอักษรที่ทำให้U + 1F3C1ติดตั้งอย่างถูกต้อง Chrome 28.0 จะไม่แสดงอักขระ Unicode นี้: 🏁 Firefox ทำงานได้อย่างสวยงาม ไปคิด
ตามขั้นต่ำที่แน่นอนผู้พัฒนาซอฟต์แวร์ทุกรายต้องรู้อย่างแน่นอนเกี่ยวกับ Unicode และชุดอักขระ (ไม่มีข้อแก้ตัว!) โดย Joel Spolsky "ถ้าไม่มีจุดเทียบเท่า Unicode code ที่คุณกำลังพยายามนำเสนอในการเข้ารหัสที่คุณกำลังพยายาม หากต้องการแสดงมันคุณมักจะได้รับเครื่องหมายคำถามเล็ก ๆ น้อย ๆ : หรือถ้าคุณเป็นกล่องจริงๆ
ฉันกำลังใช้งาน Chromium 13.0.782.112 บน Archlinux และการเข้ารหัสเริ่มต้นของฉันคือ en_US.UTF-8 - charcter แสดงผลได้ดีบนหน้าเชื่อมโยงเริ่มแรก
คำตอบที่แท้จริง:เป็นเพราะมีข้อผิดพลาดใน Chrome ที่ borks Windows 7 (และสูงกว่า?) แสดงผลแบบอักษร unicode
ปัญหาอยู่ที่นี่พร้อมรายละเอียดเลือดทั้งหมด: https://crbug.com/42984 (ติดดาวแล้วและบางคนอาจสังเกตเห็นมัน)
การวิเคราะห์มากขึ้นและวิธีแก้ปัญหาที่เป็นไปได้สามารถพบได้ที่นี่: http://gschoppe.com/uncategorized/fixing-unicode-support-in-google-chrome/
Firefox 45.0 ใน GNU / Linux LFS 7.9 ของฉันไม่แสดง Unicode glyph ที่กล่าวถึงในคำถาม แต่ก็ไม่ได้แสดง glyphs อื่น ๆ เช่นกรีกเป็นต้น
อย่างไรก็ตามหลังจากดาวน์โหลดSymbola
แบบอักษรจากที่นี่แล้ว:
~$ unzip Downloads/symbola.zip -d Downloads
~$ mv Downloads/Symbola/Symbola_hint.ttf .fonts
~$ fc-cache
Firefox จะแสดง glyph ที่เป็นปัญหาและแสดง glyph อื่น ๆ