Files
photocraft/docs/parity.md
T
Brandon ThomasandClaude Opus 4.8 1c474b8c7e Image > Trap (CMYK prepress trapping)
Clean-room trap: per-ink grayscale dilation (separable max filter,
par_rows/wasm-safe) applied only under already-inked pixels, so internal
colour edges get a trap band while object-vs-paper edges stay clean.
Engine image.trap (CMYK-only, active pixel layer, one history step).
algo 3 tests + engine 2 tests. Parity 607 -> 608; FLOOR 603.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-03 00:44:18 -04:00

1.7 KiB
Raw Blame History

Photoshop menu parity

Generated by cargo xtask parity from crates/ui-egui/src/menu_catalog.rs (Photoshop's menu tree) and the live command registry. Do not edit by hand.

608 of 625 menu items live (97.3%).

Menu Live Total %
File 47 50 94%
Edit 75 75 100%
Image 61 61 100%
Layer 147 160 92%
Type 44 44 100%
Select 25 25 100%
Filter 75 75 100%
View 74 74 100%
Window 60 61 98%

Not yet implemented

File (3)

  • Export › Render Video… (file.export.renderVideo)
  • Import › Video Frames to Layers… (file.import.videoFramesToLayers)
  • Import › WIA Support… (file.import.wiaSupport)

Layer (13)

  • Video Layers › New Blank Video Layer (layer.videoLayers.newBlankVideoLayer)
  • Video Layers › New Video Layer from File… (layer.videoLayers.newVideoLayerFromFile)
  • Video Layers › Insert Blank Frame (layer.videoLayers.insertBlankFrame)
  • Video Layers › Duplicate Frame (layer.videoLayers.duplicateFrame)
  • Video Layers › Delete Frame (layer.videoLayers.deleteFrame)
  • Video Layers › Replace Footage… (layer.videoLayers.replaceFootage)
  • Video Layers › Interpret Footage… (layer.videoLayers.interpretFootage)
  • Video Layers › Show Altered Video (layer.videoLayers.showAlteredVideo)
  • Video Layers › Restore Frame (layer.videoLayers.restoreFrame)
  • Video Layers › Restore All Frames (layer.videoLayers.restoreAllFrames)
  • Video Layers › Reload Frame (layer.videoLayers.reloadFrame)
  • Video Layers › Rasterize (layer.videoLayers.rasterize)
  • Rasterize › Video (layer.rasterize.video)

Window (1)

  • Timeline (window.panel.timeline)