Skip to content

PhotoDemon nightly build

Pre-release
Pre-release
Compare
Choose a tag to compare
@tannerhelland tannerhelland released this 11 Apr 12:49
· 624 commits to f199e160cecbd39a7f66f684090b79608935a253 since this release
42aa19c

This release was automatically built from PhotoDemon's current source code. It may contain serious bugs. Use at your own risk.

Changes:

  • f199e16 Menu mnemonics: check both localized and en-US text with IsAlphaCharW [ #660 ]
  • c38c119 Updated German localization
  • 4de299e Update Russian.xml
  • 765ca31 Menu mnemonics: fix menu captions disappearing when... [ #499 ]
  • 8dfb8c7 Fix Edit > Paste behavior on layers with affine transforms [ #657 ]
  • 8210ce0 Update German.xml
  • 912597f Tools > Options: dedicated metadata panel
  • aa1df23 Tools > Options > Loading: new preference for hiding splash screen [ #655 ]
  • 465689d Merge pull request #656 from tannerhelland/custom-fonts
  • 1b36611 Tools > Options > Fonts: users can now add custom font folders [ #499 ]
See More
  • 2168c95 Support for custom user fonts: proof of concept [ #499 ]
  • b89a8f0 Updated localizations
  • 7486b65 Updates localizations
  • 0f7c42c Update localizations
  • 43bb13a Tools > Options > Menus: new "display access keys (mnemonics)" toggle [ #637, #654 ]
  • 6a0076e Localization updates for new options
  • bf02a5e Tools > Options > Fonts: expose previously hidden UI font
  • e949df6 Tools > Options: new organization
  • 1a1594a icons for new features
  • 41582c6 Merge pull request #653 from tannerhelland/overhaul-program-options
  • a343a95 Update German localization
  • e7c4851 Tools > Options: finish (?) overhauling underlying panel engine
  • 2d0f4c1 Fix app icon under Alt+Tab Terminator [ #486 ]
  • 3eb07d6 Tools > Options: Reset All Preferences works again
  • 6c092b4 Tools > Options: get panels working under new system
  • e0fa327 Window manager: rewrite toolpanel handling...
  • 9f8c5f6 Tools > Options: continue working on new plumbing
  • 50ee75d Tools > Options: split all panels into their own windows
  • b221df8 Crop tool: improve preset matching behavior
  • 56b2f4b Crop tool: fix rare, random flickering
  • dbcb3dc Crop tool: implement guides!
  • e4914b4 Crop tool: UI for "guides'
  • 46393dd Image > Canvas size: fix handling of decimal point in non-pixel measurements
  • 47f9914 Add "wrong file extension" detection for PDF documents
  • dc60f0c New central handler for reporting third-party library errors [ #651 ]
  • c15d940 PDF plugin: initialize "on-demand" to improve startup performance
  • 332cdad HEIF plugin: reduce debug log noise
  • d7e077c Update German.xml
  • ad524f7 Automatic memory reduction now triggers when creating pixel surfaces [ #640 ]
  • e65d318 AVIF: report libavif failure messages directly to user [ #651 ]
  • 9629568 Update Russian.xml [ #650 ]
  • d6eddb1 New generic error handlers for third-party libraries [ #651 ]
  • 1844a5c ICO export: manually apply black to masked pixels
  • f718252 Update German.xml
  • 0b0eacf When thresholding alpha, ensure masked pixels are forced to black
  • e6685f9 Localization updates for new crop tool features
  • 3bf41b9 Update German.xml
  • 790ca7d Crop tool: size presets are now loaded from persistent text files
  • 9282e76 resvg: update to latest 0.45.0
  • 158dafd libzstd: update to latest version (1.5.7)
  • 6f1bf7b Crop tool: continue improving preset behavior
  • 45b625a Crop tool: get initial preset behavior working
  • 73bd37f Fix status bar message after user cancels import dialog(s)
  • 543b5d3 Crop tool: get UI for presets in place
  • 3aa800f Crop tool: move "allow enlarging" checkbox to options panel
  • 4d15e28 PDF import: update to latest pdfium
  • ebadff6 PDF import: a few improvements
  • ccf1e08 ICO export: use Lanczos instead of Mitchell filter for downscaling
  • 4dabc45 JPEG-XL images: add JPEG-XL detection even if libjxl isn't installed [ #644 ]
  • 5dc4e8f Loading many images at once: allow cancellation... [ #644 ]
  • 3918595 Tools > 3rd-party libraries: fix list behavior on high-DPI displays
  • 0d0e0d1 Fix "offer to fix bad file extension" when drag/drop is used [ #644 ]
  • e90561f AVIF images: add manual format ID feature... [ #644 ]
  • 69ce0d7 Update German.xml
  • 24a11ab Export > [any file format] dialogs are now freely resizable
  • 6e8947e Export > [animated file format] dialogs are now resizable
  • 1133813 Remember window locations: fix off-screen calculations...
  • 69fe2b1 AVIF images: update to the latest 1.2.0 libavif release
  • 2bcfb90 Update pdLCMSProfile.cls
  • 77cf4e5 AVIF import/export: fix support for Unicode filenames [ #647 ]
  • d191ddd File > Save JPEG dialog is now resizable
  • 7248463 Update Russian.xml [ #646 ]
  • 950fe1d Fix window state tracking on non-resizable windows
  • 44518b0 When loading an image, other open images may now be auto-suspended...
  • 4079ef8 Track app memory usage in MB, not KB
  • 98a4868 Images and layers can now be suspended to disk
  • b3152b1 New Simplified Chinese localization [ #645 ]
  • 6852656 Bad image file extensions: warn user, and offer to fix [ #644 ]
  • 6a1f759 File > Save as: respect typed file extension in files with... [ #644 ]
  • 7e1fee5 New function to match all known file extensions against a file type
  • e994488 Remember size+location of all dialog windows...
  • 791a396 New "Replace" blend mode: performance improvements
  • 8b8b01d Update German localization
  • 55e7953 Update pdFSO.cls
  • 53af997 Adjustments > Color > Colorize: modernize and expand tool
  • 4fff0aa Effects > Render > Clouds: test new "replace" blend mode
  • b47281f Histograms: round luminance values to nearest byte...
  • 2caa718 Implement "Replace" (Overwrite) blend mode
  • 7b050c4 Adjustments > Histogram: unify histogram rendering with other dialogs...
  • 2acacb5 Update localizations [ #643 ]
  • 730095c Crop tool: improve aspect ratio persistence when locked
  • 936ca06 Crop tool: add selection handling, minor bug-fixes
  • 065768c Updated German localization
  • 8d9f5a8 Update version no. to ensure nightly build updates across all branches
  • 72bd3ff Merge branch 'main' of https://github.com/tannerhelland/PhotoDemon
  • 786347d Merge pull request #642 from tannerhelland/crop-tool
  • aa19072 PCX files: improved heuristics for wonky embedded palettes
  • 93d26d2 Crop tool: localizations
  • cb6e796 Crop tool: implement toggle for "image" vs "layer" cropping
  • 847499a PCX files: improved heuristics for wonky embedded palettes
  • e5657d2 Crop tool: implement destructive cropping
  • 36e576a Crop tool: UI for "delete cropped pixels"
  • 72ab6da Crop tool: implement tab order for tool panel
  • 9e7a75e Crop tool: new UI for edge dragging
  • c766b27 Crop tool: resize by edge-dragging now working!
  • 2540ae1 Crop tool: start work on N/E/S/W border dragging
  • 0c897c3 Crop tool: finalize all combinations of "lock aspect ratio" and...
  • ed8ec7a Merge branch 'main' into crop-tool
  • 911fabd Color lookup: for CUBE format, fix min/max domain import...
  • 59722aa WebP support: update to the latest libwebp [ #639 ]
  • 65fd64a Magic wand: additional failsafes against out-of-image clicks
  • ddb5b60 Update Tools.bas
  • 25fa901 Status bar: fix double-conversion of real-world measurements
  • a35a1e6 pdPCX: add coverage for 4-bit, 4-plane data
  • a66339b Reduce memory usage on animation dialogs
  • fa0e124 Fixes for crashes with images around ~2 GB in size
  • 601afc1 Update pdPNG.cls
  • 8ce43fc Improve tool notification when image size may change
  • fe646a6 Update pd2DRegion.cls
  • 8a8f648 Crop tool: ongoing code clean-up
  • cab1ee1 Status bar: fix double-conversion of real-world measurements
  • 0e34f51 Crop tool: fix aspect ratio locking when "allow enlarge" is set
  • 4e6d720 pdPCX: add coverage for 4-bit, 4-plane data
  • d8d6683 Crop tool: start refactoring to make code more maintainable
  • b508e38 Crop tool: use double-click for committing the crop
  • 2b51293 Crop tool: preserve on-screen crop across images
  • 67646e0 Reduce memory usage on animation dialogs
  • 826ba37 Fixes for crashes with images around ~2 GB in size
  • 0386ec6 Update pdPNG.cls
  • 4f08ab7 Crop tool: implement "highlight" UI (called "Shield" in Photoshop)
  • 67d78a7 Improve tool notification when image size may change
  • 19f4f52 Update pd2DRegion.cls
  • 85641e6 Crop tool: new button for portrait / landscape swap
  • db00e52 Localization updates
  • 191db8c Fix weird Windows 11 24H2 lag at startup
  • c627ca6 Remove superfluous hotkey file check...
  • bf34741 Allow some plugins in the IDE regardless of OS
  • 11757a8 Limit SVG support to Win 10/11
  • a8fe82a Fix weird Windows 11 24H2 lag at startup
  • 367b29d Crop tool: new "allow enlarging" toggle
  • 80765c7 Remove superfluous hotkey file check...
  • b4195b0 Allow some plugins in the IDE regardless of OS
  • c521265 Limit SVG support to Win 10/11
  • 8da29ba Merge branch 'main' into crop-tool
  • ce01586 On failed startup, create a small, "emergency" debug log
  • 5ca0cac Minor changes to text order...
  • 389c378 Tools > Options: on OK press, immediately reflect changes to missing "interface" options
  • 6c94378 Titlebar: display canonical file format instead of just file extension
  • a6f23b0 Tools > Options: on OK press, immediately reflect changes to missing "interface" options
  • 31bbffa Titlebar: display canonical file format instead of just file extension
  • f12c647 Crop tool: implement cropping!
  • 314d34a Merge branch 'main' into crop-tool
  • c481880 Pencil tool: new "align to pixel grid" setting
  • a1ed466 Update German.xml
  • 556f61d Pencil tool: UI for new "align to pixel grid" option
  • 52aaf64 Update Clonestamp.bas
  • b8b8ac0 Paint tool, Eraser tool: new "align to pixel grid" tool [ #635 ]
  • 51cbc6b Status bar: turn off rounding for pixel measurements
  • 5101df5 Brush engine: new "align to pixel grid" setting
  • 1dee183 Crop tool: better handle weird edge cases
  • afd9e61 Crop tool: activate apply/remove buttons
  • 6cd00e1 Merge branch 'main' into crop-tool
  • 7ef2b09 Permanent fix for ezgif.com PNGs [ #612 ]
  • 105924c Paint/Eraser tools: improve behavior of 1 px brushes [ #635 ]
  • ca14676 Fix typo
  • 173eb11 Update pdPCX.cls
  • c3a0e43 Fix some bad dates
  • e4e829d Crop tool: locked aspect ratio now works on modifications as well
  • 7314540 Crop tool: aspect ratio locks no work on initial click+drag
  • 3ad9f28 Crop tool: start prepping for interactive modifications
  • 0902085 Update ImageFormats.bas
  • a019d0e Crop tool: get a bunch more UI bits implemented
  • c8b07c8 Merge branch 'main' into crop-tool
  • 21ba41d Update German.xml
  • 7be37e7 Localization updates [ #634 ]
  • 76b057e Merge branch 'main' into crop-tool
  • c667bfa Cherry-pick some commits from crop-tool branch
  • 6e0170d New Tools > Developer > View debug log for this session menu
  • a3adfc4 PCX import: clean up debug messaging
  • 008cf12 Update pdPCX.cls
  • 2e7c3b1 Add @LsGeorge to contributors
  • 25f917d new Czech localization [ #633 ]
  • 1b08953 New Tools > Developer > View debug log for this session menu
  • 5f4ea47 PCX import: clean up debug messaging
  • 25c21c1 Update German localization
  • 7a64327 Merge branch 'main' into crop-tool
  • 733ce6a Merge pull request #632 from tannerhelland/snap-angles [ #630 ]
  • 253fb25 Localizations for new View > Snap to > Angle menus
  • e982a06 Move/Size tool: holding SHIFT now snaps angle to 15 degree increments [ #630 ]
  • b8558a8 Implement View > Snap To > Angle 90/45/30 options [ #630 ]
  • 027d986 UI for angle snapping [ #630 ]
  • 80a31c3 Crop tool: get essential toolpanel UI elements working
  • 9f6978b Update pdPCX.cls
  • 43d72dd Start wiring up crop tool and toolpanel
  • e9981de Crop tool: tons of UI work on the toolpanel
  • dc69877 Merge branch 'main' into crop-tool
  • 1f98b9a Fix padding for esoteric bit-depth/color plane/image dimension combinations
  • e5274c0 Final code clean-up on recent PCX format work
  • 5455ef5 Merge branch 'main' into crop-tool
  • 21c86d7 Add import support for DCX images
  • 711ca0a Move my "Testing" menu to the Tools > Developer submenu
  • 49f3849 Ship a few default palettes to help with legacy image handling
  • 1083ff5 Merge branch 'main' into crop-tool
  • 8e5df5f minor year-end changes
  • 081342a It's 2025!
  • ac8a06b Update localizations
  • df139a9 Merge pull request #626 from tannerhelland/pcx-export
  • ee09200 PCX export: finished!
  • 6b3170a PCX now supported as an export format
  • 1941575 PCX export: basic plumbing
  • 7eec4a9 Update Processor.bas
  • 86dc672 fix VB IDE case annoyances
  • 5ca6807 fix missing localization
  • 21331fb Update localizations
  • 55b4f3e PCX decoder: turn off verbose logging
  • b323cc6 Merge pull request #623 from tannerhelland/pcx-format
  • a09a9d2 PCX import: retrieve DPI values...
  • 91817a1 PCX import: attempt recovery of broken files
  • 3f3f923 PCX import: store relevant properties
  • 5114c13 PCX import: work largely complete
  • f32af11 PCX decoder: get 1/2/4 bit-depths working
  • 414a20c PCX import: new internal engine
  • 56caac5 Crop tool: refine boundary calculations and display crop size in status bar
  • bf0c6a4 Crop tool: start work on tool panel UI
  • 68265d1 Crop tool: ongoing work
  • 31f3229 Merge branch 'main' into crop-tool
  • c06a032 minor code cleanup
  • 41093c5 Update Plugin_resvg.bas
  • ce02e9b Update resvg to latest 0.44.0
  • 40bbbc3 HEIF images: implement color management toggle
  • bd043ea update libavif to 1.1.1
  • 8ccde59 Update libjxl to 0.11.1
  • 2d16d73 PSD: implement color management toggle
  • 888d42b PSP images: harden against import errors...
  • edb6695 libdeflate: update to latest 1.23
  • 5344644 Implement "ignore ICC" toggle for many more formats
  • c942e89 PNG: implement new user pref for "ignore ICC profiles" [ #612 ]
  • 21bb94d Add @catterpiler74 localization for requested mouse wheel zoom toggle
  • ab64004 Update German.xml
  • 7741be7 PNG: when gamma is missing but chromaticity is not, assume gamma 2.2 [ #612 ]
  • 35f2e57 Implement new legacy color management toggle for PNG images [ #612 ]
  • b955745 UI and localizations for new color management preferences [ #612 ]
  • 8b4e216 New option for mouse wheel zoom [ #606 ]
  • 98f996e Update Russian.xml
  • f03e666 Update French.xml
  • 8a61d45 Fix transparency handling on EMF+ metafiles
  • d84b167 Update French translation
  • 6b33e72 PNG decoder: add debug warnings for mismatched gAMA/cHRM data [ #612 ]
  • 5a2a662 Merge pull request #608 from bulbaka/patch-1
  • e1645c7 Update Ukrainian.xml

This list of changes was auto generated.