| fix(create): a mask wide where its image is tall is scaled without a huge buffer | open | 0.00 | 0 | +42 −1 | lowtide-lab (PR #5062) | 2026-10-28 |
| fix(redact): an image too large to count its pixels is removed, not a panic | open | 0.00 | 0 | +14 −1 | lowtide-lab (PR #5061) | 2026-10-28 |
| feat(edit): allow custom and unicode fonts for added text (#4978) | open | 0.00 | 0 | +391 −50 | YusufMntm (PR #5060) | 2026-10-28 |
| M3: the current page's text is in the accessibility tree (#1826) | open | 0.00 | 0 | +27 −1 | Harrison-Booth (PR #5059) | 2026-10-28 |
| M10: Recognize text no longer clips the first and last letters of a line | open | 0.00 | 0 | +125 −4 | huppiflupp (PR #5058) | 2026-10-28 |
| ci: put the translation gaps report in the job summary | open | 0.00 | 0 | +10 −3 | Harrison-Booth (PR #5057) | 2026-10-28 |
| fix(ui): prevent mouse wheel scrolling from triggering kinetic fling jumps (#4917) | open | 0.00 | 0 | +213 −8 | YusufMntm (PR #5056) | 2026-10-28 |
| test(ui): skip the Chinese signature-label test without a CJK face | open | 0.00 | 0 | +13 −0 | Harrison-Booth (PR #5055) | 2026-10-28 |
| M14: an administrator's policy keeps document JavaScript off (#1846) | open | 0.00 | 0 | +1066 −110 | jcl-bit (PR #5054) | 2026-10-28 |
| M6: Form Field display choice: visible but doesn't print, hidden but printable | open | 0.00 | 0 | +405 −37 | AdrianTM (PR #5053) | 2026-10-28 |
| Compare: say so when a document has no text (scans) | open | 0.00 | 0 | +109 −70 | Harrison-Booth (PR #5052) | 2026-10-28 |
| M3: a file named with open parameters opens at their destination (#3425) | open | 0.00 | 0 | +309 −13 | hazeliscoding (PR #5049) | 2026-10-28 |
| fix(platform): preserve visibility when saving files to network paths (#5001) | open | 0.00 | 0 | +120 −4 | YusufMntm (PR #5048) | 2026-10-28 |
| M10: the booklet binding is remembered across restarts (#5046) | open | 0.00 | 0 | +83 −3 | AdrianTM (PR #5047) | 2026-10-28 |
| fix(ui): prevent print dialog from hanging indefinitely on printer search (#5020) | open | 0.00 | 0 | +62 −3 | YusufMntm (PR #5045) | 2026-10-28 |
| M3: apply PDF launch page and named destinations | open | 0.00 | 0 | +1494 −162 | KyleKassen (PR #5044) | 2026-10-28 |
| M10: preserve BMP V5 embedded RGB profiles (#1201 partial) | open | 0.00 | 0 | +594 −48 | KyleKassen (PR #5043) | 2026-10-28 |
| M10: Word, HTML and RTF export mark right-to-left text (#4653, direction half) | open | 0.00 | 0 | +408 −20 | AdrianTM (PR #5042) | 2026-10-28 |
| fix(render): many subpaths around the page no longer overflow the tiler's culled winding (#5035) | open | 0.00 | 0 | +86 −4 | AdrianTM (PR #5037) | 2026-10-28 |
| M10: preserve NoRotate appearance geometry in vector printing | open | 0.00 | 0 | +511 −42 | KyleKassen (PR #5036) | 2026-10-28 |
| M4: preserve extracted artwork with indirect paint kinds | open | 0.00 | 0 | +993 −112 | KyleKassen (PR #5033) | 2026-10-28 |
| M10: preserve TIFF ICC profiles on image import | open | 0.00 | 0 | +458 −50 | KyleKassen (PR #5032) | 2026-10-28 |
| M10: preserve printable Link appearances (#5022) | open | 0.00 | 0 | +46 −4 | robertobulltech (PR #5028) | 2026-10-28 |
| M10: preserve printable Link annotation appearances | open | 0.00 | 0 | +210 −40 | KyleKassen (PR #5027) | 2026-10-28 |
| M14: experimental Windows 7 x64 portable build | open | 0.00 | 0 | +1020 −20 | fragtion (PR #5024) | 2026-10-28 |
| M10: Windows prints each page at the driver's resolution, not ~96 dpi | open | 0.00 | 0 | +64 −852 | huppiflupp (PR #5023) | 2026-10-28 |
| M4: prune unused images in inline Form resources | open | 0.00 | 0 | +938 −124 | KyleKassen (PR #5021) | 2026-10-28 |
| M10: preserve annotation layers in vector print output | open | 0.00 | 0 | +733 −42 | KyleKassen (PR #5019) | 2026-10-28 |
| M7: preserve ActualText when moving existing paragraphs | open | 0.00 | 0 | +312 −41 | KyleKassen (PR #5018) | 2026-10-28 |
| M3: select text across pages (view.text-select) | open | 0.00 | 0 | +829 −143 | TheSuperStew (PR #5017) | 2026-10-28 |
| M10: preserve unitless image pixel aspect ratios | open | 0.00 | 0 | +350 −59 | KyleKassen (PR #5015) | 2026-10-28 |
| M4: preserve shared paint resources during extraction | open | 0.00 | 0 | +689 −111 | KyleKassen (PR #5014) | 2026-10-28 |
| fix(ui): allow Delete key to remove selected items in Edit PDF (#4915) | open | 0.00 | 0 | +52 −4 | YusufMntm (PR #5012) | 2026-10-28 |
| fix(ui): support drag and drop file URIs on Combine files page (#4985) | open | 0.00 | 0 | +297 −28 | YusufMntm (PR #5007) | 2026-10-28 |
| M10: preserve per-page TIFF orientation on image import | open | 0.00 | 0 | +465 −43 | KyleKassen (PR #5004) | 2026-10-28 |
| M7: keep typed letters visible in Type 1 subsets (#4966) | open | 0.00 | 0 | +489 −6 | hcchung1 (PR #5003) | 2026-10-28 |
| M10: preserve annotation placement precision in vector prints | open | 0.00 | 0 | +244 −41 | KyleKassen (PR #5002) | 2026-10-28 |
| M11: preserve image resolution in annotation appearances | open | 0.00 | 0 | +616 −46 | KyleKassen (PR #5000) | 2026-10-28 |
| M9: import certificates to trust from the Signatures panel | open | 0.00 | 0 | +354 −5 | ffishman (PR #4999) | 2026-10-28 |
| fix(ui): do not prompt to save unmodified imported images on tab close (#4942) | open | 0.00 | 0 | +52 −9 | YusufMntm (PR #4998) | 2026-10-28 |
| fix(ui): make print dialog content scrollable on small screens (#4973) | open | 0.00 | 0 | +64 −1 | YusufMntm (PR #4994) | 2026-10-28 |
| fix(ui): arrow keys select in the Organize Pages grid, and a click between pages clears the selection (#3436) | open | 0.00 | 0 | +195 −7 | tylamb1 (PR #4993) | 2026-10-28 |
| M10: preserve device JPEG Decode during image export | open | 0.00 | 0 | +720 −59 | KyleKassen (PR #4992) | 2026-10-28 |
| fix(forms): clearing a field's default leaves it with none, not its parent field's | open | 0.00 | 0 | +143 −5 | KenM76 (PR #4991) | 2026-10-28 |
| fix(forms): editing or sorting a list's items keeps its selected indices on the same items | open | 0.00 | 0 | +224 −20 | KenM76 (PR #4987) | 2026-10-28 |
| M7: Remove watermark also removes watermarks other editors marked as artifacts (#4957) | open | 0.00 | 0 | +771 −5 | AdrianTM (PR #4984) | 2026-10-28 |
| fix(cos): read startxref when data follows the final %%EOF | open | 0.00 | 0 | +103 −4 | tsw2k (PR #4983) | 2026-10-28 |
| M4: interleave the pages of two or more files, like pdftk shuffle (#4922) | open | 0.00 | 0 | +525 −2 | AdrianTM (PR #4980) | 2026-10-28 |
| fix(forms): renaming a radio button to an existing group's name joins that group | open | 0.00 | 0 | +590 −45 | KenM76 (PR #4977) | 2026-10-28 |
| feat(print): add eco print mode preset with grayscale and duplex (#4843) | open | 0.00 | 0 | +95 −14 | YusufMntm (PR #4972) | 2026-10-28 |
| fix(render): match words hyphenated across line breaks in search (#4950) | open | 0.00 | 0 | +149 −13 | YusufMntm (PR #4971) | 2026-10-28 |
| feat(ui): add option to replace existing images in a PDF (#4900) | open | 0.00 | 0 | +90 −2 | YusufMntm (PR #4970) | 2026-10-28 |
| M10: restore packaging with supported ONNX OCR models | open | 0.00 | 0 | +123 −37 | KyleKassen (PR #4969) | 2026-10-28 |
| Linux: sign with PKCS #11 token identities (p11-kit) | open | 0.00 | 0 | +532 −14 | Bra1nZ (PR #4968) | 2026-10-28 |
| feat(edit): add font selection for watermarks (#4956) | open | 0.00 | 0 | +91 −9 | YusufMntm (PR #4965) | 2026-10-28 |
| M10: preserve explicit hard breaks in HTML export | open | 0.00 | 0 | +254 −49 | KyleKassen (PR #4961) | 2026-10-28 |
| i18n(ru): 363 rows the Russian catalog was missing | open | 0.00 | 0 | +366 −0 | JaffarSk24 (PR #4959) | 2026-10-28 |
| fix(comments): keep off-page text-box resize handles selectable (#4825) | open | 0.00 | 0 | +77 −7 | YusufMntm (PR #4955) | 2026-10-28 |
| feat(print): add Folio and Folio / F4 paper presets (#4777) | open | 0.00 | 0 | +21 −1 | YusufMntm (PR #4953) | 2026-10-28 |
| fix(optimize): size objects in compressed object streams by their compressed share | open | 0.00 | 0 | +292 −11 | jonathanwxh-cell (PR #4951) | 2026-10-28 |
| M12: an XFA form's scripts can call the script objects of their subform | open | 0.00 | 0 | +420 −6 | hikashop-nicolas (PR #4948) | 2026-10-28 |
| fix(ui-egui): add reverse pages to organize panel and thumbnail context menus (#4918) | open | 0.00 | 0 | +66 −5 | YusufMntm (PR #4945) | 2026-10-28 |
| M12: a dynamic XFA form whose data has a bare ampersand is still laid out | open | 0.00 | 0 | +111 −1 | hikashop-nicolas (PR #4944) | 2026-10-28 |
| fix(xfa, create): read a BMP's pixels from after its headers when its offset points into them | open | 0.00 | 0 | +139 −3 | KenM76 (PR #4943) | 2026-10-28 |
| docs: add extensible usage guides with an initial German translation | open | 0.00 | 0 | +498 −3 | LabDennis (PR #4940) | 2026-10-28 |
| Tests: a retained PDF version is the later of header and catalog (#3227 follow-up) | open | 0.00 | 0 | +23 −0 | Harrison-Booth (PR #4933) | 2026-10-28 |
| Reject '+' sign in print page ranges | open | 0.00 | 0 | +11 −0 | Silvertree2010 (PR #4931) | 2026-10-28 |
| M1.9: deterministic save checks, SOURCE_DATE_EPOCH, UTF-8 text strings for 2.0 files (gap 22) | open | 0.00 | 0 | +160 −18 | Harrison-Booth (PR #4929) | 2026-10-28 |
| feat(ui-egui): offer a persistent current-page / total-page indicator (#4810) | open | 0.00 | 0 | +131 −3 | YusufMntm (PR #4928) | 2026-10-28 |
| feat(ui-egui): flash destination indicator after following an internal link (#4787) | open | 0.00 | 0 | +169 −3 | YusufMntm (PR #4924) | 2026-10-28 |
| M7: Thai document font from craft-fonts' Thai manifest (Sarabun) | open | 0.00 | 0 | +187 −16 | bomu-bomu (PR #4921) | 2026-10-28 |
| M7: per-cluster ActualText and per-glyph ToUnicode for edited shaped lines (#4919) | open | 0.00 | 0 | +466 −11 | bomu-bomu (PR #4920) | 2026-10-28 |
| M5: E and B swap the Draw tool and the Eraser; holding E is temporary (#3900) | open | 0.00 | 0 | +232 −2 | AdrianTM (PR #4916) | 2026-10-28 |
| M7: arrange added text and images in the drawing order (#3798) | open | 0.00 | 0 | +466 −7 | AdrianTM (PR #4914) | 2026-10-28 |
| fix(render): a stroke whose outline comes back with NaN is drawn, not dropped | open | 0.00 | 0 | +180 −5 | KenM76 (PR #4913) | 2026-10-28 |
| M7: Add text can have a background fill of its own (#4789) | open | 0.00 | 0 | +264 −9 | AdrianTM (PR #4912) | 2026-10-28 |
| M3: Preferences can keep the page size showing (#4908) | open | 0.00 | 0 | +126 −19 | AdrianTM (PR #4910) | 2026-10-28 |
| M7: Add text remembers its format across restarts (#4864) | open | 0.00 | 0 | +110 −7 | AdrianTM (PR #4909) | 2026-10-28 |
| fix(edit, a11y): `Q` inside a text object restores the text matrices, as the renderer does | open | 0.00 | 0 | +48 −8 | KenM76 (PR #4906) | 2026-10-28 |
| Quote empty values in CSV export so one-field forms re-import | open | 0.00 | 0 | +15 −1 | Silvertree2010 (PR #4905) | 2026-10-28 |
| M7: the quick bar's pin keeps Add text selected after Done (#4863) | open | 0.00 | 0 | +60 −9 | AdrianTM (PR #4904) | 2026-10-28 |
| CLI: reject missing option operands before file I/O | open | 0.00 | 0 | +104 −15 | DAnaeto (PR #4903) | 2026-10-28 |
| feat(print): add F4 (210 x 330 mm) paper size | open | 0.00 | 0 | +5 −1 | febriyaneri4-dev (PR #4902) | 2026-10-28 |
| Keep the outline intact when move_bookmark gets an invalid target | open | 0.00 | 0 | +11 −1 | Silvertree2010 (PR #4901) | 2026-10-28 |
| edit: a variation selector after existing text draws the base glyph instead of failing the edit | open | 0.00 | 0 | +27 −3 | midasmatterhorn (PR #4899) | 2026-10-28 |
| fix(render): a non-isolated knockout group blends its elements with the page under it | open | 0.00 | 0 | +495 −39 | KenM76 (PR #4898) | 2026-10-28 |
| docs(parity): notes for the first 25 shipped features | open | 0.00 | 0 | +35 −25 | Harrison-Booth (PR #4895) | 2026-10-28 |
| feat(ui): an optional page number indicator over the document (#4810) | open | 0.00 | 0 | +52 −0 | Harrison-Booth (PR #4894) | 2026-10-28 |
| feat(ui): flash the destination after following an internal link (#4787) | open | 0.00 | 0 | +77 −1 | Harrison-Booth (PR #4893) | 2026-10-28 |
| fix(xfa): draw Romanian and Polish letters in XFA-to-static output instead of '?' | open | 0.00 | 0 | +230 −10 | GigiG1 (PR #4890) | 2026-10-28 |
| feat(ui): pin individual files to Home (#4772) | open | 0.00 | 0 | +143 −15 | YusufMntm (PR #4885) | 2026-10-28 |
| i18n(pl): the keys the other catalogs had, and the rows left in English | open | 0.00 | 0 | +171 −15 | ed1pl1 (PR #4884) | 2026-10-28 |
| M7: added text can be underlined (#4236) | open | 0.00 | 0 | +256 −18 | x-labb (PR #4883) | 2026-10-28 |
| M7: the Preferences language test opens the app menu on macOS | open | 0.00 | 0 | +27 −4 | EricKaden (PR #4882) | 2026-10-28 |
| perf(cos): write hex strings, integers and references without the formatter | open | 0.00 | 0 | +155 −9 | vangel76 (PR #4878) | 2026-10-28 |
| perf(cos): write_full keeps the objects it parsed while numbering | open | 0.00 | 0 | +194 −20 | vangel76 (PR #4876) | 2026-10-28 |
| perf(cos): rebuild a damaged cross-reference index without parsing every object | open | 0.00 | 0 | +291 −4 | vangel76 (PR #4874) | 2026-10-28 |
| perf(cos): keep a running total of the scan reader's cache size | open | 0.00 | 0 | +70 −4 | vangel76 (PR #4873) | 2026-10-28 |
| feat(ui): Help > Report an Issue… opens a prefilled issue | open | 0.00 | 0 | +51 −2 | Harrison-Booth (PR #4872) | 2026-10-28 |
| chore(github): add a bug report issue form | open | 0.00 | 0 | +74 −0 | Harrison-Booth (PR #4871) | 2026-10-28 |