
Jika Anda seorang pengembang web, saya yakin Anda akan terbiasa dengan atribut font-keluarga CSS. Biasanya kami akan menetapkan daftar panjang font (keluarga) untuk properti font-family, seperti ini:
. text { font-family : Menlo , Monaco , Consolas , "Courier New" , monospace , Arial , "Microsoft YaHei" , "黑体" , "宋体" , sans-serif; }Beberapa orang pasti akan bertanya, mengapa Anda perlu mengatur ini? Jika Anda cukup berhati -hati, Anda pasti akan menemukan bahwa ketika Anda menelusuri halaman web, font bahasa Inggris dan font Cina bukanlah font yang sama. Jika Anda melihat font yang disajikan oleh halaman web pada sistem operasi yang berbeda atau bahkan di komputer yang berbeda, Anda akan melihat bahwa font yang disajikan pada halaman web berbeda. Mengapa ini?
Selain itu, ketika Anda menggunakan Microsoft Word untuk setel penggilingan paragraf, Anda akan menemukan bahwa kata dapat secara otomatis menerapkan font Cina untuk gaya Cina dan font bahasa Inggris untuk gaya bahasa Inggris. Bagaimana ini dilakukan?
Dalam kebutuhan pengaturan huruf yang sebenarnya, agar terlihat bagus, kita biasanya perlu membuat pengaturan font yang berbeda untuk teks (skrip) dalam bahasa yang berbeda untuk mencapai efek visual terbaik. Tentu saja, bagi kami, yang paling umum adalah pengaturan campuran dalam bahasa Cina dan Inggris. Biasanya rancangan desain yang diberikan oleh desainer sangat indah, tetapi font yang berbeda digunakan dalam bahasa Cina dan Inggris. Bagaimana kita dapat memulihkan desain asli draft desain dengan kesetiaan tinggi?
Jelas, untuk pengembang web, sudah ada solusi yang baik, tetapi untuk siswa pada klien lain, ini mungkin akan agak sulit. Kami biasanya memberi tahu desainer: "Sistem tidak mendukungnya" atau "tidak bisa melakukannya". Jadi, pada kenyataannya, bisakah itu dilakukan? Jawabannya adalah ya.


Metode 1: fbCharm tersedia melalui cocoapods. Untuk menginstalnya, cukup tambahkan baris berikut ke podfile Anda:
pod 'fbCharm'
let text = "これは日本語文章と Roman Text の混植文章です。美しいヒラギノと San Francisco で日本語とローマ字を書きます。System Font のフォントメトリクスには独自の調整が入っています。 n n这是一段中文简体。 n這是一段中文繁體。 nうつくしい森で飾られたモーリオ市、 n郊外のぎらぎらひかる草の波。 n祇辻飴葛蛸鯖鰯噌庖箸n底辺直卿蝕薩化n ABCDEFGHIJKLM n abcdefghijklm n 1234567890 n iClockᴹᴵᴺᴵ n Clockª "
let fontSize : CGFloat = 22.0
// 適当に行間を空ける処理
let paragraphStyle : NSMutableParagraphStyle = NSMutableParagraphStyle ( )
paragraphStyle . minimumLineHeight = fontSize * 1.5
paragraphStyle . maximumLineHeight = paragraphStyle . minimumLineHeight
let attributedString = NSMutableAttributedString ( text : text , families : [ " Lucida Grande " , " Baskerville " , " Apple SD Gothic Neo " ] , size : 18.0 , weight : . light , kern : 4.0 , paragraphStyle : paragraphStyle )
self . label . attributedText = attributedString
//let font = UIFont(families: ["Lucida Grande", "Baskerville", "Apple SD Gothic Neo"], size: 20, weight: .medium)
//self.label.font = font
//self.label.text = text