2010-04-07 50 views
5

Ứng dụng iPhone của tôi tạo tệp PDF (trong phông chữ Arial). Phiên bản iPhone 3.1.x đơn giản hoạt động tuyệt vời (ngoài vấn đề đã biết là các tệp PDF được tạo trên iPhone không thể được xem chính xác trong Google Tài liệu hoặc trên BlackBerry).Các tệp PDF được tạo trên iPad không hiển thị chính xác trên Windows

Vì tôi đang cập nhật dự án cho OS 3.2 và iPad, nó hoạt động giống nhau và các tệp PDF vẫn trông tuyệt vời trên iPhone, iPad và Mac OS X (ứng dụng Xem trước). Nhưng bây giờ trên Windows (Vista), Acrobat 9.3.1 nói "Không thể giải nén phông chữ nhúng 'XYZABC + ArialMT'. Một số ký tự có thể không hiển thị hoặc in chính xác".

Và trên thực tế Acrobat sau đó sử dụng một số phông chữ chung thay vì Arial (hoặc bất kỳ phông chữ nào khác tôi thử).

Quartz 3.2 dường như tạo các tên phông chữ được nhúng "ngẫu nhiên" này mỗi lần tạo một tệp PDF (XYZABC thay đổi theo mỗi lần). Tôi không thể nói liệu vấn đề có phải là tên phông chữ nhúng "tạm thời" hơi lạ với dấu cộng hay cách mà Quartz 3.2 đang nhúng phông chữ.

Tôi đã thử mã hiện tại của mình (sử dụng các chức năng CGPDFContext*) và cũng có chức năng mới được hỗ trợ UIGraphics*, với cùng kết quả.

Làm cách nào để tạo tệp PDF trên iPad để hiển thị chính xác trên Windows?

+0

Vì vậy, có vẻ như một mẫu các trình đọc PDF (miễn phí) khác trên Windows có thể đọc các tệp này tốt, vì vậy nó (hơi thở) có thể chỉ là Acrobat 9.3.1. Điều đó thật mỉa mai. – Morgan

+0

Tôi đang gặp vấn đề tương tự với Acrobat reader 9.4.0! – Icode4food

Trả lời

3

Cập nhật quan trọng: tính đến iOS 4.2, Apple đã sửa lỗi mà tôi đã báo cáo; Các tệp PDF được tạo từ Quartz trên iOS hiện chứa phông chữ được nhúng đúng cách. Tôi sẽ bỏ phần còn lại của câu trả lời này, nhưng không sử dụng cơ chế này trên iOS 4.2 trở lên.

Adobe Reader là chính xác, nếu không hữu ích, theo thông số kỹ thuật PDF. Tôi đã điều tra điều này vì nó đã ảnh hưởng đến một trong các ứng dụng của tôi và ghi lại những phát hiện của tôi ở đây: http://blog.nomzit.com/2010/08/18/annoying-bug-in-quartz-pdfcontext-font-handling/

Có một cách giải quyết đơn giản khiến Adobe Reader hoạt động giống như các giải pháp thay thế hữu ích hơn.

Tôi cũng đã báo cáo lỗi cho Apple

+0

Cảm ơn bài đăng này. Tôi sẽ bỏ phiếu cho câu trả lời của bạn nhưng vẫn chưa thể. – Morgan

+0

bạn có ý là "... báo cáo lỗi cho Adobe" không? –

+0

Không, Adobe Reader hoạt động chính xác trong trường hợp này, đó là bản PDF do Quartz sản xuất. –

1

Cố gắng sử dụng Foxit Reader để mở file PDF của bạn trên Windows thay vì Adobe Reader. Nó làm việc cho tôi.

0

Ngoài phân tích Phil, tôi đã tìm thấy rằng một số người dùng Windows không có một hoặc nhiều của các phông chữ chuẩn (như Helvetica) được cài đặt. Các tệp PDF được tạo qua Quartz sẽ tham khảo một trong các phông chữ chuẩn này, mà Adobe Reader sẽ hiển thị bằng cách sử dụng phông chữ gần nhất tiếp theo trong bảng tra cứu của nó, dẫn đến các tệp PDF trông kỳ lạ. Các phông chữ hệ thống chuẩn của iPhone/iPad không được nhúng đúng cách, có thể là do những gì Phil đã tìm thấy trong các tệp PDF do Quartz tạo ra.

Trong tất cả các trường hợp tôi chạy qua, điều này đã được giải quyết bằng cách cài đặt người dùng Helvetica (hoặc bất kỳ phông chữ nào khác) trên máy tính Windows của họ, tại thời điểm đó các tệp PDF sẽ hiển thị chính xác.

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