{"id":"7fb8e39f-4a2a-4ae9-a779-04b3f795e9f6","shortId":"t7sFeS","kind":"skill","title":"Pdftk Server","tagline":"Awesome Copilot skill by Github","description":"# PDFtk Server\n\nPDFtk Server is a command-line tool for working with PDF documents. It can merge, split, rotate, encrypt, decrypt, watermark, stamp, fill forms, extract metadata, and manipulate PDFs in a variety of ways.\n\n## When to Use This Skill\n\n- Merging or joining multiple PDF files into one\n- Splitting or bursting a PDF into individual pages\n- Rotating PDF pages\n- Encrypting or decrypting PDF files\n- Filling PDF form fields from FDF/XFDF data\n- Applying background watermarks or foreground stamps\n- Extracting PDF metadata, bookmarks, or form field information\n- Repairing corrupted PDF files\n- Attaching or extracting files embedded in PDFs\n- Removing specific pages from a PDF\n- Collating separately scanned even/odd pages\n- Compressing or decompressing PDF page streams\n\n## Prerequisites\n\n- PDFtk Server must be installed on the system\n  - **Windows**: `winget install --id PDFLabs.PDFtk.Server`\n  - **macOS**: `brew install pdftk-java`\n  - **Linux (Debian/Ubuntu)**: `sudo apt-get install pdftk`\n  - **Linux (Red Hat/Fedora)**: `sudo dnf install pdftk`\n- Access to a terminal or command prompt\n- Verify installation by running `pdftk --version`\n\n## Step-by-Step Workflows\n\n### Merge Multiple PDFs\n\n```bash\npdftk file1.pdf file2.pdf cat output merged.pdf\n```\n\nUsing handles for more control:\n\n```bash\npdftk A=file1.pdf B=file2.pdf cat A B output merged.pdf\n```\n\n### Split a PDF into Individual Pages\n\n```bash\npdftk input.pdf burst\n```\n\n### Extract Specific Pages\n\nExtract pages 1-5 and 10-15:\n\n```bash\npdftk input.pdf cat 1-5 10-15 output extracted.pdf\n```\n\n### Remove Specific Pages\n\nRemove page 13:\n\n```bash\npdftk input.pdf cat 1-12 14-end output output.pdf\n```\n\n### Rotate Pages\n\nRotate all pages 90 degrees clockwise:\n\n```bash\npdftk input.pdf cat 1-endeast output rotated.pdf\n```\n\n### Encrypt a PDF\n\nSet an owner password and a user password with 128-bit encryption (default):\n\n```bash\npdftk input.pdf output secured.pdf owner_pw mypassword user_pw userpass\n```\n\n### Decrypt a PDF\n\nRemove encryption using the known password:\n\n```bash\npdftk secured.pdf input_pw mypassword output unsecured.pdf\n```\n\n### Fill a PDF Form\n\nPopulate form fields from an FDF file and flatten to prevent further edits:\n\n```bash\npdftk form.pdf fill_form data.fdf output filled.pdf flatten\n```\n\n### Apply a Background Watermark\n\nPlace a single-page PDF behind every page of the input (input should have transparency):\n\n```bash\npdftk input.pdf background watermark.pdf output watermarked.pdf\n```\n\n### Stamp an Overlay\n\nPlace a single-page PDF on top of every page of the input:\n\n```bash\npdftk input.pdf stamp overlay.pdf output stamped.pdf\n```\n\n### Extract Metadata\n\nExport bookmarks, page metrics, and document information:\n\n```bash\npdftk input.pdf dump_data output metadata.txt\n```\n\n### Repair a Corrupted PDF\n\nPass a broken PDF through pdftk to attempt automatic repair:\n\n```bash\npdftk broken.pdf output fixed.pdf\n```\n\n### Collate Scanned Pages\n\nInterleave separately scanned even and odd pages:\n\n```bash\npdftk A=even.pdf B=odd.pdf shuffle A B output collated.pdf\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| `pdftk` command not found | Verify installation; check that pdftk is in your system PATH |\n| Cannot decrypt PDF | Ensure you are providing the correct owner or user password via `input_pw` |\n| Output file is empty or corrupt | Check input file integrity; try running `pdftk input.pdf output repaired.pdf` first |\n| Form fields not visible after fill | Use the `flatten` flag to merge fields into the page content |\n| Watermark not appearing | Ensure the input PDF has transparent regions; use `stamp` for opaque overlays |\n| Permission denied errors | Check file permissions on input and output paths |\n\n## References\n\nBundled reference documents in the `references/` folder:\n\n- [pdftk-man-page.md](references/pdftk-man-page.md) - Complete manual reference with all operations, options, and syntax\n- [pdftk-cli-examples.md](references/pdftk-cli-examples.md) - Practical command-line examples for common tasks\n- [download.md](references/download.md) - Installation and download instructions for all platforms\n- [pdftk-server-license.md](references/pdftk-server-license.md) - PDFtk Server licensing information\n- [third-party-materials.md](references/third-party-materials.md) - Third-party library licenses","tags":["pdftk","server","awesome","copilot","github"],"capabilities":["skill","source-github","category-awesome-copilot"],"categories":["awesome-copilot"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/github/awesome-copilot/pdftk-server","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"install_from":"skills.sh"}},"qualityScore":"0.300","qualityRationale":"deterministic score 0.30 from registry signals: · indexed on skills.sh · published under github/awesome-copilot","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T14:40:17.375Z","embedding":null,"createdAt":"2026-04-18T20:25:47.486Z","updatedAt":"2026-04-22T14:40:17.375Z","lastSeenAt":"2026-04-22T14:40:17.375Z","tsv":"'-12':242 '-15':220,228 '-5':217,226 '1':216,225,241,259 '10':219,227 '128':275 '13':236 '14':243 '90':252 'access':157 'appear':509 'appli':80,333 'apt':146 'apt-get':145 'attach':98 'attempt':411 'automat':412 'awesom':3 'b':194,198,433,437 'background':81,335,356 'bash':178,190,207,221,237,255,279,299,324,353,377,393,414,429 'behind':343 'bit':276 'bookmark':89,387 'brew':137 'broken':406 'broken.pdf':416 'bundl':534 'burst':59,210 'cannot':457 'cat':182,196,224,240,258 'category-awesome-copilot' 'check':449,479,525 'clockwis':254 'collat':111,419 'collated.pdf':439 'command':15,162,444,556 'command-lin':14,555 'common':560 'complet':543 'compress':116 'content':506 'control':189 'copilot':4 'correct':465 'corrupt':95,402,478 'data':79,397 'data.fdf':329 'debian/ubuntu':143 'decompress':118 'decrypt':29,70,290,458 'default':278 'degre':253 'deni':523 'dnf':154 'document':22,391,536 'download':566 'download.md':562 'dump':396 'edit':323 'embed':102 'empti':476 'encrypt':28,68,263,277,294 'end':244 'endeast':260 'ensur':460,510 'error':524 'even':425 'even.pdf':432 'even/odd':114 'everi':344,372 'exampl':558 'export':386 'extract':34,86,100,211,214,384 'extracted.pdf':230 'fdf':316 'fdf/xfdf':78 'field':76,92,313,491,502 'file':54,72,97,101,317,474,481,526 'file1.pdf':180,193 'file2.pdf':181,195 'fill':32,73,307,327,495 'filled.pdf':331 'first':489 'fixed.pdf':418 'flag':499 'flatten':319,332,498 'folder':540 'foreground':84 'form':33,75,91,310,312,328,490 'form.pdf':326 'found':446 'get':147 'github':7 'handl':186 'hat/fedora':152 'id':134 'individu':63,205 'inform':93,392,576 'input':302,348,349,376,471,480,512,529 'input.pdf':209,223,239,257,281,355,379,395,486 'instal':127,133,138,148,155,165,448,564 'instruct':567 'integr':482 'interleav':422 'issu':441 'java':141 'join':51 'known':297 'librari':582 'licens':575,583 'line':16,557 'linux':142,150 'maco':136 'manipul':37 'manual':544 'merg':25,49,175,501 'merged.pdf':184,200 'metadata':35,88,385 'metadata.txt':399 'metric':389 'multipl':52,176 'must':125 'mypassword':286,304 'odd':427 'odd.pdf':434 'one':56 'opaqu':520 'oper':548 'option':549 'output':183,199,229,245,261,282,305,330,358,382,398,417,438,473,487,531 'output.pdf':246 'overlay':362,521 'overlay.pdf':381 'owner':268,284,466 'page':64,67,107,115,120,206,213,215,233,235,248,251,341,345,367,373,388,421,428,505 'parti':581 'pass':404 'password':269,273,298,469 'path':456,532 'pdf':21,53,61,66,71,74,87,96,110,119,203,265,292,309,342,368,403,407,459,513 'pdflabs.pdftk.server':135 'pdfs':38,104,177 'pdftk':1,8,10,123,140,149,156,168,179,191,208,222,238,256,280,300,325,354,378,394,409,415,430,443,451,485,573 'pdftk-cli-examples.md':552 'pdftk-java':139 'pdftk-man-page.md':541 'pdftk-server-license.md':571 'permiss':522,527 'place':337,363 'platform':570 'popul':311 'practic':554 'prerequisit':122 'prevent':321 'prompt':163 'provid':463 'pw':285,288,303,472 'red':151 'refer':533,535,539,545 'references/download.md':563 'references/pdftk-cli-examples.md':553 'references/pdftk-man-page.md':542 'references/pdftk-server-license.md':572 'references/third-party-materials.md':578 'region':516 'remov':105,231,234,293 'repair':94,400,413 'repaired.pdf':488 'rotat':27,65,247,249 'rotated.pdf':262 'run':167,484 'scan':113,420,424 'secured.pdf':283,301 'separ':112,423 'server':2,9,11,124,574 'set':266 'shuffl':435 'singl':340,366 'single-pag':339,365 'skill':5,48 'solut':442 'source-github' 'specif':106,212,232 'split':26,57,201 'stamp':31,85,360,380,518 'stamped.pdf':383 'step':171,173 'step-by-step':170 'stream':121 'sudo':144,153 'syntax':551 'system':130,455 'task':561 'termin':160 'third':580 'third-parti':579 'third-party-materials.md':577 'tool':17 'top':370 'transpar':352,515 'tri':483 'troubleshoot':440 'unsecured.pdf':306 'use':46,185,295,496,517 'user':272,287,468 'userpass':289 'varieti':41 'verifi':164,447 'version':169 'via':470 'visibl':493 'watermark':30,82,336,507 'watermark.pdf':357 'watermarked.pdf':359 'way':43 'window':131 'winget':132 'work':19 'workflow':174","prices":[{"id":"994bb8e6-1ef0-4f4c-85bc-1c7fe549af5d","listingId":"7fb8e39f-4a2a-4ae9-a779-04b3f795e9f6","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"github","category":"awesome-copilot","install_from":"skills.sh"},"createdAt":"2026-04-18T20:25:47.486Z"}],"sources":[{"listingId":"7fb8e39f-4a2a-4ae9-a779-04b3f795e9f6","source":"github","sourceId":"github/awesome-copilot/pdftk-server","sourceUrl":"https://github.com/github/awesome-copilot/tree/main/skills/pdftk-server","isPrimary":false,"firstSeenAt":"2026-04-18T21:50:25.183Z","lastSeenAt":"2026-04-22T12:52:18.966Z"},{"listingId":"7fb8e39f-4a2a-4ae9-a779-04b3f795e9f6","source":"skills_sh","sourceId":"github/awesome-copilot/pdftk-server","sourceUrl":"https://skills.sh/github/awesome-copilot/pdftk-server","isPrimary":true,"firstSeenAt":"2026-04-18T20:25:47.486Z","lastSeenAt":"2026-04-22T14:40:17.375Z"}],"details":{"listingId":"7fb8e39f-4a2a-4ae9-a779-04b3f795e9f6","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"github","slug":"pdftk-server","source":"skills_sh","category":"awesome-copilot","skills_sh_url":"https://skills.sh/github/awesome-copilot/pdftk-server"},"updatedAt":"2026-04-22T14:40:17.375Z"}}