สมมติฐานของคุณถูกต้อง iOS ของคุณต้องการให้คุณระบุตัวอักษรตามชื่อของมัน Postscript (หรือ Fullname) ซึ่งเป็นไปไม่ได้เสมอเช่นเดียวกับตัวอักษรของชื่อไฟล์ที่เกิดขึ้นจริง
คุณสามารถรับชื่อ PostScript โดยใช้ FontBook (ดังแสดงในคำตอบที่ยอมรับได้ที่นี่) แต่มีวิธีอื่น ๆ
จาก XCode ภายในโดยตรงคุณสามารถดึงชื่อ PostScript UIFont
จากติดตั้งแบบอักษรของโครงการผ่านทาง เรียกใช้สิ่งนี้เพื่อพิมพ์ชื่อ PostScript ของแบบอักษรโครงการที่ติดตั้งของคุณ:
ในObjective-C ( แหล่งที่มา ):
for (NSString *fontFamilyName in [UIFont familyNames]) {
for (NSString *fontName in [UIFont fontNamesForFamilyName:fontFamilyName]) {
NSLog(@"Family: %@ Font: %@", fontFamilyName, fontName);
}
}
หรือSwift 3.0 ( แหล่งที่มา )
for familyName in UIFont.familyNames {
for fontName in UIFont.fontNames(forFamilyName: familyName ) {
print("\(familyName) : \(fontName)")
}
}
หรือจากเทอร์มินัลจากภายในไดเรกทอรีที่คุณมีไฟล์ฟอนต์คุณสามารถเรียกใช้สคริปต์นี้เพื่อพิมพ์ชื่อ PostScript ทั้งหมดของฟอนต์ในไดเรกทอรีปัจจุบัน (ใช้fc-scan
ยูทิลิตี้จากfontconfigซึ่งติดตั้งไว้แล้ว) ( แหล่งที่มา ):
for file in "$arg"*.{ttf,otf}; do fc-scan --format "%{postscriptname}\n" $file; done
นี่คือภาพหน้าจอของคำสั่งด้านบนที่ทำงานใน~/Library/Fonts
ไดเรกทอรีของฉัน:
สคริปต์ด้านบนจะทำงานตลอด.ttf
และ.otf
ไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันจากนั้นพิมพ์ชื่อ PostScriptสำหรับแต่ละฟอนต์ซึ่งคุณสามารถใช้เพื่ออ้างอิงไฟล์ฟอนต์ใน XCode หรือที่อื่น ๆ
หากคุณต้องการจินตนาการด้วยข้อมูลเพิ่มเติม (PostScriptName, ชื่อไฟล์) และการเข้ารหัสสีคุณสามารถเรียกใช้สคริปต์ทางเลือกนี้:
for file in "$arg"*.{ttf,otf}; do
postscriptname=$(fc-scan --format "%{postscriptname}\n" $file);
printf "\033[36m PostScript Name:\033[0m %s \e[90m(%s)\033[0m\n" "$postscriptname" "$file";
done
นี่คือเร็วกว่าโค้ดการคัดลอกภายในไฟล์ AppDelegate.m ของคุณเพื่อพิมพ์ชื่อทุกครั้งที่คุณต้องการเพิ่มไฟล์ฟอนต์ใหม่ซึ่งเป็นวิธีที่นิยมและเร็วกว่าการเปิด Font ใน FontBook ไปที่ ตรวจสอบชื่อ PostScript
เคล็ดลับที่เป็นประโยชน์:หากคุณนามแฝงสคริปต์ด้านบนในเทอร์มินัลของคุณเพื่อให้สิ่งที่คุณต้องทำคือพิมพ์คำสั่งเดียวเพื่อรับชื่อฟอนต์ PostScript ทั้งหมดสำหรับไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันคุณจะประหยัดเวลาในเวิร์กโฟลว์การพัฒนาและ เตรียมสคริปต์ที่มีประโยชน์นี้ให้พร้อมใช้งานเมื่อคุณต้องการ
หวังว่านี่จะช่วยได้!