2012-11-30 17 views
16

Tôi đang viết ứng dụng iPhone/iPad cho iOS 6 cần hiển thị các ký tự tiếng Trung. Các phông chữ Châu Á được cài đặt theo mặc định trong iOS 6 để lại rất nhiều điều mong muốn. Tuy nhiên, ở cuối Apple's iOS 6: Font List page, Apple tuyên bố rằng:Làm cách nào để cài đặt và sử dụng các phông chữ Châu Á bổ sung có trong iOS 6?

"Ứng dụng cũng có thể cài đặt các phông chữ [chủ yếu là Châu Á] nếu cần."

Họ phông chữ châu Á không xuất hiện trong danh sách được cung cấp bởi [UIFont familyNames]. Tôi không tìm thấy bất kỳ thông tin nào trong tài liệu lớp UIFont hoặc trên Diễn đàn nhà phát triển Apple về cách cài đặt phông chữ, có lẽ đã được đưa vào iOS 6 nhưng chưa được cài đặt. Bất kỳ ý tưởng?

+0

Câu hỏi hấp dẫn! Tôi sắp chết để biết câu trả lời ngay bây giờ. –

Trả lời

8
  • Bạn không thể thay đổi font toàn cầu trong iOS.
  • Một số danh sách này được đã "cài đặt" và xuất hiện trong [UIFont familyNames] (ví dụ như của Apple SD Gothic Neo)
  • Mỗi ứng dụng iOS có thể thêm phông chữ tùy chỉnh mà không được hỗ trợ, tuy nhiên (ví dụ BiauKai)
  • không diffs API 5,1-6,0 trong UIFont.h
  • không diffs API trong UIFont.h từ 4,0 (thêm lineHeight, không dùng nữa hàng đầu).

"Ứng dụng cũng có thể cài đặt như sau [chủ yếu là châu Á] phông chữ khi cần thiết."

Vì chúng tôi biết mọi nhà phát triển đều có thể sử dụng phông chữ tùy chỉnh, hoàn toàn không có vấn đề gì để thêm chúng hoặc "cài đặt" chúng cho ứng dụng của bạn.

Tôi khá chắc chắn đây là một số phông chữ được yêu cầu, một số người ở Apple đã viết trên trang này để cho thấy rằng có thể sử dụng các phông chữ này mặc dù chúng không được iOS hỗ trợ đặc biệt.


Tôi biết điều này là không có câu trả lời đó là hoàn toàn đúng hay hoàn toàn sai - nó dựa trên thông tin mà tôi biết và tôi tìm thấy trên web và làm cho nó rõ ràng, rằng chúng ta có lẽ không bao giờ biết câu trả lời.


Để hỗ trợ một phông chữ tùy chỉnh thêm phông chữ của bạn trong một định dạng .ttf để dự án của bạn (và mục tiêu của bạn - Tôi quên này nhiều lần!) Và thêm nó vào bạn Info.plist. Giờ đây, bạn có thể sử dụng nó với someLabel.font = [UIFont fontWithName:@"MySuperFont" size:100];

+0

Tôi thấy danh sách này ngay sau thông báo iOS6 khi họ nói họ đã thêm nhiều ngôn ngữ Châu Á hỗ trợ, vì vậy tôi cho rằng chúng không được cài đặt theo mặc định vì chúng có kích thước khá lớn nhưng ứng dụng có thể kích hoạt tải xuống. Nhưng bạn có lẽ đúng. – Vincent

+0

... nhưng hỗ trợ phông chữ không giống như hỗ trợ ngôn ngữ. Theo quan điểm của Apple, quan hệ hợp lý duy nhất là hỗ trợ phông chữ trong Safari. Nhưng kể từ khi '@ font-face' tất cả mọi thứ có thể ở đây quá. –

+0

Giải pháp hoàn toàn chính xác. Nếu bạn muốn một phông chữ đặc biệt, chỉ cần tải xuống .ttf từ nhiều trang phông chữ hoặc sử dụng https://github.com/nathanhammond/iosfont để tải xuống và đặt chúng trong Dự án Xcode của bạn. – lukaswelte

0

iOS hỗ trợ thêm phông chữ tùy chỉnh trong ứng dụng iOS. Đây là mẫu giải thích cách bạn có thể làm điều đó.

http://www.mobilefontfonts.com/use/ios

+0

Điều này chắc chắn KHÔNG phải những gì anh ta hỏi. –

0

Nếu bạn tải xuống bất kỳ phông chữ nào bạn thích cho máy Mac của mình và cài đặt nó.Nó sẽ xuất hiện trong Xcode như dưới đây:

enter image description hereenter image description hereenter image description here

+0

Nó sẽ hoạt động trong Trình tạo giao diện nhưng nó sẽ không hoạt động trên iOS, bởi vì bạn chưa thêm nó vào mục tiêu của mình. –

+0

@Fabio Poloni - À phải rồi. Bạn cũng cần thêm phông chữ vào thư mục khung công tác trong dự án – OnkaPlonka

+0

Thêm phông chữ vào dự án của bạn. Thêm nó vào mục tiêu của bạn (hoặc nó sẽ không có sẵn). Thêm nó vào Info.plist của bạn. Sau đó, mọi thứ sẽ hoạt động;) –

2

"Ứng dụng cũng có thể cài đặt các phông chữ [chủ yếu là Châu Á] là cần thiết".

Đó là về pháp lý và hoạt động số. Những phông chữ này (co? -) được cấp phép theo Apple và có sẵn trong Mac OSX. Nếu bạn muốn sử dụng chúng, bạn có thể đưa chúng vào dự án của mình bằng cách sử dụng bản sao từ thư mục OSX/Library/Fonts trong gói iOS mà không vi phạm bản quyền của chủ sở hữu phông tương ứng.

Hơn nữa: chúng tương thích với iOS 6 (ví dụ: thông qua Xác thực phông chữ trong ứng dụng Phông chữ), bạn có thể biết rằng có nhiều phông chữ Châu Á tự do trong tự nhiên nhưng không hoạt động 100% trên iOS 6 và thật là bực mình khi thử tất cả chúng; giấy phép cho phông chữ Châu Á chuyên nghiệp là khá tốn kém.

Để cài đặt phông chữ mong muốn "Phông chữ", xác định phông chữ bạn thích, mở trong công cụ tìm kiếm (có thể là tên phông chữ với chữ tượng hình, chỉ cần tiếp tục), sao chép phông chữ vào dự án của bạn và sử dụng làm tham chiếu đến phông chữ tên phông chữ chứ không phải tên tệp. Đảm bảo cập nhật các mục UIAppFonts (Phông chữ được cung cấp bởi ứng dụng) trong thông tin của bạn.

Ví dụ: phông chữ Kaiti trên Mac OSx là 楷体.ttc và chuẩn bị dự án của bạn như được giải thích sẽ cho phép bạn tạo UIFont với tên @"Kaiti SC".

Điểm cuối cùng: bạn KHÔNG nên xuất bản trên github hoặc dự án công khai tương tự có chứa các phông chữ này.