Feature Request
Add configurable width and height margin offsets for PDF rendering via config.ini, allowing users to shift the card grid from its auto-centered position.
Required for Epson EcoTank ET-8550 printer compatibility.
Current behavior
In pdf_gen() (main.py:94), margins are auto-calculated to center the card grid on the page:
rx, ry = round((pw - (w * cols)) / 2), round((ph - (h * rows)) / 2)
There is no way for the user to adjust this — the grid is always perfectly centered.
Desired behavior
Add Margin.X and Margin.Y settings to config.ini (in points) that offset the card grid from its default centered position. Useful for:
- Accommodating printer-specific feed offsets (e.g., Epson ET-8550)
- Fine-tuning card placement for non-standard paper
- Shifting the print area toward a specific edge (e.g., for binder or hole-punch clearance)
Suggested approach
- Add
Margin.X and Margin.Y options to config.ini under [DEFAULT] (default to 0)
- Read them in
pdf_gen() and apply to the existing rx/ry offsets
- No GUI changes needed — just config-driven
Affected files
main.py — pdf_gen() function
config.ini — new margin defaults
Feature Request
Add configurable width and height margin offsets for PDF rendering via
config.ini, allowing users to shift the card grid from its auto-centered position.Required for Epson EcoTank ET-8550 printer compatibility.
Current behavior
In
pdf_gen()(main.py:94), margins are auto-calculated to center the card grid on the page:There is no way for the user to adjust this — the grid is always perfectly centered.
Desired behavior
Add
Margin.XandMargin.Ysettings toconfig.ini(in points) that offset the card grid from its default centered position. Useful for:Suggested approach
Margin.XandMargin.Yoptions toconfig.iniunder[DEFAULT](default to0)pdf_gen()and apply to the existingrx/ryoffsetsAffected files
main.py—pdf_gen()functionconfig.ini— new margin defaults