This Swift package provides two targets:
pdfsnip
, a command-line utility to extract images from PDF files.PDFWrappers
, a Swift library wrapping raw pointer-based types from CoreGraphics with a nicer API.$ cd pdfsnip # directory containing the pdfsnip package and this readme :)
$ swift run pdfsnip [file.pdf] [outdir]
Extracts images from the given PDF file and saves them to the output directory.
PDFWrappers
to traverse PDF dataIn your Package.swift, add this package to your package's dependencies, and its PDFWrappers
product to your target's dependencies. Example:
let package = Package(
...
dependencies: [
.package(url: "https://github.com/jtbandes/pdfsnip.git", from: "0.0.1")
],
targets: [
.target(
...
dependencies: [
.product(name: "PDFWrappers", package: "pdfsnip"),
]),
]
)
Now you can use PDFDictionary
and other wrapper types to access PDF data more safely and conveniently:
let doc: CGPDFDocument = ...
if let rawPageDict = doc.page(at: 1)?.dictionary {
let pageDict = PDFDictionary(dictionary: rawPageDict)
// Instead of:
var str: CGPDFStringRef?
if CGPDFDictionaryGetString(rawPageDict, "Key", &str) { ... }
// Use:
if let str = pageDict[string: "Key"] { ... }
}
link |
Stars: 5 |
Last commit: 2 years ago |
Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics