2015-07-15 30 views
22

Tôi đang tạo trò chơi bằng Xcode (Phiên bản 7.0 Beta) bằng Swift và tôi muốn hiển thị nhãn "Game Over" ở cuối trò chơi trong phông chữ "gameOver.ttf". Tôi đã thêm phông chữ vào thư mục tài nguyên của mình. Tôi không biết làm thế nào để tham khảo nó trong mã của tôi. Tôi có thể xin giúp đỡ không? Mã của tôi:Phông chữ tùy chỉnh Swift Xcode 7

let label = SKLabelNode(fontNamed: "gameOver") 
    label.text = "Game Over" 
    label.fontColor = SKColor.redColor() 
    label.fontSize = 150 
    label.position = CGPointMake(0, 100) 
    label.horizontalAlignmentMode = .Center 
    node.addChild(label) 
+0

có thể trùng lặp của (https [Tôi có thể nhúng một phông chữ tùy chỉnh trong một ứng dụng iPhone?]://stackoverflow.com/questions/360751/can-i-embed-a-custom-font-in-an-iphone-application) – PAC

Trả lời

64

Đây là các bước để thêm một phông chữ tùy chỉnh để bạn ứng dụng:

  1. Add "gameOver.ttf" phông chữ trong ứng dụng của bạn (Make sure that it's included in the target)
  2. Sửa đổi dành cho ứng dụng tệp info.plist.
  3. Thêm phím "Phông chữ được cung cấp bởi ứng dụng" trong một hàng mới
  4. và thêm "gameOver.ttf" như mục mới trong Array "Phông chữ được cung cấp bởi ứng dụng".

Bây giờ phông chữ sẽ có sẵn trong Trình tạo giao diện. Để sử dụng phông chữ tùy chỉnh trong mã chúng ta cần phải gọi nó bằng tên, nhưng tên thường là không giống như tên tập tin của phông chữ

Có 2 cách để tìm tên:

  1. Cài đặt phông chữ trên máy Mac của bạn. Mở Phông chữ, mở phông chữ và xem tên nào được liệt kê.
  2. lập trình liệt kê các phông chữ có sẵn trong ứng dụng của bạn

cho cách tiếp cận thứ hai thêm dòng này là ứng dụng đại biểu của bạn didFinishLaunchingWithOptions

println(UIFont.familyNames()) 

Để liệt kê các phông chữ bao gồm trong mỗi gia đình font chữ, trong nhanh chóng 2:

class func printFonts() { 
    for familyName in UIFont.familyNames() { 
     print("\n-- \(familyName) \n") 
     for fontName in UIFont.fontNamesForFamilyName(familyName) { 
      print(fontName) 
     } 
    } 
} 

sau khi tìm tên phông chữ tùy chỉnh của bạn y sử dụng nó như thế này:

SKLabelNode(fontNamed: "gameOver") // put here the correct font name 

hoặc trong một nhãn đơn giản:

cell.textLabel?.font = UIFont(name: "gameOver", size: 16) // put here the correct font name 

Useful resource

Các vấn đề liên quan