SimplePDF:Swift编写的轻量级PDF生成库





项目名称:SimplePDF

项目概述

SimplePDF是一个用Swift编写的轻量级PDF生成库,它提供了一个简单易用的接口,使得在iOS平台上生成PDF文件变得轻而易举。该库支持添加文本、图片、表格和线条,设置页面布局和内容对齐,以及生成PDF数据或文件。

功能特点

  • 文本添加:支持添加纯文本或自定义字体和颜色的文本。

  • 图片插入:能够将UIImage对象添加到PDF中。

  • 表格创建:可以创建具有行列数、行高、列宽和表格线的表格,并支持自定义字体和颜色。

  • 页面布局:支持设置页面大小和边距,以及开始新的页面。

  • 内容对齐:可以设置内容的水平和垂直对齐方式。

  • 动态内容:支持水平和垂直的空间添加,以及行和列的布局。

  • PDF数据生成:能够生成PDF数据,可以保存为文件或上传到网络。

示例代码

let A4paperSize = CGSize(width: 595, height: 842)
let pdf = SimplePDF(pageSize: A4paperSize)

pdf.addText("Hello World!")
pdf.addImage(anImage)
let dataArray = [["Test1", "Test2"], ["Test3", "Test4"]]
pdf.addTable(rowCount: 2, columnCount: 2, rowHeight: 20.0, columnWidth: 30.0, tableLineWidth: 1.0, font: UIFont.systemFontOfSize(5.0), dataArray: dataArray)

let pdfData = pdf.generatePDFdata()

// 保存为本地文件
try? pdfData.writeToFile(path, options: .DataWritingAtomic)

安装方法

通过Cocoapods安装:

use_frameworks!
pod 'SimplePDF'

使用方法

在Swift文件中导入SimplePDF模块:

import SimplePDF

布局和样式

可以定义表格样式,开始新的页面,以及设置内容的对齐方式:

let tableDef = TableDefinition(alignments: [.left, .left], columnWidths: [100, 300], fonts: [UIFont.systemFont(ofSize: 20), UIFont.systemFont(ofSize: 16)], textColors: [UIColor.black, UIColor.blue])
pdf.addTable(data.count, columnCount: 2, rowHeight: 25, tableLineWidth: 0, tableDefinition: tableDef, dataArray: data)

生成PDF

生成PDF数据后,可以选择保存到本地文件或上传到网络:

let pdfData = pdf.generatePDFdata()

// 写入文件
try? pdfData.writeToFile(path, options: .DataWritingAtomic)

// 或者上传到网络
// 例如使用Alamofire上传...

许可证

SimplePDF在MIT License下可用。

作者

Nutchaphon Rewik
Twitter

或许喜欢

tree-builder:用SwiftUI构建的macOS文件树生成器

tree-builder是一个macOS文件树生成器,使用SwiftUI构建,允许用户指定路径、深度和样式,生成文件树文本。

最近更新 2024-12-09

ChatAppiOS:基于MessageKit和Firebase的聊天应用

ChatAppiOS是一个使用Swift开发的聊天应用,集成了MessageKit和Firebase,支持文本、图片、视频、音频和位置消息的发送,以及个人资料的查看和编辑。

最近更新 2024-12-11

ARInventorySwiftUI:基于AR的实时库存跟踪器,支持iOS和VisionOS

ARInventorySwiftUI是一个集成了增强现实技术的iOS和VisionOS应用,支持同步库存、扫描和捕获物体、生成USDZ文件、云存储以及3D模型预览。

最近更新 2024-12-09

热榜

Made with in Shangrao,China By 老雷

Copyright © devler.cn 1987 - Present

赣ICP备19009883号-1