layout fix

This commit is contained in:
Marc Wäckerlin
2026-04-30 18:46:28 +02:00
parent 1bfdbafc27
commit 4c8a24fcf4
20 changed files with 37 additions and 5 deletions
+26
View File
@@ -186,6 +186,30 @@ Note: direct commands like `\paperwidth{...}` or `\color{...}` would clash with
- `bgscale=`: background image scale, default `1.0` - `bgscale=`: background image scale, default `1.0`
- `bgopacity=`: background image opacity, default `1.0` - `bgopacity=`: background image opacity, default `1.0`
Standard Layout Blueprint (Normalfall)
======================================
The diagram below shows the default `layout=standard` with `header=true` and `qr=true`
(`qrfirst` variant: QR on the left, text on the right):
![Standard layout blueprint](screenshots/layout-standard.svg)
What Influences What (Standard Layout)
--------------------------------------
- `paperwidth/paperheight/contentwidth/contentheight/padding`: define the outer geometry of the whole card.
- `header/noheader`: enables/disables the complete top block (name/logo/company line + separator line).
- `logo` + `logoheight`: affects header composition and reserved vertical space.
- `company[height=...]` / `companylogo[height=...]`: affects second header line and reserved space.
- `textwidth` and `qrwidth`: define horizontal split of body columns.
- `qr/noqr`: removes the QR column; text then uses full body width.
- `qrfirst/textfirst`: swaps left/right order of QR and text columns.
- `icon/noicon`, `hint/nohint`, `iconleft/iconright`, `fill/nofill`: only affect formatting inside text lines.
- address field presence/visibility: controls whether address block (and map-pin icon) is rendered.
- `pgpfingerprint`: adds an extra footer line and reserves additional vertical space.
- `background`/`bgscale`/`bgopacity`: visual background only, no content reflow.
- `qrlogo`/`qreclevel`/`qrlogoscale`/`qrlogoborder`: QR internals only, no column reflow.
Data Definitions Data Definitions
================ ================
@@ -323,6 +347,8 @@ Alternative: centered back side without QR and without header:
\drawcard[layout=centered,noqr,noheader] \drawcard[layout=centered,noqr,noheader]
``` ```
Complete working example: [centered-backside-example.tex](examples/centered-backside-example.tex)
Equivalent using setter commands: Equivalent using setter commands:
```latex ```latex
+9 -3
View File
@@ -564,7 +564,13 @@
% Uses actual logo height if logo is taller than default reserved space % Uses actual logo height if logo is taller than default reserved space
% This is computed as a length and stored, not a macro % This is computed as a length and stored, not a macro
\newcommand\computeheightscale{% \newcommand\computeheightscale{%
\setlength{\BCQ@reservedheight}{\dimexpr2em+\ifhaspersonalname{\ifhaspositionblock{\BCQ@companybrandingheight}{0pt}}{0pt}\relax}% \ifBCQ@header
\setlength{\BCQ@reservedheight}{\dimexpr
\ifhaspersonalname{2em}{\ifhaspositionblock{0pt}{2em}}%
+\ifhaspositionblock{\BCQ@companybrandingheight}{0pt}\relax}%
\else
\setlength{\BCQ@reservedheight}{0pt}%
\fi
\ifdim\BCQ@logoheightdimen>\BCQ@reservedheight \ifdim\BCQ@logoheightdimen>\BCQ@reservedheight
\setlength{\BCQ@heightscale}{\dimexpr\textheight-\BCQ@logoheightdimen-\ifcsdef{Xpgpfingerprint}{2em}{0em}\relax}% \setlength{\BCQ@heightscale}{\dimexpr\textheight-\BCQ@logoheightdimen-\ifcsdef{Xpgpfingerprint}{2em}{0em}\relax}%
\else \else
@@ -786,11 +792,11 @@ END:VCARD\BCQ@nl}
\ifhasaddressvisible{% \ifhasaddressvisible{%
\ifBCQ@iconleft \ifBCQ@iconleft
\ifBCQ@icon\parbox[c]{1em}{\faMapMarker}\ \ifBCQ@fill\hfill\fi\fi \ifBCQ@icon\parbox[c]{1em}{\faMapMarker}\ \ifBCQ@fill\hfill\fi\fi
\begin{varwidth}{\dimexpr#1-2em\relax} \begin{varwidth}{\dimexpr\textwidth-2em\relax}
\ifBCQ@rightalign\enforceright\fi\address \ifBCQ@rightalign\enforceright\fi\address
\end{varwidth} \end{varwidth}
\else \else
\begin{varwidth}{\dimexpr#1-2em\relax} \begin{varwidth}{\dimexpr\textwidth-2em\relax}
\ifBCQ@rightalign\enforceright\fi\address \ifBCQ@rightalign\enforceright\fi\address
\end{varwidth} \end{varwidth}
\ifBCQ@icon\ifBCQ@fill\hfill\fi\ \parbox[c]{1em}{\faMapMarker}\fi \ifBCQ@icon\ifBCQ@fill\hfill\fi\ \parbox[c]{1em}{\faMapMarker}\fi
+1 -1
View File
@@ -13,7 +13,7 @@ AC_CHECK_PROG([pandoc])
AC_CHECK_PROG([convert]) AC_CHECK_PROG([convert])
AC_CHECK_PROG([xelatex]) AC_CHECK_PROG([xelatex])
EXAMPLES="example john-doe-hongkong \ EXAMPLES="centered-backside-example example john-doe-hongkong \
peter-muster-example-company-zuerich special-papersize \ peter-muster-example-company-zuerich special-papersize \
texstudio_d30266 photo-example photo-in-qr-example" texstudio_d30266 photo-example photo-in-qr-example"
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
AUTOMAKE_OPTIONS = foreign AUTOMAKE_OPTIONS = foreign
SUBDIRS = examples screenshots SUBDIRS = examples screenshots
EXAMPLES = background-color-example background-image-example example john-doe-hongkong peter-muster-example-company-zuerich photo-example photo-in-qr-example photo-large-example special-papersize test-country-short texstudio_d30266 EXAMPLES = background-color-example background-image-example centered-backside-example example john-doe-hongkong peter-muster-example-company-zuerich photo-example photo-in-qr-example photo-large-example special-papersize test-country-short texstudio_d30266
dist_latex_DATA = @PACKAGE_NAME@.cls dist_latex_DATA = @PACKAGE_NAME@.cls
dist_doc_DATA = README.md #@PACKAGE_NAME@.pdf dist_doc_DATA = README.md #@PACKAGE_NAME@.pdf
Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 674 KiB

After

Width:  |  Height:  |  Size: 674 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 778 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB