github storytold/pdfcraft v0.5.0
PdfCraft v0.5.0

5 hours ago

What's Changed

  • Issue #166: Save, Print and Export include the text still being typed in a form field by @AutoHenry in #278
  • V, H and Space pick the Select and Hand tools by @wstock in #281
  • M14: Arabic and Hebrew file names render in the tab strip, recent files and Properties by @samehelhawary in #285
  • M3: find text in mixed horizontal and vertical PDFs by @midasdf in #287
  • Add a complete French UI catalog by @iMhack87 in #291
  • Run set-layer-visibility actions from links and push buttons by @pauliusiv123-rgb in #292
  • M10: select pages in the Pages panel and print the selection by @samehelhawary in #296
  • Issue #159: open .p12 files with trailing whitespace, PEM armour or base64 by @Mawfyy in #298
  • Issue #173: a failed ?file= startup fetch is reported in the app by @DWAA1660 in #302
  • Sign with digital IDs from the Windows certificate store (#179) by @EpsilonLLC in #304
  • Validate discard_changes before closing clean documents by @sanyamsingh001 in #306
  • XFA: run FormCalc scripts by @ysrdevs in #301
  • M7: preserve ideographic spaces when rewriting paragraphs by @midasdf in #309
  • M14: complete Simplified Chinese About credits and multiline guidance by @Flowershangfromthebranches in #311
  • Windows MSI: reject per-user overrides and retain progress text (#305) by @CQMHV in #310
  • Security: create save staging files with create_new (follow-up to #164) by @jcl-bit in #319
  • M4: Combine files in its own tab, with a sortable table and unlocking of protected files by @mlkonrad in #321
  • Issue #236: the Save-changes prompt shortens very long names to fit the window by @Fazmin in #322
  • Reject invalid page selector types before combining PDFs by @sanyamsingh001 in #329
  • Issue #263: combine, extract and split keep the PDF/X output intent and identification by @Fazmin in #334
  • Security: print jobs, new digital IDs and the --control file no longer write through planted links by @jcl-bit in #338
  • Security: refuse mailto attachments, show link hosts in punycode (follow-up to #104) by @jcl-bit in #337
  • Issue #124: a long page label no longer overlaps its bookmark title by @Mawfyy in #328
  • Add image signatures with placement preview and resize controls by @remesis in #335
  • Issue #290: File ▸ Open Recent lists the recent files by @Mawfyy in #323
  • M13: pdfcraft-cli mcp --compact lists 12 tools and finds the rest by search by @Oldrich333 in #353
  • M14: Telugu (తెలుగు) interface language by @chiranjeevi-max in #349
  • Platform: one save-staging helper for automation and the desktop app (follow-up to #319) by @jcl-bit in #356
  • Clippy: as_chunks in the signature image test (follow-up to #335) by @chiranjeevi-max in #360
  • Update image signatures live during resize and movement by @remesis in #355
  • Issue #157: the Windows portable zip keeps settings, logs and recovery beside pdfcraft.exe by @MarekSpodBiedry in #325
  • M10.2: Create PDF from multiple files, edited as pages in the Organize grid by @samehelhawary in #361
  • Add my contributor name (cyfung1031) by @cyfung1031 in #364
  • render: apply W/W* clipping after every path-painting operator by @cyfung1031 in #362
  • View: page rasters map texel for texel onto the screen (sharp text at any zoom) by @cyfung1031 in #363
  • M11: Optimize PDF and Reduce File Size run in the background with a progress bar by @mlkonrad in #370
  • Forms: round required-field border on radio buttons; Highlight fields is remembered by @cyfung1031 in #372
  • Ink strokes are drawn as smooth curves through their points by @cyfung1031 in #374
  • Fix toast wrapping and the Linux search shortcut hint by @sanyamsingh001 in #376
  • i18n: add Russian (ru) interface translation by @MaksPV in #375
  • render: draw non-embedded Japanese CID fonts with a craft-fonts face by @cyfung1031 in #368
  • Comments without an appearance stream are drawn (display only, never saved) by @cyfung1031 in #371
  • Home: pin folders and list their newest PDFs by @amitabhthakur in #383
  • Issue #295: three clicks select the line, four clicks the page by @pauliusiv123-rgb in #366
  • Linux: accept file:// URI args so desktop launchers recognise pdfcraft as PDF default by @bunakalya in #382
  • M7: report Japanese Type 3 fallback font names by @midasdf in #387
  • FDF: replies and review status keep their parent comment (fixes #333) by @SBaksa in #388
  • Preserve CLI results when diagnostics fail and validate page arguments by @sanyamsingh001 in #391
  • Keyboard shortcut to enter page number to jump to by @aus10d in #393
  • M7: preserve Japanese Gothic fallback family and weight by @midasdf in #394
  • M3: render pool renders each request once when the caller re-sends it by @cyfung1031 in #400
  • CI: no macOS on PRs or main; macOS is built and tested by releases by @echelon in #512
  • M1: enforce decoded limits on unfiltered COS streams by @Streetblock in #477
  • M2: handle Unicode dates and preserve inspection fallback pages by @Streetblock in #469
  • M7: pick a Japanese fallback face that has every glyph of the edited text (#384) by @MarekSpodBiedry in #472
  • Never crash: CMap parsing can't panic, overflow or run away; tokens need no spaces by @AutoHenry in #495
  • tests: pin the interface language so the suite passes outside English by @feraremag2680 in #502
  • Issue #225: a closed Comments panel stays closed when picking comment tools by @AutoHenry in #501
  • Export to Word: detect tables of at most 63 columns, Word's limit (#479) by @Erige005 in #483
  • Comments: a new highlight opens its note for typing (#475) by @MarekSpodBiedry in #481
  • M2.6: non-embedded Mincho fonts draw half-width katakana by @chent11 in #484
  • Phone photos follow EXIF orientation; image signatures stay upright on rotated pages (#434) by @MarekSpodBiedry in #485
  • Issue #425: long file names and paths on Home end in "…" before the row's details by @pauliusiv123-rgb in #443
  • Keep document view state consistent when closing tabs and reverting by @sanyamsingh001 in #439
  • Edit text: fast drags on a paragraph's edge no longer get dropped; add a left-edge handle by @kremit in #436
  • M4.6: search bookmark titles (#257) by @midasdf in #424
  • M3: keep overflowed document tabs reachable (#397) by @midasdf in #416
  • sign: read the .p12 files Windows writes (BER, not DER) by @feraremag2680 in #453
  • Never crash: dash patterns can't exhaust memory or hang the renderer by @jcl-bit in #405
  • M3: renders of a dropped render pool stop at the next operator by @cyfung1031 in #409
  • M3: rendered pixels are moved out of the pixmap, not copied by @cyfung1031 in #404
  • M1: incremental saves are allocated once at their exact size by @cyfung1031 in #402
  • Issue #442: reopen the files that were open when PdfCraft last closed by @pauliusiv123-rgb in #462
  • M14: Bulgarian (Български) interface language by @bulgariamitko in #466
  • M2: bound lopdf predictor scratch to available samples by @Streetblock in #470
  • M5.7: keep natural-size image stamps upright on rotated pages (#434, partial) by @midasdf in #473
  • macOS DMG: branded window background and icon layout by @XusBadia in #272
  • Tests: serialize wgpu rendering in fill_sign.rs (Windows ARM64 crash) by @echelon in #395
  • Never crash: JBIG2 symbol dictionaries can't loop without end by @jcl-bit in #408
  • M7: Arabic in added text (shaping, bidi order, searchable Type 3 glyphs) by @fares111111122 in #403
  • M14: German interface catalog (de) by @schiffer-soft in #471
  • Redact pattern: international phone numbers match whole (refs #525) by @echelon in #543
  • Encode the full WinAnsi 0x80–0x9F range: Š š Ž ž Œ œ Ÿ … (refs #347) by @echelon in #546
  • Keep text colour in Word, HTML and RTF export (fixes #526) by @echelon in #547
  • Pen strokes stay unselected and show no author popup (fixes #429) by @echelon in #549
  • ↓ / ↑ turn pages in single-page view (fixes #273) by @echelon in #550
  • Dependencies keep only line tables in dev builds (fixes #454) by @echelon in #559
  • Shift+click extends the text selection (refs #527) by @echelon in #560
  • Issue #430: clear the recent-files list, or remove one file from it by @pauliusiv123-rgb in #557
  • Typed and drawn signatures stay upright on rotated pages (fixes #299) by @echelon in #562
  • Linux: prefer the discrete GPU on desktops with a monitor on each GPU (fixes #445) by @echelon in #558
  • M1: full saves are allocated at their exact size by @cyfung1031 in #523
  • M3: the watchdog stops the render it gives up on by @cyfung1031 in #522
  • A newly opened document starts at the top, not where the last session scrolled by @LloydNicholson in #554
  • Bookmarks and links go to their destination's position and zoom by @LloydNicholson in #556
  • M7: Type 3 fallback glyphs get a well-formed d1, so Acrobat draws edited text instead of bullets by @bulgariamitko in #548
  • Never crash: fall back to OpenGL when wgpu can't start (#461, #435, #392) by @AutoHenry in #530
  • Issue #537: pdfcraft-cli --help prints the full usage by @LloydNicholson in #540
  • Forms: radio groups and check boxes accept their /Opt export values by @martinjohuber in #532
  • Issue #324: on Windows 11, a window dragged to another monitor takes its scale by @cyfung1031 in #544
  • de: translate labels that reach tl!() through variables; fix name collisions and wrong meanings by @martinjohuber in #541
  • M14: Hungarian interface catalog (hu) by @bartalos86 in #545
  • M1: stream data read from a file points into the file instead of being copied by @cyfung1031 in #552
  • M3: rasters reach egui without a copy on the UI thread by @cyfung1031 in #555
  • M14: refine German labels and prevent translated UI text overlap by @Streetblock in #515
  • i18n: add complete Ukrainian interface translation by @dmatviichuk in #509
  • M6.2: check boxes with non-UTF-8 state names show their mark when clicked by @chent11 in #536
  • M6.2: form fields in Unicode CID fonts show Japanese instead of "?" by @chent11 in #535
  • M7: edit text: Cyrillic/Greek replacement text no longer fails in serif lines, and is spaced proportionally by @bulgariamitko in #528
  • Forms: rotate field widgets with /MK /R by @bartalos86 in #516
  • M5: draw all ten PDF line-ending styles by @bartalos86 in #520
  • Issue #125: page text the standard fonts can't draw is refused, not written as ? by @AutoHenry in #510
  • M2: normalize JPEG2000 samples without overflowing by @Streetblock in #575
  • Never crash: decompression bombs can't exhaust the renderer's memory by @jcl-bit in #411
  • Never crash: mesh shadings can't exhaust memory or run for minutes by @jcl-bit in #412
  • Fix: High-precision float mantissa overflow in hayro-syntax, causing warped display of some PDFs (#199) by @philkwek in #427
  • M2: bound page-label traversal and output by @Streetblock in #480
  • View: keep earlier tiles on screen while a zoom's new tiles render by @cyfung1031 in #415
  • Fix main CI: move the rotated-field render test out of pdfcraft-forms (layering) by @echelon in #591
  • View: the middle button pans instead of drawing with markup tools by @codyvogt in #565
  • Pages panel: keep a short page current; context menu and drag to reorder by @max1e6 in #573
  • M4: zoom the Organize page grid by @samehelhawary in #468
  • Flatten Fill & Sign marks when saving by @bartalos86 in #464
  • Fill & Sign: date format and date language in Preferences (refs #158) by @kisst in #505
  • M10: Print ▸ Properties… opens the printer driver's own settings by @bulgariamitko in #482
  • Reduce large-PDF memory growth (#307) by @skylartaylor in #419
  • pdfcraft-cli --help lists mcp only when the build has it by @LloydNicholson in #574
  • M14: honor Windows display language with neutral launcher locales by @Streetblock in #567
  • D5: READMEs for cos and engine by @tanish2k09 in #332
  • Preserve alternate appearances and indirect push-button values on redraw by @sanyamsingh001 in #417
  • M7: select and edit grouped PDF figures (Form XObjects) by @Flowershangfromthebranches in #450
  • XFA: choice lists, signature, password, image and barcode fields; PNG and GIF pictures by @ysrdevs in #414
  • MCP: common command tools, session resources and client hints by @storybored379 in #451
  • D2, D3: fuzz every tool's arguments, and prove root confinement by @tanish2k09 in #351
  • Fix main CI: remove duplicated forms redraw tests (E0428) by @echelon in #605
  • Parity: cite the MCP resources test by its merged name by @echelon in #608
  • Release: standalone Linux CLI archive (fixes #423) by @echelon in #613
  • Decode outline titles with BOMs and raw UTF-8 consistently (refs #142) by @echelon in #614
  • No form bar for push-button-only documents; Screen annotations aren't comments (refs #169) by @echelon in #615
  • Edit text: lines split across content stream pieces are listed and edited (fixes #155) by @echelon in #628
  • Export to Word/HTML/RTF: read text and images drawn by form XObjects (fixes #314) by @SBaksa in #406
  • tests: pin the interface language in the harnesses added since #502 by @feraremag2680 in #593
  • M14: clarify Ukrainian wording and restore CI by @dmatviichuk in #584
  • M14: correct Hungarian Windows Store and saved-signature labels by @bartalos86 in #595
  • M9: chain building checks CA constraints, key usage, path length and validity by @thorstenhirsch in #620
  • Ship the OCR models in the desktop release packages (refs #103) by @echelon in #630
  • M9: validate a document timestamp that sits in a signature field by @thorstenhirsch in #621
  • M9: read BER signatures (DocuSign, Documenso); classify later changes narrowly by @thorstenhirsch in #144
  • M9: more signature validation algorithms (SHA-3, RIPEMD-160, Ed25519, P-521, brainpool, PSS, rsa_sha1) by @thorstenhirsch in #386
  • M14: complete the French (fr) catalog by @Byxis in #579
  • i18n: complete the Japanese catalog (105 missing strings) and check it like fr/de/ru/zh-hans by @haranishi in #587
  • Tell the user when PdfCraft draws without a GPU (#519) by @jcl-bit in #627
  • M5: name line endings in the comment properties combo by @bartalos86 in #582
  • M3: preserve local work when a startup URL arrives late by @Tevinhead in #583
  • M2: bound PDF functions and reject invalid calculator operations by @Streetblock in #581
  • M2: bound image resampling buffers before allocation by @Streetblock in #592
  • Windows: a window larger than the GPU's texture limit can't close PdfCraft (#577) by @jcl-bit in #609
  • Windows: a GPU that can't set up the window falls back to OpenGL (#519) by @jcl-bit in #617
  • Tab strip: shrink tabs before scrolling, keep Open in sight; ignore about:blank titles by @max1e6 in #612
  • CLI: pdfcraft-cli ui refuses a control file another user could plant by @jcl-bit in #597
  • CLI: pdfcraft-cli.exe carries a Windows version resource by @jcl-bit in #598
  • Fix #378: draw on the GPU that drives the primary display on Windows by @rschuerer in #631
  • Fill & Sign: remove white background from imported signature images by @mrme2tiri-hash in #637
  • Pages panel: delete pages from the thumbnails by @max1e6 in #607
  • Fix non-exhaustive match in Windows signing path by @Dammy196 in #646
  • i18n: add Italian (it) interface translation by @w-valzelli in #494
  • i18n: complete Brazilian Portuguese (pt-BR) interface catalog by @edurbs in #604
  • Never crash & persist: Make Current Properties Default and page-display choices survive a restart (#340, #266) by @Mawfyy in #365
  • View: draw page previews at the resolution they are shown by @bartalos86 in #529
  • D1: pin and verify the pdf.js corpus by @tanish2k09 in #339
  • macOS: add native document integration diagnostics by @cyfung1031 in #653
  • Forms: fields listed only as page widgets join the form by @edurbs in #649
  • M6: bulk form-field properties and selection (#95) by @Tevinhead in #650
  • M2: a ligature stays one glyph in the text layer, in every writing direction by @cyfung1031 in #660
  • M2: a character a substitute font lacks draws .notdef, not an unrelated glyph by @cyfung1031 in #661
  • M2: kanji that Adobe-Japan1 maps to a variation sequence draw in non-embedded fonts by @cyfung1031 in #662

New Contributors

Full Changelog: v0.4.0...v0.5.0

Don't miss a new pdfcraft release

NewReleases is sending notifications on new releases.