2011-01-14 37 views
6

Tôi đã làm một số đầu đập vào điều này và thu hút lời khuyên của bạn.Cách tiếp cận tốt nhất để sửa đổi các trường biểu mẫu tương tác PDF trên iOS là gì?

Tôi đang xây dựng một ứng dụng như một phần của tính năng của nó là trình bày các biểu mẫu PDF; có nghĩa là hiển thị chúng, cho phép các trường được thay đổi và lưu lại tập tin PDF đã sửa đổi. UIWebViews không hỗ trợ các hình thức tương tác PDF.

Sử dụng apis CGPDF (và hưởng lợi từ các câu hỏi khác được đăng ở đây và ở nơi khác), tôi chắc chắn có thể trình bày PDF (không có trường mẫu/tiện ích), quét và tìm các trường trong tài liệu, tìm ra vị trí trên màn hình để vẽ một cái gì đó và làm cho chúng tương tác.

Điều tôi dường như không thể tìm ra là làm thế nào để thay đổi các đối tượng CGPDFDictionary và viết chúng trở lại một tệp. Người ta có thể sử dụng CGPDF Apis để tạo một tài liệu PDF mới từ toàn bộ vải, nhưng làm thế nào để bạn sử dụng nó để sửa đổi một tập tin hiện có?

Tôi có nên tìm kiếm ở nơi khác như libs PDF của bên thứ 3 như PoDoFo hoặc libHaru không?

Tôi rất muốn nghe ý kiến ​​của bất kỳ ai đã sửa đổi thành công tệp PDF và viết lại nó theo cách tiếp cận của bạn.

+0

Tôi đã hỏi câu hỏi này một vài lần (với tiền thưởng) để không có kết quả. Từ rất nhiều nghiên cứu và làm việc với điều này, bạn cần phải viết một thư viện để làm điều đó bằng cách sử dụng C/C++. PoDoFo không lưu lại và libHaru không mở các tệp pdf hiện có (dựa trên bộ nhớ, có thể ngược lại). Tôi có kể từ khi chỉ cần chuyển từ dự án đó và cố gắng quên đi những nỗi kinh hoàng của CGPDF * API. * rùng mình * –

+0

Đồng ý. Bạn sẽ rất có thể phải cuộn của riêng bạn. Nếu bạn không yêu cầu kết quả có thể chỉnh sửa được, bạn có thể cũng tạo một tệp PDF từ đầu (UIGraphicsBeginPDFContextToFile) và hiển thị tệp PDF hiện có của bạn cùng với bất kỳ lớp phủ/văn bản bổ sung nào mà bạn tạo vào đó. Điều này sẽ được khá chậm mặc dù và kết quả sẽ không được tương tác nữa. – omz

Trả lời

6

Tôi đã từng làm điều này cực kỳ rẻ tiền bằng cách chuyển qua PDF - ý tôi là sử dụng cụm từ thông dụng - và chỉ thay đổi dữ liệu thô thực sự của tệp dữ liệu PDF thô.

Nó có thể hoạt động hoàn hảo trong các tình huống đơn giản, nơi bạn có thể dễ dàng tìm thấy giá trị được đề cập.

Không biết bạn đang cố gắng làm gì ở đây mà là suy nghĩ bên! Hy vọng nó giúp!

+0

Cảm ơn mọi người đã bình luận của bạn. – gbreen

+1

@joe Blow, Bạn có thể giải thích thêm một chút về cách bạn đã làm điều đó không. Có thể bởi một số mã ví dụ, vv Cảm ơn –

+0

@ joe Blow, Điều này nghe có vẻ giống như một giải pháp hoàn hảo cho tôi. Bạn có thể giải thích cách đọc dữ liệu pdf thô trong mục tiêu-c không? – AddisDev

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