pdfcpu

Logo

PDF tooling for Go and the command line.

View the Project on GitHub pdfcpu/pdfcpu


Changelog
Future Directions
Contributing
Security

Changelog

Entries link to GitHub releases or commits where available.

2026

Release v0.16.0

Update the Go API and configuration model, with cancellation, progress reporting and safer automation.

Strengthen PDF validation, clarify signature evidence, fix PDF processing issues and address six security advisories. Reduce the Go module download size.

See the upgrade guide for required API and configuration changes, and the release notes for details.

Fix #1407, #1444, #1449, #1457, #1460, #1461, #1465-#1467, #1470, #1472-#1474, #1477, #1479, #1484, #1485, #1487.

Release v0.15.0

Improve large-corpus validation diagnostics by streaming per-file failures, reporting a compact summary, and adding validate --progress for quiet runs.

Harden malformed PDF reading, validation, optimization, encryption handling, and signature diagnostics.

Add automatic CJK wrapping for text watermarks.

Fix #1427, #1459.

Release v0.14.0

Harden API and CLI error handling.

Harden signature, timestamp, PKCS#7, certificate-path, and revocation processing.

Eliminate dependencies by using standard-library error handling and internal LZW and PKCS#7 implementations.

Fix #415, #866, #990, #1051, #1088, #1091, #1101, #1123, #1127, #1161, #1265, #1274, #1279, #1282, #1289, #1302, #1311, #1325, #1326, #1340, #1383, #1385, #1387, #1403, #1404, #1417, #1419, #1431, #1437-#1440, #1448. Add regression coverage for #399, #401, #933, #1059, and #1271.

Release v0.13.0

CLI: Add stdin/stdout support and --force.
Refactor command plumbing and parameter handling.
Harden stream parsing, filter decoding, file path handling, and parser limits.
Reduce default binary size by moving bundled EUTL trust-list certificates behind the pdfcpu_eutl build tag.

Fix #513, #801, #1291, #1296, #1316, #1317, #1327, #1359, #1364, #1373, #1375, #1393, #1394, #1396, #1402, #1410, #1411.

Release v0.12.1

Fix #1319, #1322, #1357, #1381, #1388, #1389

Release v0.12.0

Migrate cli to cobra.

Fix #399, #642, #1055, #1201, #1211, #1215, #1229, #1231, #1255, #1261, #1263, #1267, #1268, #1276, #1278, #1280, #1285, #1292, #1297-#1299, #1307, #1329-#1331, #1334, #1341, #1345, #1353, #1382

2025

Release v0.11.1

Fix #846, #1097, #1112, #1156, #1166, #1173, #1176, #1177, #1183, #1185, #1187, #1188, #1189, #1193-#1195, #1202, #1203, #1216, #1226, #1230, #1231, #1235

Release v0.11.0

Add cert inspect command.

Fix #1056, #1085, #1107, #1113, #1117-#1119, #1142, #1149, #1152, #1163, #1165, #1168, #1171

Release v0.10.2

Add signature & cert commands.

Fix #888, #972, #973, #984, #985, #987, #988, #991, #999, #1001, #1007, #1008, #1010, #1013, #1015-#1017, #1019, #1021, #1025, #1027, #1029, #1034, #1036, #1041, #1047, #1049, #1058, #1064, #1065, #1066, #1067, #1072, #1073, #1076, #1077, #1080, #1081, #1089, #1090, #1098, #1099, #1100, #1111, #1114, #1116

2024

Release v0.9.1

Fix config file handling

Release v0.9.0

Add images list, extract, update cmds.
Add config list, reset cmds.
Add offline flag.

Fix #455, #859, #868, #897, #935, #940, #941, #947, #948, #953, #951, #953, #955, #961, #965

Release v0.8.1

Improve CJK, annotation support.

Fix #628, #687, #767, #819, #830, #862, #867, #871, #881, #884-#887, #890, #891, #895, #898, #903, #907, #908, #910-#912, #914, #915, #918, #921, #924, #926, #930-#932

Release v0.8.0

PDF 2.0 encryption, parser speedup, booklet enhancements.

Fix #821, #823, #826, #828, #832, #834, #835, #838, #839, #841, #844, #849, #851, #852, #855

Release v0.7.0

Add zoom command, basic PDF 2.0 updating.

Fix #628, #724, #756, #758-#760, #765-#766, #769-#774, #780, #783-#784, #786-#787, #793-#796, #798, #802, #805-#811, #813-815, #818

2023

Release v0.6.0

Add pagelayout, pagemode, viewerpref cmds, basic PDF 2.0 validation.

Fix #373, #472, #473, #635, #665, #689, #701, #705, #706, #708, #710, #711, #713, #716, #717, #722, #723, #727, #731-733, #734, #736-740, #742,747

Release v0.5.0

Add bookmarks command.

Fix #506, #604, #621, #657, #659, #660, #663, #664, #666, #667, #669, #671

Release v0.4.2

Bookmark support for merging.

Fix #606, #608, #617, #618, #622, #623, #624, #626, #627, #630-#632, #635-#637, #644, #649, #650, #654

Release v0.4.1

Add cut, ndown, poster commands

Release v0.4.0

Add form, resize commands

2021

Commit e9f927d

Fix #396, add config command

Release v0.3.13

Add create command.

Fix 335, #349, #353, #354, #356, #358, #362, #366, #371, #380, #381, #386, #387, #394, #388

Release v0.3.12

Add annotations, images commands.

Fix #300, #302, #323, #324, #329, #331-336, #338, #341-343, #347, #350

Release v0.3.11

Add right to left stamping

Release v0.3.10

Support webp, RTL Unicode Text.

Fix #271, #273, #285, #287, #293-#299, #301, #303, #305, #307, #311, #313, #316, #319

Release v0.3.9

Add booklet cmd.

Fix #276, #279, #280, #285, #288, #290, #291

2020

Release v0.3.8

Add boxes, crop commands.

Fix #210, #216, #236, #238, #241, #244, #245, #250, #252, #256, #258, #259, #262, #264, #265, #268

Release v0.3.7

Add CJKV font support.

Fix #233

Release v0.3.6

Fix #218, #220-#224, #231,#232. Add config dir & file

Release v0.3.5

Fix #145, #207, #208, #213, #215

Release v0.3.4

Fix #100,#102,#177,#180,#187. Fix #191-197, #199-202

Release v0.3.3

stamps: Add hAlign, margins, border.

Fix #157,#170,#173,#175,#181-184,#188

Release v0.3.2

Support multi-stamping.
Add keywords, properties commands.
Add collect, portfolio commands.

Fix #112,#140,#143,#144,#146,#148,#152

2019

Release v0.3.1

TrueType support.

Fix #126,133,137,138

Release v0.3

Fix #113,#114,#117,#119,#121,#123,#130

Release v0.2.5

Fix #101, #103, #107-#109

Release v0.2.4

Fix #100, #104. Use x/image/ccitt.

Release v0.2.3

Transfer repo to org

Release v0.2.2

Fix #95-#97

Release v0.2.1

Fix #92, #93

Release v0.2

Redesign API, info cmd.

Fix #87,#89-#91

Release v0.1.24

Add AES-256 encryption

Commit 86b3445

Fix #82, #86 repairs corrupt xref sections.

Commit f9a4092

Fix #80, #81

Commit 14e74ba

Fix #75, #76

Release v0.1.23

Support multiline watermarks.

fix #27, #61, #63

Commit 80aa62c

Fix #71, #72

Release v0.1.22

Insert & Remove Pages, go mod support.

Commit 967c250

Fix #69: Correct name parsing.

Commit 067897d

Cleanup encryption.

Commit 6e1af9e

Fix stamp transform calc.

Commit 769b2e4

Fix #64: locating lastxref.

Release v0.1.21

Add N-Up, Grid commands.

Fix #51, #58.

2018

Release v0.1.20

Add Import and Rotate commands.

Release v0.1.19

Add JPEG support.

Fix #52,#53,#54,#56.

Release v0.1.18

Add ReadSeeker support.

Fix #5,#39,#44.

Release v0.1.17

TIFF: Add support for CCITT decoding.

Release v0.1.16

CCITT fax decoding.

Fix #38, #40, #41.

Release v0.1.15

Add Stamp cmd, fork x/image/tiff.

Release v0.1.14

Extract: Write Flate as PNG.

Fix #25.

Release v0.1.13

Add Runlength filter support.

Release v0.1.12

Fork compress/lzw, fix #21-#23.

Release v0.1.11

Add LZWDecode filter support.

Release v0.1.10

Add name tree caching.

Fix #18.

Release v0.1.9

Redesign extraction API.

Fix #7.

Release v0.1.8

Introduce PDFObject interface.

Release v0.1.7

Add logging interface.

Merge PR #15.

Release v0.1.6

Add List/Add permissions command.

Release v0.1.5

Add Encrypt/Decrypt command.

2017

Release v0.1.4

Fix object freelist management.

Release v0.1.3

Add Attachments command. Fix #9.

Release v0.1.2

Fix #11.

Release v0.1.1

Add examples.

Fix #10.