TPPDF

2.5.0

TPPDF is a simple-to-use PDF builder for iOS and macOS written in Swift
techprimate/TPPDF

What's New

2.5.0

2024-05-15T15:47:16Z

What's Changed

  • Configure Renovate by @renovate in #331
  • Added generator delegate (#231) by @philprime in #319
  • chore(deps): update actions/checkout action to v3 by @renovate in #337
  • chore(deps): update ghcr.io/danger/danger-swift-with-swiftlint docker tag to v3.15.0 by @renovate in #336
  • chore(deps): update dependency ruby to v3.2.2 by @renovate in #335
  • Fix typos by @woxtu in #338
  • Fix formatting issues by @woxtu in #339
  • chore(deps): update dependency jazzy to v0.14.4 by @renovate in #345
  • chore(deps): update actions/checkout action to v4 by @renovate in #344
  • chore(deps): update dependency slather to v2.7.5 by @renovate in #347
  • chore(deps): update dependency cocoapods to v1.14.1 by @renovate in #349
  • chore(deps): update dependency slather to v2.8.0 by @renovate in #351
  • chore(deps): update dependency cocoapods to v1.14.2 by @renovate in #350
  • chore(deps): update dependency cocoapods to v1.14.3 by @renovate in #353
  • chore(deps): update dependency ruby to v3.3.0 by @renovate in #357
  • chore(deps): update dependency cocoapods to v1.14.3 by @renovate in #354
  • chore(deps): update actions/upload-artifact action to v4 by @renovate in #355
  • chore(deps): update dependency cocoapods to v1.14.3 by @renovate in #358
  • chore(deps): update dependency cocoapods to v1.15.2 by @renovate in #359
  • chore(deps): update dependency cocoapods to v1.15.2 by @renovate in #364
  • Add Lyrcs to Apps using TPPDF by @ptrkstr in #360
  • Fix link frames that don't start on the first line by @jseibert in #368
  • chore(deps): update dependency cocoapods to v1.15.2 by @renovate in #365
  • chore(deps): update dependency macos to v14 by @renovate in #340
  • chore(deps): update dependency ruby to v3.3.1 by @renovate in #371
  • feature/improvements by @philprime in #370
  • chore(deps): update dependency jazzy to v0.15.0 by @renovate in #372
  • docs: migrated Jazzy to SPM by @philprime in #375
  • refactor: moved public pagination structures to directory API by @philprime in #378
  • fix: added edge-case handling for images with zero available height by @philprime in #377

New Contributors

Full Changelog: 2.4.1...2.5.0

TPPDF

TPPDF is a fast PDF builder for iOS & macOS using simple commands to create advanced documents!

Swift iOS|macOS License
Swift Package Manager Cocoapods Carthage

Created and maintained by Philip Niedertscheider and all the amazing contributors.

FeaturesGetting StartedCommunicationUsageInstallationCreditsLicense

Features

  • Page header and footer
  • Dynamic content layout with page alignment
  • Support for tables and cell alignment
  • Attributed strings
  • Custom spacing
  • Image support
  • Horizontal line separators
  • Custom indentation
  • Custom top offset (good for layered rendering)
  • Pagination
  • Image caption
  • Compress images
  • Custom image size fit
  • Images in the header and footer
  • Horizontal line separators in the header and footer
  • Generate PDF files directly to handle large PDF files (Details)
  • PDF metadata
  • Custom table styling
  • Multi-column sections
  • Swift Package Manager Support
  • Tables with cell merging & automatic page breaking
  • Hyperlinks in text
  • Native progress tracking using Foundation.Progress

Getting Started

Building a PDF document is very easy:

First, you create a document with a paperformat...

let document = PDFDocument(format: .a4)

...then you add your information to a container...

document.add(.contentCenter, text: "Create PDF documents easily.")

...then you render the document...

let generator = PDFGenerator(document: document)
let url  = try generator.generateURL(filename: "Example.pdf")

...done!

If you need more details, checkout Usage.

Communication

Attention:

TPPDF is an Open Source side-project of techprimate. As we are currently working on multiple other projects, we only have limited time for fixing bugs and enhancing TPPDF.

That's why any issue reporting and especially Pull Requests are very welcome!

If you need professional support for your company, you can reach out to @philprimes on Twitter or on our website techprimate.com! This is mainly for custom or high-priority requests, therefore we won't publish a consulting pricing for now.

For everything else, please see Communication and this message. Thank you!

  • If you need help, open an issue.
  • If you found a bug, open an issue.
  • If you have a feature request, open an issue.
  • If you want to contribute, submit a pull request.

Example

Take a look at the Getting Started Guide or checkout the Examples (using of one of the following):

  • Clone the repository and open the Examples.xcworkspace
  • Run the Example macOS (SPM) or Example macOS (iOS)

Apps using TPPDF

If you are using TPPDF in your app and want to be listed here, simply create a pull request or let us know on Twitter or via GitHub. We are always curious to see, who is using our project :)

Burnout Coach ChatHistory Hikingbook Bug Journal EnergyTracker Lyrcs
Burnout Coach
by Stéphane Mégy
ChatHistory
by techprimate
Hikingbook
by Zheng-Xiang Ke
Bug Journal
by David Johnson
EnergyTracker
by Stefan Nebel
Lyrcs
by ptrkstr

Credits

TPPDF is created and maintained by Philip Niedertscheider, co-founder of techprimate.

techprimate.com twitter

Contributors

Please consider backing this project by using the following GitHub Sponsor button.

We want to thank all contributors for their effort!

Description

  • Swift Tools 5.5.0
View More Packages from this Author

Dependencies

Last updated: Thu Dec 12 2024 20:25:46 GMT-1000 (Hawaii-Aleutian Standard Time)