Refactor code structure for improved readability and maintainability
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Blurb Photo Book Editor
|
||||
|
||||
A Windows desktop app for arranging a folder of photos into a Blurb-ready interior PDF. Each photo is placed on its own page. The editor supports reordering, crop adjustment, page tags, and print-size setup.
|
||||
A Windows desktop app for arranging a folder of photos into a Blurb-ready interior PDF and ImageWrap cover spread. Each interior photo is placed on its own page. The editor supports reordering, crop adjustment, page tags, and print-size setup.
|
||||
|
||||
## Install and launch
|
||||
|
||||
@@ -15,10 +15,12 @@ python -m venv .venv
|
||||
## Use the editor
|
||||
|
||||
1. Choose **File → Import photo folder**. Import scans the selected folder's top level, sorts photos oldest to newest, and prepares previews in the background. A progress dialog shows scanning and preview progress.
|
||||
To add photos later, choose **File → Rescan Folder for New Photos**. It adds images not already in the project at their chronological positions, preserves existing page edits, and reports how many were added.
|
||||
2. Select a page card to edit it. Drag a photo inside the page to reposition it; use the zoom slider or +/- buttons to zoom around the current frame center. Photos start centered and cropped to fill the page.
|
||||
3. Drag cards to reorder pages. Use **Insert blank**, **Insert photo**, **Remove page**, or **Relink photo** as needed. The source photos are not modified.
|
||||
4. Right-click a page card to **Tag page** or **Untag page**. A red badge marks tagged pages, and tags are saved in the project. **View → View Tagged** filters the list to tagged photo pages; it is disabled when no photos are tagged. In this view, insertion and reordering are disabled; switch to **View All** to use them.
|
||||
5. Save the editable `.blurbproj` separately from the exported PDF.
|
||||
4. Right-click a photo page to **Make Front Cover** or **Make Back Cover**. The page leaves the interior and appears in **Cover Photos** with its cover-side badge. In **View → Cover Editor**, adjust its crop, enter spine text, and add optional front-cover title and subtitle text. Drag spine text up or down and front-cover text in any direction. **View → Reset spine text positions** restores the default spine layout. The front text uses the shared font and separate size controls, a 7 px radius black outline, and the matching spine text color. Set cover dimensions and wrap/bleed margins here as well. Remove a cover to return its photo to the interior in date order. Dashed spine guides show the full title area and the bottom 3.504-inch subtitle area.
|
||||
5. Right-click a page card to **Tag page** or **Untag page**. A red badge marks tagged pages, and tags are saved in the project. **View → View Tagged** filters the list to tagged photo pages; it is disabled when no photos are tagged. In this view, insertion and reordering are disabled; switch to **View All** to use them.
|
||||
6. Save the editable `.blurbproj` separately from the exported PDFs. **File → Open Recent** keeps up to ten projects you opened or saved so you can return to them later. Opening a project shows progress while it loads and prepares photo previews.
|
||||
|
||||
Photo cards show the date as `mm/dd/yyyy`. Dates come from supported timestamps in the filename first, then EXIF capture date, then filesystem creation time as a fallback.
|
||||
|
||||
@@ -26,7 +28,7 @@ Photo cards show the date as `mm/dd/yyyy`. Dates come from supported timestamps
|
||||
|
||||
The default trim area is **9.5 × 8 inches per individual page**. In **File → Blurb print setup**, enter the final PDF page width and height and the trim offsets required for the selected Blurb book format, paper, and cover. The exported PDF has one page per book page and includes the configured bleed area. The dashed guide shows the trim area, including alternating binding and outside edges.
|
||||
|
||||
Export renders photo pages at 300 PPI, checks the resulting PDF page count and dimensions, and requires an even page count. It can append blank pages to meet the configured minimum. The default page limits are 20–440; set them to the limits for the selected format and paper. The PDF contains interior pages only; cover design is not included.
|
||||
Export renders photo pages at 300 PPI, checks the resulting PDF page count and dimensions, and requires an even page count. It can append blank pages to meet the configured minimum. The default page limits are 20–440; set them to the limits for the selected format and paper. When cover content is assigned, export also creates a one-page full-spread companion named `<book>-cover.pdf` beside the interior PDF. Cover face defaults are 10.074 × 9 inches, with a 0.46-inch spine. Wrap/bleed margins start at 0.125 inches on each edge; these are editable starting values, so verify the exact dimensions and margins for the chosen Blurb format, paper, and page count before exporting.
|
||||
|
||||
Blurb's requirements vary by book configuration. Check the current [PDF-to-Book specifications](https://support.blurb.com/hc/en-us/articles/207792946-PDF-to-Book-specifications-and-checklist) and [page-count limits](https://support.blurb.com/hc/en-us/articles/7607055286541-How-many-pages-can-my-book-have) before exporting.
|
||||
|
||||
@@ -34,7 +36,7 @@ Supported photo formats are JPEG, PNG, TIFF, WebP, and BMP. HEIC and camera RAW
|
||||
|
||||
## Project files
|
||||
|
||||
A `.blurbproj` file stores photo paths, page order, each page's zoom and pan, page tags, and print settings. Photo files remain at their original locations; if a path is no longer available, use **Relink photo**.
|
||||
A `.blurbproj` file stores photo paths, page order, each page's zoom and pan, page tags, print settings, cover photos, spine and front-cover text styling and positions, and cover dimensions. Photo files remain at their original locations; if a path is no longer available, use **Relink photo** for interior pages or remove the cover photo and relink it from the book editor.
|
||||
|
||||
## Code layout
|
||||
|
||||
|
||||
Reference in New Issue
Block a user