Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/Techprimate/TPPDF

TPPDF is a simple-to-use PDF builder for iOS
https://github.com/Techprimate/TPPDF

builder cocoapods generator ios pdf swift

Last synced: about 2 months ago
JSON representation

TPPDF is a simple-to-use PDF builder for iOS

Lists

README

        


TPPDF



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


Swift
iOS|macOS
License



Travis





codebeat


codecov


Swift Package Manager
Cocoapods
Carthage


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


Features
Getting Started
Communication
Usage
Installation
Credits
License

## Features

- [x] Page header and footer
- [x] Dynamic content layout with page alignment
- [x] Support for tables and cell alignment
- [x] Attributed strings
- [x] Custom spacing
- [x] Image support
- [x] Horizontal line separators
- [x] Custom indentation
- [x] Custom top offset (good for layered rendering)
- [x] Pagination
- [x] Image caption
- [x] Compress images
- [x] Custom image size fit
- [x] Images in the header and footer
- [x] Horizontal line separators in the header and footer
- [x] Generate PDF files directly to handle large PDF files ([Details](http://stackoverflow.com/questions/14691264/how-can-i-lower-memory-climb-when-generating-large-pdfs))
- [x] PDF metadata
- [x] Custom table styling
- [x] Multi-column sections
- [x] Swift Package Manager Support
- [x] Tables with cell merging & automatic page breaking
- [x] Hyperlinks in text
- [x] Native progress tracking using `Foundation.Progress`
- [ ] [Documentation](https://techprimate.github.io/TPPDF)

## Getting Started

Building a PDF document is very easy:

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

```swift
let document = PDFDocument(format: .a4)
```

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

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

...then you render the document...

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

**...done!**

If you need more details, checkout [Usage](https://github.com/techprimate/TPPDF/blob/main/Documentation/Usage.md).

## Communication

**Attention:**

TPPDF is an Open Source side-project of [techprimate](https://techprimate.com/).
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](https://twitter.com/philprimes) on Twitter or on our website [techprimate.com](https://techprimate.com/contact)!
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](#communication) and [this message](https://github.com/techprimate/TPPDF/issues/250). Thank you!

- ~~If you **need help**, use [Stack Overflow](http://stackoverflow.com/questions/tagged/tppdf). (Tag 'TPPDF')~~ Just open up another issue, it might lead to better documentation.
- If you **found a bug**, open an [issue](https://github.com/techprimate/TPPDF/issues/new?template=bug_report.md).
- If you **have a feature request**, open an [issue](https://github.com/techprimate/TPPDF/issues/new?template=feature_request.md).
- If you **want to contribute**, submit a [pull request](https://github.com/techprimate/TPPDF/compare).

## Example

Take a look at the [Getting Started Guide](https://github.com/techprimate/TPPDF/blob/main/Documentation/Usage.md#getting-started) or checkout the Examples (using of one of the following):

- Clone the repository and look at the Example folders
- Run `pod try TPPDF`

## 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, founder of [techprimate](https://www.github.com/techprimate).



techprimate.com


twitter


facebook


facebook

### Contributors

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

We want to thank all [contributors](https://github.com/techprimate/TPPDF/graphs/contributors) for their effort!