6dec57bf80
M7: lay out Format text as Acrobat's panel ( #2249 )
...
* M7: lay out Format text as Acrobat's panel
Format text was a row of separate combos, a Load font button, an
Installed fonts combo, a swatch grid and labelled drag values. It now
follows Acrobat's arrangement: the font across the panel (the page's
fonts, the standard families, Load font… and Installed fonts in one
list, showing the paragraph's own font by name); size and a colour
swatch, then lists and an alignment flyout; bold, italic, underline,
superscript and subscript; line and paragraph spacing; horizontal scale
and character spacing. One panel serves an edited paragraph and added
text. What PdfCraft can't apply yet (lists, superscript and subscript,
paragraph spacing, spacing for added text) is shown disabled and says
it is planned.
Icons stay Lucide's: superscript, subscript, pilcrow and
move-horizontal are added from lucide-static 1.49.0 with attribution.
Eight new strings are translated in every catalogue.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
* M7: parity notes for the Format text panel
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
* i18n(vi): Superscript and Subscript for Format text
The Vietnamese catalogue came from main without the Format text panel's
Superscript and Subscript labels; vietnamese_covers_ui_literals lists them.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
* M7: Format text takes any horizontal scale and character spacing again
Review of #2249 : the panel's preset lists narrowed what could be set to
50-200 % and -1..5 pt, where the old fields took 10-400 % and -5..50 pt.
Each now has a number field over the old range again, with the list of
common values beside it.
Test: the_format_panel_takes_any_scale_and_character_spacing types values
between the listed ones and beyond them, saves and reopens, and compares
the paragraph with the engine's own rewrite. It fails without the field.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
* M7: Format text's rows line their controls up and fit the panel
Raised in #3037 : the size list sat lower than the colour swatch and the
alignment button beside it. egui lays a list out from the default control
height and grows it downward, so a row's shorter controls ended up off its
middle. Each row is now one control height and centres what it holds, at
a list's own height.
The spacing rows' columns are measured from what they hold, so the second
list no longer runs past the panel; the number fields' lists open from a
small arrow, which leaves the field the room its value needs.
Test: format_text_rows_line_up_and_fit_the_panel checks the size list is
centred with the swatch and alignment button and as tall as the font list,
that each spacing row shares one line, and that nothing passes the panel.
It fails without the change.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
* Format text: choosing the family a font name reads as still changes the font
CodeRabbit on #2249 : a Calibri paragraph is shown as Helvetica, so picking Helvetica left
look.family equal to look0.family and no family change was sent. The pick is now tracked
(LineEditor::choose_family) and counts as a change in style(), font_shown(), has_changes()
and the editor preview; Keep source fonts and an applied edit clear it.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
* Format text: the reusable text style follows a selection only when its edit was applied
A refused UpdateContent used to leave the new style in app.text_style, so the next
added text inherited formatting the selected text never received.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01Jk4iYSh3mEd145niec77LF
---------
Co-authored-by: abc2cb <271337822+abc2cb@users.noreply.github.com >
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-21 18:26:28 -04:00
..
2026-09-30 05:17:08 -04:00
M7.4: Edit a PDF ▸ Add content: text (click and type; standard fonts, size, bold/italic, colour, alignment, wrapping) and images (PNG/JPEG/TIFF/GIF/BMP, centred at natural size) as page content that stays editable: each item is its own tagged content stream with its parameters, drawn in display space; select, move, resize (images keep proportions), double-click to retype, Format text panel, Delete; Bates numbering ▸ Add opens Header & Footer with a Bates number. content_list/page_add_text/page_add_image/content_update/content_delete tools (66 tools). Lucide align-center/right icons
2026-10-02 00:58:03 -04:00
2026-10-03 03:16:03 -04:00
2026-09-30 05:17:08 -04:00
M7.4: Edit a PDF ▸ Add content: text (click and type; standard fonts, size, bold/italic, colour, alignment, wrapping) and images (PNG/JPEG/TIFF/GIF/BMP, centred at natural size) as page content that stays editable: each item is its own tagged content stream with its parameters, drawn in display space; select, move, resize (images keep proportions), double-click to retype, Format text panel, Delete; Bates numbering ▸ Add opens Header & Footer with a Bates number. content_list/page_add_text/page_add_image/content_update/content_delete tools (66 tools). Lucide align-center/right icons
2026-10-02 00:58:03 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
M4.6: bookmark editing: organize outline API (add/rename/move/delete/set page, surgical relinking, /Count recompute), undoable engine edits, 6 automation tools, Bookmarks panel (⌘B new + inline rename, context menu: rename, set page, move, indent/outdent, delete), Lucide bookmark-plus icon (attributed)
2026-10-01 13:10:49 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
M5.3/M5.4: commenting UI: quick-bar Comment/Highlight/Draw flyout groups with pin, colour and thickness; sticky note and text box composer; highlight/underline/strikethrough from text selection; freehand, line, arrow, rectangle and oval gestures with live previews; Select tool selects (per-line frames for markup), moves, resizes with 8 handles, edits and deletes comments; canvas context menu (edit, reply, set status, colour, delete); Comments panel rewrite (add-a-comment box, search, selectable cards with reply box, ... menu, inline edit, status badges); comment edits re-render only their page and keep stale rasters on screen; control channel ui.drag, secondary click, pages_on_screen and comment state; view options quick/author/comment; 7 Lucide icons; parity entries; README
2026-10-01 21:38:07 -04:00
2026-09-30 05:17:08 -04:00
2026-10-02 03:57:11 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-01 14:15:05 -04:00
2026-09-30 05:17:08 -04:00
M6.6/M6.8: Field Properties Appearance tab (border/fill colour, thickness, solid/dashed/beveled/inset/underline, text colour, Helvetica/Times/Courier); tab order by rows/columns/structure (page /Tabs) honoured by Tab; push buttons run Reset form, Named (print, page navigation), URI, Go to and common one-line scripts (this.print, this.resetForm, app.alert, pageNum) without a JS engine; form_tab_order tool and appearance in form_set_props (67 tools)
2026-10-02 01:15:02 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-01 14:15:05 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-03 04:41:47 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-03 04:52:59 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-02 01:18:31 -04:00
2026-10-02 01:18:31 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-01 14:15:05 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
M5.3/M5.4: commenting UI: quick-bar Comment/Highlight/Draw flyout groups with pin, colour and thickness; sticky note and text box composer; highlight/underline/strikethrough from text selection; freehand, line, arrow, rectangle and oval gestures with live previews; Select tool selects (per-line frames for markup), moves, resizes with 8 handles, edits and deletes comments; canvas context menu (edit, reply, set status, colour, delete); Comments panel rewrite (add-a-comment box, search, selectable cards with reply box, ... menu, inline edit, status badges); comment edits re-render only their page and keep stale rasters on screen; control channel ui.drag, secondary click, pages_on_screen and comment state; view options quick/author/comment; 7 Lucide icons; parity entries; README
2026-10-01 21:38:07 -04:00
2026-10-02 02:11:52 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-01 14:15:05 -04:00
2026-09-30 05:17:08 -04:00
2026-10-10 16:50:18 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-11 13:12:47 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-21 18:26:28 -04:00
M5.3/M5.4: commenting UI: quick-bar Comment/Highlight/Draw flyout groups with pin, colour and thickness; sticky note and text box composer; highlight/underline/strikethrough from text selection; freehand, line, arrow, rectangle and oval gestures with live previews; Select tool selects (per-line frames for markup), moves, resizes with 8 handles, edits and deletes comments; canvas context menu (edit, reply, set status, colour, delete); Comments panel rewrite (add-a-comment box, search, selectable cards with reply box, ... menu, inline edit, status badges); comment edits re-render only their page and keep stale rasters on screen; control channel ui.drag, secondary click, pages_on_screen and comment state; view options quick/author/comment; 7 Lucide icons; parity entries; README
2026-10-01 21:38:07 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-02 02:11:52 -04:00
2026-10-21 18:26:28 -04:00
M5.3/M5.4: commenting UI: quick-bar Comment/Highlight/Draw flyout groups with pin, colour and thickness; sticky note and text box composer; highlight/underline/strikethrough from text selection; freehand, line, arrow, rectangle and oval gestures with live previews; Select tool selects (per-line frames for markup), moves, resizes with 8 handles, edits and deletes comments; canvas context menu (edit, reply, set status, colour, delete); Comments panel rewrite (add-a-comment box, search, selectable cards with reply box, ... menu, inline edit, status badges); comment edits re-render only their page and keep stale rasters on screen; control channel ui.drag, secondary click, pages_on_screen and comment state; view options quick/author/comment; 7 Lucide icons; parity entries; README
2026-10-01 21:38:07 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
M5.3/M5.4: commenting UI: quick-bar Comment/Highlight/Draw flyout groups with pin, colour and thickness; sticky note and text box composer; highlight/underline/strikethrough from text selection; freehand, line, arrow, rectangle and oval gestures with live previews; Select tool selects (per-line frames for markup), moves, resizes with 8 handles, edits and deletes comments; canvas context menu (edit, reply, set status, colour, delete); Comments panel rewrite (add-a-comment box, search, selectable cards with reply box, ... menu, inline edit, status badges); comment edits re-render only their page and keep stale rasters on screen; control channel ui.drag, secondary click, pages_on_screen and comment state; view options quick/author/comment; 7 Lucide icons; parity entries; README
2026-10-01 21:38:07 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
M6.6/M6.8: Field Properties Appearance tab (border/fill colour, thickness, solid/dashed/beveled/inset/underline, text colour, Helvetica/Times/Courier); tab order by rows/columns/structure (page /Tabs) honoured by Tab; push buttons run Reset form, Named (print, page navigation), URI, Go to and common one-line scripts (this.print, this.resetForm, app.alert, pageNum) without a JS engine; form_tab_order tool and appearance in form_set_props (67 tools)
2026-10-02 01:15:02 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-03 04:41:47 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-10-21 18:26:28 -04:00
2026-09-30 05:17:08 -04:00
2026-10-21 18:26:28 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
M5.3/M5.4: commenting UI: quick-bar Comment/Highlight/Draw flyout groups with pin, colour and thickness; sticky note and text box composer; highlight/underline/strikethrough from text selection; freehand, line, arrow, rectangle and oval gestures with live previews; Select tool selects (per-line frames for markup), moves, resizes with 8 handles, edits and deletes comments; canvas context menu (edit, reply, set status, colour, delete); Comments panel rewrite (add-a-comment box, search, selectable cards with reply box, ... menu, inline edit, status badges); comment edits re-render only their page and keep stale rasters on screen; control channel ui.drag, secondary click, pages_on_screen and comment state; view options quick/author/comment; 7 Lucide icons; parity entries; README
2026-10-01 21:38:07 -04:00
M5.3/M5.4: commenting UI: quick-bar Comment/Highlight/Draw flyout groups with pin, colour and thickness; sticky note and text box composer; highlight/underline/strikethrough from text selection; freehand, line, arrow, rectangle and oval gestures with live previews; Select tool selects (per-line frames for markup), moves, resizes with 8 handles, edits and deletes comments; canvas context menu (edit, reply, set status, colour, delete); Comments panel rewrite (add-a-comment box, search, selectable cards with reply box, ... menu, inline edit, status badges); comment edits re-render only their page and keep stale rasters on screen; control channel ui.drag, secondary click, pages_on_screen and comment state; view options quick/author/comment; 7 Lucide icons; parity entries; README
2026-10-01 21:38:07 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00
2026-09-30 05:17:08 -04:00