MMD PDF: rebrand, single corporate theme, and real removal of edited text #1

Merged
kua-agent merged 1 commits from feat/mmd-pdf-rebrand-20260827 into main 2026-08-27 05:37:41 +00:00
Member

Fork of KillerPDF 1.7.5 (GPL-3.0) turned into MMD PDF.

Defect fixed. Upstream edits existing text by covering the original run with an opaque rectangle and drawing the replacement on top; the original glyphs stayed in the content stream, so extracting text from a saved file returned the old value alongside the new one. Found on 2026-08-27 by real keyboard-and-mouse testing on mmd-win-test-01: a delivery note edited from 12 to 17 tonnes returned BOTH figures from pdftotext. Services/PdfRedactText.cs now parses the page content stream, tracks CTM and the text matrix, and blanks every show-text operator whose origin falls inside a CoverAnnotation, hooked into PdfBurn.DrawAnnotationsIntoDoc before any new content is appended.

Verified live on mmd-win-test-01, driven only by keyboard and mouse over the RDP harness: opened a clean note reading 12 tonnes, double-clicked the line, typed 19 tonnes, pressed Enter, saved, confirmed Replace. pdftotext of the saved file returns Quantity delivered: 19 tonnes and no 12; every other line of the document is byte-identical.

Design. Themes/MMD.xaml is now the only theme (C8102E red used sparingly, 23221E ink, F1F1EC platinum, FFFFFF paper, square corners, no grain or glyph shadows). The other twelve themes, the accent overlays, the theme picker and the accent strip are removed. No dark mode. Product name, icon and word-mark are MMD; the upstream author credit and the in-app install button are gone.

Gates. dotnet build Release: 0 errors, 2 warnings (one unused private field left by the picker removal). Application launched and exercised on the test VM.

Not in this PR. Scanner acquisition (NAPS2.Wia) is not implemented. Code signing and the Intune package are not done - note that re-signing under an MMD certificate resets SmartScreen reputation.

Fork of KillerPDF 1.7.5 (GPL-3.0) turned into MMD PDF. **Defect fixed.** Upstream edits existing text by covering the original run with an opaque rectangle and drawing the replacement on top; the original glyphs stayed in the content stream, so extracting text from a saved file returned the old value alongside the new one. Found on 2026-08-27 by real keyboard-and-mouse testing on mmd-win-test-01: a delivery note edited from 12 to 17 tonnes returned BOTH figures from pdftotext. Services/PdfRedactText.cs now parses the page content stream, tracks CTM and the text matrix, and blanks every show-text operator whose origin falls inside a CoverAnnotation, hooked into PdfBurn.DrawAnnotationsIntoDoc before any new content is appended. **Verified live on mmd-win-test-01**, driven only by keyboard and mouse over the RDP harness: opened a clean note reading 12 tonnes, double-clicked the line, typed 19 tonnes, pressed Enter, saved, confirmed Replace. pdftotext of the saved file returns `Quantity delivered: 19 tonnes` and no 12; every other line of the document is byte-identical. **Design.** Themes/MMD.xaml is now the only theme (C8102E red used sparingly, 23221E ink, F1F1EC platinum, FFFFFF paper, square corners, no grain or glyph shadows). The other twelve themes, the accent overlays, the theme picker and the accent strip are removed. No dark mode. Product name, icon and word-mark are MMD; the upstream author credit and the in-app install button are gone. **Gates.** dotnet build Release: 0 errors, 2 warnings (one unused private field left by the picker removal). Application launched and exercised on the test VM. **Not in this PR.** Scanner acquisition (NAPS2.Wia) is not implemented. Code signing and the Intune package are not done - note that re-signing under an MMD certificate resets SmartScreen reputation.
kua-agent added 1 commit 2026-08-27 05:37:28 +00:00
- Services/PdfRedactText.cs: strip text whose origin falls inside a CoverAnnotation
  from the page content stream at save time, hooked into PdfBurn.DrawAnnotationsIntoDoc.
  Fixes edited values staying recoverable by text extraction.
- Themes/MMD.xaml replaces all thirteen themes; picker and accent strip removed; no dark mode.
- Rename KillerPDF -> MMD PDF across code, resources, packaging and locale strings; new icon.
- Remove the upstream author credit and the in-app install button.
kua-agent merged commit 2cc2f1b627 into main 2026-08-27 05:37:41 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mmd-it/mmd-pdf#1