娜芙蒂蒂

娜芙蒂蒂 由 Dmytro Skorokhod 开发,是一个开源的 iOS 库,用于从照片创建可搜索的 PDF 文档。它接受一个 UIImage 对象数组,并返回一个符合 NefertitiFileProtocol 的文件。

娜芙蒂蒂 可以作为一个 Swift 包使用。要开始使用该库,请添加包依赖项,然后将 Nefertiti 和 NefertitiFile 导入到你的源代码文件中。

这是一个关于如何将 Nefertiti 与 VisionKit 一起使用的示例

    import Nefertiti
    import NefertitiFile
    import VisionKit

    let nefertiti: NefertitiPDFMakerProtocol = NefertitiSearchablePDFMaker()
    var pdfDocumentSavingOperation: ((any NefertitiFileProtocol) -> ())?

    extension VisionDocumentCameraManager: VNDocumentCameraViewControllerDelegate {
        func documentCameraViewController(_ controller: VNDocumentCameraViewController,
                                      didFinishWith scan: VNDocumentCameraScan) {
          var pageImages = [UIImage]()
        
          for pageIndex in 0 ..< scan.pageCount {
              pageImages.append(scan.imageOfPage(at: pageIndex))
          }
        
          nefertiti.generatePdfDocumentFile(from: images) { file, error in
              if let error = error {
                  debugPrint(error)
                  return
              }

              guard let file = file,
                    let pdfDocumentSavingOperation = pdfDocumentSavingOperation else { return }
            
              pdfDocumentSavingOperation(file)
          }
       }
    }

阅读 NefertitiFile 库文档,以获取 NefertitiFileProtocol 用法的示例。