1. Các sản phẩm
  2.   PDF
  3.   Swift
  4.   PDFGenerator
 
  

Trình tạo PDF Swift để tạo và xử lý PDF

API Swift PDF Generator mã nguồn mở cho phép các nhà phát triển phần mềm Tạo, chỉnh sửa, thao tác, tách/hợp nhất, phân tích cú pháp và hiển thị tài liệu PDF một cách dễ dàng.

PDFGenerator là thư viện Swift mã nguồn mở cho phép các nhà phát triển phần mềm tạo tài liệu PDF bên trong ứng dụng Swift của riêng họ. Nó được viết bằng Swift 4 và cung cấp một API đơn giản giúp dễ dàng tạo tài liệu PDF theo chương trình mà không cần sử dụng Adobe Acrobat. Thư viện có sẵn trên GitHub theo Giấy phép MIT, cho phép sử dụng và sửa đổi miễn phí cho mọi mục đích. Thư viện này cũng có độ tin cậy cao, với cơ chế phục hồi và xử lý lỗi mạnh mẽ nhằm đảm bảo rằng tài liệu PDF được tạo chính xác và nhất quán.

PDFGenerator rất dễ sử dụng và mang lại hiệu suất cũng như độ tin cậy tuyệt vời, giúp các nhà phát triển dễ dàng tạo tài liệu PDF chỉ bằng một vài dòng mã. Thư viện cung cấp nhiều tính năng quan trọng khác nhau để làm việc với tài liệu PDF, chẳng hạn như thêm văn bản vào PDF, chèn hình ảnh vào trang PDF, thêm bảng, chỉ định bố cục trang PDF, thêm định dạng cho tài liệu PDF, đặt lề trang, thêm đầu trang và chân trang vào PDF, chèn đánh số trang, thêm hình mờ và nhiều tính năng khác.

Thư viện cung cấp API đơn giản và trực quan giúp bạn dễ dàng tạo tài liệu PDF mà không cần phải xử lý sự phức tạp của định dạng tệp PDF. Thư viện đã được thử nghiệm rộng rãi và tối ưu hóa về hiệu suất, đảm bảo rằng nó có thể xử lý các tài liệu PDF lớn và phức tạp một cách dễ dàng. Cho dù bạn đang phát triển ứng dụng iOS hay macOS, PDFGenerator là một công cụ tuyệt vời có thể đơn giản hóa quá trình tạo tài liệu PDF và giúp bạn tiết kiệm thời gian và công sức.

Previous Next

Bắt đầu với PDFGenerator

Cách cài đặt PDFGenerator được khuyên dùng là sử dụng CocoaPods. Vui lòng sử dụng lệnh sau để cài đặt suôn sẻ.

Cài đặt PDFGenerator qua CocoaPods

pod 'PDFGenerator', '~> 3.1'

pod install 

Bạn có thể tải xuống trực tiếp từ GitHub.

Tạo tài liệu PDF qua Swift API

Thư viện PDFGenerator mã nguồn mở cho phép các nhà phát triển phần mềm tạo tài liệu PDF mới bên trong Ứng dụng Swift của riêng họ. Thư viện đã hỗ trợ nhiều tính năng quan trọng khác nhau liên quan đến quản lý tệp PDF, chẳng hạn như tạo tài liệu nhiều trang, tạo tài liệu PDF tương tác, chèn trang mới vào tệp PDF hiện có, chèn đầu trang và chân trang, hỗ trợ đánh số trang, thêm hình mờ văn bản và hình ảnh, Chú thích PDF (liên kết, nhận xét và trường biểu mẫu), tạo báo cáo và nhiều hơn nữa.

Tạo PDF từ (các) hình ảnh qua API Swift

public enum PDFPage {
    case whitePage(CGSize) // = A white view
    case view(UIView)
    case image(UIImage)
    case imagePath(String)
    case binary(Data)
    case imageRef(CGImage)
}

func generatePDF() {
    let v1 = UIView(frame: CGRect(x: 0.0,y: 0, width: 100.0, height: 100.0))
    v1.backgroundColor = .red
    let v2 = UIView(frame: CGRect(x: 0.0,y: 0, width: 100.0, height: 200.0))
    v2.backgroundColor = .green

    let page1 = PDFPage.View(v1)
    let page2 = PDFPage.View(v2)
    let page3 = PDFPage.WhitePage(CGSizeMake(200, 100))
    let page4 = PDFPage.Image(UIImage(contentsOfFile: "path/to/image1.png")!)
    let page5 = PDFPage.ImagePath("path/to/image2.png")
    let pages = [page1, page2, page3, page4, page5]

    let dst = NSTemporaryDirectory().appending("sample1.pdf")
    do {
        try PDFGenerator.generate(pages, to: dst)
    } catch (let e) {
        print(e)
    }
}

Bảo vệ tệp PDF bằng mật khẩu qua API Swift

Thư viện PDFGenerator đã hỗ trợ đầy đủ việc tạo tài liệu PDF được bảo vệ bằng mật khẩu bên trong thư viện Swift. Thư viện giúp dễ dàng thêm tính năng bảo vệ bằng mật khẩu cho tệp PDF theo nhiều cách khác nhau, chẳng hạn như đặt mật khẩu cho tệp PDF, đặt mật khẩu cho một trang cụ thể, bảo vệ bằng mật khẩu (bằng chuỗi), sử dụng mô hình PDFPassword, v.v. Ví dụ sau đây cho thấy cách nhà phát triển phần mềm có thể tạo và tạo tài liệu PDF bằng mật khẩu bên trong ứng dụng Swift.

Làm cách nào để tạo PDF bằng mật khẩu qua Swift?

// generate PDF with password: 123456
func generatePDF() {
    let v1 = UIView(frame: CGRect(x: 0.0,y: 0, width: 100.0, height: 100.0))
    v1.backgroundColor = .red
    let v2 = UIView(frame: CGRect(x: 0.0,y: 0, width: 100.0, height: 200.0))
    v2.backgroundColor = .green

    let page1 = PDFPage.view(v1)
    let page2 = PDFPage.view(v2)
    let pages = [page1, page2]

    let dst = NSTemporaryDirectory().appending("sample1.pdf")
    do {
        try PDFGenerator.generate(pages, to: dst, password: "123456")
        // or use PDFPassword model
        try PDFGenerator.generate(pages, to: dst, password: PDFPassword("123456"))
        // or use PDFPassword model and set user/owner password
        try PDFGenerator.generate(pages, to: dst, password: PDFPassword(user: "123456", owner: "abcdef"))
    } catch let error {
        print(error)
    }
}

Tạo tệp PDF dpi tùy chỉnh qua Thư viện Swift

DPI tùy chỉnh (số chấm trên mỗi inch) đề cập đến độ phân giải mà hình ảnh hoặc tài liệu được in hoặc hiển thị. DPI là thước đo mật độ của các pixel hoặc dấu chấm tạo nên hình ảnh, với độ phân giải cao hơn sẽ mang lại hình ảnh có chất lượng cao hơn và chi tiết hơn. Thư viện PDFGenerator Swift mã nguồn mở cho phép các nhà phát triển phần mềm tạo tài liệu PDF theo chương trình bên trong các ứng dụng Swift. Để tạo tệp PDF dpi tùy chỉnh bằng PDFGenerator, nhà phát triển có thể sử dụng mã ví dụ sau.

Trích xuất siêu dữ liệu từ tài liệu PDF

Thư viện PDFGenerator cung cấp cho các nhà phát triển phần mềm khả năng đọc và trích xuất siêu dữ liệu từ tài liệu PDF thông qua PHP. Siêu dữ liệu bao gồm thông tin rất quan trọng về tài liệu PDF. Thư viện hỗ trợ siêu dữ liệu như Người tạo, Từ khóa, Chủ đề, Tác giả, Tiêu đề, Ngày sửa đổi, Ngày tạo và Bị mắc kẹt.

Tạo tệp PDF dpi tùy chỉnh bằng Swift API

// generate dpi300 PDF (default: 72dpi)
func generatePDF() {
    let v1 = UIView(frame: CGRect(x: 0.0,y: 0, width: 100.0, height: 100.0))
    v1.backgroundColor = .red
    let v2 = UIView(frame: CGRect(x: 0.0,y: 0, width: 100.0, height: 200.0))
    v2.backgroundColor = .green

    let page1 = PDFPage.View(v1)
    let page2 = PDFPage.View(v2)
    let pages = [page1, page2]

    let dst = NSTemporaryDirectory().appending("sample1.pdf")
    do {
        try PDFGenerator.generate(pages, to: dst, dpi: .dpi_300)
    } catch (let e) {
        print(e)
    }
}
 Tiếng Việt