Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Align songs to 2-page spread in facing pages layout #435

Open
gwyndaf opened this issue Sep 28, 2024 · 4 comments
Open

Align songs to 2-page spread in facing pages layout #435

gwyndaf opened this issue Sep 28, 2024 · 4 comments

Comments

@gwyndaf
Copy link

gwyndaf commented Sep 28, 2024

I think this might be a (nice-to-have) feature request, rather than my own ignorance.

Perhaps pdf.pagealign-songs could take a value of, say, -1, to force each song to start on an even-numbered page when pdf.even-odd-pages is non-zero?

Use case
My songbook is designed to fit each song to one page, but I'm experimenting with a large print version, as a proof-of-concept. Many songs therefore run to two pages, so it would be easiest to read if each songs is visible at a glance across a spread of two printed pages.

pdf.even-odd-pages=1 gives me the general print layout I need, with odd pages on right (e.g. for TOC), but pdf.pagealign-songs=1 then starts each song on an odd (right) page, requiring a page turn.

pdf.even-odd-pages=-1 (odd pages on left) comes close to a useable workaround, but confuses me (and possibly others) by putting odd pages on the left.

Definitions
It seems that pdf.pagealign-songs=1 means "start each song on an odd-numbered page", which is right if pdf.even-odd-pages=1 and left if pdf.even-odd-pages=-1

So, I suppose pdf.pagealign-songs=-1 would strictly mean "start each song on an even-numbered page".

By extension of current principles, I suppose a value less than -1 would then add headers/footers to otherwise empty pages.

@sciurius
Copy link
Collaborator

I'll get back to this shortly.

@sciurius
Copy link
Collaborator

It is an interesting suggestion (just like most of your suggestions ☺).

Before attempting this I would like to sort out all 'features' that play a role, and get rid of the overloading of even-odd-pages and pagealign-songs.

pages: symmetric (all odd), 1st page is odd (default), 1st page is even.

1-page song starts on: odd (default), even
2-page song starts on: odd (default), even
longer songs start on: odd (default), even
for all practical purposes, all table of contents, front matter and back matter are considered songs.

alignment pages are numbered: false (default), true

re-order songs: off (default), title, subtitle, desc

compact: avoid alignment pages by intelligently changing the order of the songs.

IIUC, your use case would then be: 1st page odd, 2-page songs start on even. Optionally, start single-page and longer songs on even pages as well.

Is this correct?

@gwyndaf
Copy link
Author

gwyndaf commented Sep 30, 2024

No rush on my part, and makes sense to assess before action.

That's correct for my principal use case: 1st (and right) pages numbered odd, 2-page songs start on even. I accept that TOC pagination follows same rules as 'real' songs.

As regards songs of 1 or 3+ pages, I simply assumed that forcing alignment to even pages would put a 1-page song on an even page with a blank odd alignment page facing it, and a 3-page song with a facing blank opposite its last page.

However, if you're reviewing this area of functionality...

It would certainly be nice to minimise unnecessary blank alignment pages, and the 'compact' setting sounds neat. For my usage, I'd like to do that while preserving existing song order. So, I'm wondering about ways to minimise blank pages, while preserving existing ordering...

Might a next option for song alignment be sensible/feasible?
For example, some songs (with my scenario of 2-page songs on even, plus 1-page songs on next):

  • A (2-pages) on even-odd
  • B (1-page) on even
  • C (1-page) on odd
  • D (1-page) on even
  • E (2-page) on even-odd

We'd therefore get just one blank page (opposite song D, on odd). Although it might be nicer visually to have song D on odd (with a blank before/facing on even), that's a small cost if a next option is feasible to reduce blanks.

For longer songs, maybe a setting for 3+ pages isn't actually needed? If my long song is 4 pages, I'd want even-odd-even-odd (one page turn), so same rule as for 2 pages. If it's 5 pages, I don't mind whether it runs even-odd-even-odd-even or odd-even-odd-even-odd because both involve two page turns, so I might use the next option here as well, to minimise blanks; but I might favour having later pages on spreads, and use odd.

That is, perhaps the 'song sizes' and layout settings might be:

  • 1-page starts on: odd, even or next
  • even page count starts on: odd, even or next
  • odd page count (>1) starts on: odd, even or next

Perhaps next should actually be default behaviour for them all? That is, with no alignment set, all songs simply fill the pages in sequence, with no alignment blanks. I think that's equivalent to current pagealign-songs=0 default?

One minor note, probably just an oversight: should sorttitle also be an option for re-ordering songs?

@gwyndaf
Copy link
Author

gwyndaf commented Oct 6, 2024

Another observation, probably related to this topic.

christmas_057.pdf is an experiment with simple facing pages layout (even-odd-pages=1, pagealign-songs=0).

I notice that the last, back matter content is placed on an even page, with a blank alignment page before. This makes sense if the back matter is purely a back cover page but, if it's an appendix or reference section, I'd expect it to start (with this layout) on the next odd/right page after the body content.

I hadn't noticed this before because my main songbook has an odd number of body pages, so the back matter falls on the next page (even/left) after that.

Mainly flagging this as something else to consider on the pagination topic, but possible approaches might include:

  • Do nothing. I'd probably treat --back-mater as meaning only 'back cover', and include other back matter material as a PDF 'song' (so it follows song alignment principles). I think this feature is being discussed, but unsure of current status.
  • Add explicit --front-cover and --back-cover CLI options, which automatically align to odd and even pages, respectively. I suspect it might be unwise to overload the command options, and favour config settings instead.
  • Extend the principle of the 'song sizes' config options you raised, to include:
    • front matter starts on: odd, even or next
    • back matter starts on: odd, even or next
    • Might we also need similar, but separate, options for front cover and back cover alignment (because that might differ from front and back matter)?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants