From 1bfdbafc275361a621c849d1251826e3168f32d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20W=C3=A4ckerlin?= <4056726+mwaeckerlin@users.noreply.github.com> Date: Thu, 30 Apr 2026 17:34:16 +0200 Subject: [PATCH] more layout options --- README.md | 569 +++++++++++++++++----------- businesscard-qrcode.cls | 316 ++++++++++++--- examples/example.pdf | Bin 64273 -> 64280 bytes examples/john-doe-hongkong.pdf | Bin 3236692 -> 3236691 bytes examples/photo-example.pdf | Bin 1293583 -> 1293581 bytes examples/photo-in-qr-example.pdf | Bin 5882502 -> 5882502 bytes examples/texstudio_d30266.pdf | Bin 25024 -> 25021 bytes screenshots/example.png | Bin 49410 -> 49410 bytes screenshots/john-doe-hongkong-0.png | Bin 21673 -> 21673 bytes screenshots/john-doe-hongkong-1.png | Bin 690039 -> 690039 bytes screenshots/photo-example.png | Bin 47881 -> 47881 bytes screenshots/photo-in-qr-example.png | Bin 796306 -> 796306 bytes screenshots/texstudio_d30266.png | Bin 21423 -> 21423 bytes 13 files changed, 614 insertions(+), 271 deletions(-) diff --git a/README.md b/README.md index 0f33e19..d2ab1c2 100644 --- a/README.md +++ b/README.md @@ -1,206 +1,30 @@ Businesscard with QR-Code ========================= -What happens, if you give your visiting card to someone? Either he manually types the text into his computer or mobilefone, or it will end up in a box and be forgotten. Nowadays data is required electronically, not on paper. Here is the solution: A visiting card with QR-Code that contains a full [vcard], so that it can be scanned with an [app] on the mobilefone and therefore automatically imported into the electronic contacts. This also works well, when you are offline and bluetooth transfer fails. So here is the highly configurable businescard or visitingcards with full [vcard] as QR-Code, ready to send to online printers. You can specify the exact size of the paper and the content within the paper, inluding generation of crop marks. +What happens when you hand someone a business card? Either they type everything manually, or the card gets forgotten. This class generates a print-ready business card with a QR code that embeds a full [vcard], so contact data can be imported directly with a scanner [app]. -Other available visitingcard templates, such as [mschlenker] distribute the cards on an A4 paper. But if you want a professional printer, such as [onlineprinters], then you need to be able to generate a PDF with exactly one card, an exactly defined border and crop marks. +Compared to templates that place many cards on A4, this project focuses on professional printing workflows: one card per PDF page, exact dimensions, and crop marks. [![Example: John Doe from Hongkong](screenshots/john-doe-hongkong.png)](examples/john-doe-hongkong.tex) [![Example: Businesscard of Peter Muster from Zürich](screenshots/peter-muster-example-company-zuerich.png)](examples/peter-muster-example-company-zuerich.tex) -[![Example: Nearly Real Examle Of My Card](screenshots/example.png)](examples/example.tex) +[![Example: Nearly Real Example Of My Card](screenshots/example.png)](examples/example.tex) Features ======== -- all information is in the QR-Code -- full privacy control: input is optional, specify only what you need, you decide what information to share, e.g. I print three cards, with phone and address, without address and only with electronical contacts, no phone nor address -- optional icons, optional small hint texts -- several alignments -- freely defined size of paper and content -- supports honoric titles, full names, address with post office box and extended information -- supports telefone, email, [jabber] and [matrix] chat -- supports several urls for your hompages -- supports [gitea], [github], [git] -- supports [facebook], [twitter], [google+], [youtube], [wikipedia] -- supports [pgp] key url and fingerprint -- supports [nextcloud federation id] +- full contact payload in QR code (vCard 4.0) +- privacy control per field via optional `[hide]` (in QR only, not printed) +- configurable layout: alignment, icon placement, text/QR order, spacing, card dimensions +- professional print output with crop marks and exact paper/content size +- visual customization: logos, QR-center logo, background image/color, text color, QR color +- social/contact integrations ([jabber], [matrix], [gitea], [github], [git], [facebook], [twitter], [youtube], [wikipedia], [nextcloud federation id]) +- PGP key URL and fingerprint support +- multi-page PDFs (e.g. front/back variants) with `\newcard` -Usage -===== - -Installation ------------- - -Copy `businesscard-qrcode/businesscard-qrcode.cls` to your LaTeX class path. Simplest way for installation on Linux: - -```bash -mkdir ~/texmf/tex/latex/businesscard-qrcode -cp businesscard-qrcode/businesscard-qrcode.cls ~/texmf/tex/latex/businesscard-qrcode/ -ln -s ~/texmf/tex/latex ~/texmf/tex/xelatex -``` - - -Compilation ------------- - -**Important:** You must use **`xelatex`** for compilation, because `xelatex` properly supports UTF-8 (e.g. needed for german umlauts or chinese characters). The package `inputenc` messes up with package `qrcode`. - -Note for iOS: vCard content inside the QR now uses CRLF line endings (per spec) to improve import robustness on iOS without changing the vCard version (still 4.0 by default). Also the QR error correction level can be configured. - - -Document Structure ------------------- - -```latex -\documentclass[]{businesscard-qrcode} - - - -\begin{document} - \drawcard -\end{document} -``` - -where `` and `` are explained below. - -Escaping Spaces in Data ------------------------ - -Whitespace inside `\tag{...}` parameters is ignored by TeX when the data is later passed to the QR encoder. To keep literal spaces in the resulting vCard you *must* escape every space with `\ ` inside each data macro: - -```latex -\company{Example\ Company\ Ltd.} -\city{New\ York} -\phone{+41\ 44\ 123\ 45\ 67} -``` - -All examples in this repository follow that convention—when you add your own data, please do the same. - - -Layout Options --------------- - -Layout options are set as options to the `\documentclass`, e.g.: - - \documentclass[textwidth=0.7,qrwidth=0.25,www,nofill,iconright,rightalign,hint,icon,textfirst]{businesscard-qrcode} - -### Available Options: - -- `paperwidth=`: width of the physical paper where the card is printed on (incl. border), default: `89mm` -- `paperheight=`: height of the physical paper where the card is printed on (incl. border), default: `59mm` -- `contentwidth=`: width of the card's content without the border that is cut, default: `85mm` -- `contentheight=`: height of the card's content without the border that is cut, default: `55mm` -- `fontsize=`: any fontsize allowed in `extarticle`, that are `8pt`, `9pt`, `10pt`, `11pt`, `12pt`, `14pt`, `17pt` and `20pt`, default: `8pt` -- `padding=`: padding within the card's content, default: `2mm` -- `cutdist=`: distance in `mm` where the cut marks are set, default: `2` -- `cutlen=`: length of the cut marks in `mm`, default: `1` -- `textwidth=`: relative width of the text block `1` means full width, so `qrwidth` plus `textwidth` should be smaller than `1` the remainig space is left empty between the text and QR-Code, default: `0.55` (that's 55% of the available space) -- `qrwidth=`: relative width of the QR-Code `1` means full width, so `qrwidth` plus `textwidth` should be smaller than `1` the remainig space is left empty between the text and QR-Code, default: `0.40` (that's 40% of the available space) -- `lang=`: language of the wikipedia page, will be prepended before `wikipedia.org`, e.g. `de.wikipedia.org`, default: `de` -- `address`or `noaddress`: disable rendering of the address in text and QR-Code, default: address -- `hint` or `nohint`: show the little text hints, default: `hint` -- `icon` or `noicon`: show the icons, default: `icon` -- `rightalign` or `leftalign`: align text left or right, default: `rightalign` -- `iconleft` or `iconright`: show icon left or right of the text, default: `iconleft` -- `fill` or `nofill`: fill empty space between icon and text, default: `fill` -- `qrfirst` or `textfirst`: switch position of QR-Code and text block, default: `qrfirst` -- `https` or `www`: should links in the hints be prefixed with `https://` or `www.`, default: `https` -- `countryformat=`: how to format the country in address. Values: `auto` (default: inline with mdash if <4 chars and city/zip exists), `inline` (always inline with mdash), `below` (always separate line) -- `qreclevel=`: QR error correction level `L` (~7%), `M` (~15%), `Q` (~25%), or `H` (~30%), default: `H`. Use `H` when embedding logo in QR code. -- `qrlogoscale=`: logo size in QR code as fraction of QR width (1.0 = 100%), default: `0.25` (25% width). Recommended values: Level H: 0.25-0.3, Level Q: 0.2, Level M: 0.15, Level L: 0.1. Higher values may reduce scannability. Can be overridden locally with `\qrlogo[scale=...]{file}`. -- `qrlogoborder=`: transparent padding around logo in QR code as fraction of QR width (1.0 = 100%), default: `0.02` (2%). Adds space between logo and QR modules. -- `logoheight=`: logo height next to name with unit (e.g., `4em`, `6em`), default: `4em` if company is set, `2em` otherwise. Can be overridden locally with `\logo[height=...]{file}`. -- `bgscale=`: background image scale factor (1.0 = 100% of card height), default: `1.0`. Use values like `1.5` or `2.0` for zoomed/cropped backgrounds. Only affects images, not colors. Can be overridden locally with `\background[scale=...]{file}`. -- `bgopacity=`: background image opacity/transparency (1.0 = 100% visible, 0.0 = invisible), default: `1.0`. Use lower values like `0.2` or `0.3` to fade the background so text remains readable. Only affects images, not colors. Can be overridden locally with `\background[opacity=...]{file}`. -- `qrbgopacity=`: QR code background opacity (1.0 = solid white, 0.0 = transparent), default: `1.0`. White background behind QR code ensures scannability over background images. Use `0.0` for no background or lower values like `0.8` for semi-transparent. Can be overridden locally with `\qrlogo[opacity=...]{file}`. -- `color=`: global text color for the entire document, default: `black`. Accepts any color name understood by `xcolor` (including mixes such as `blue!60!black`). Useful when printing on darker backgrounds to ensure legibility without redefining every style manually. -- `qrcolor=`: QR module color, default: `black`. Set this (e.g., `qrcolor=darkred`) to recolor the QR code independently from the main text color while keeping sufficient contrast with the background. - - -Data Definitions ----------------- - -Your data is entered with commands in the document, e.g.: - - \email{name@example.com} - -**Important:** Spaces *must* be escaped by a backslash `\` in all data definitions, otherwise the QR payload will silently drop them. Always write `\company{Example\ Company\ Ltd.}` or `\phone{+41\ 52\ 123\ 45\ 67}`. - -All data commands accept an optional `[hide]` (or `[hide=true]`) argument. When `hide` is set the value is stored in the QR/vCard only and omitted from the human readable text. Example: `\email[hide]{secret@example.com}` keeps the address available for scanners but off the printed card. - -See this example: - - \givennames{Juan\ Pablo} - \familynames{Martínez\ Escudero} - \company{Example\ Company\ Ltd.} - \street{Im\ Stutz\ 123} - \pobox{Postfach\ 4567} - \phone{+41\ 52\ 123\ 45\ 67} - \pgpurl{https://pgp.mit.edu/pks/lookup?op=get\&search=0xF62315D04D4C0C62} - -### Recognized Commands: - -- `\type`: either `home` or `work` for personal or business cards -- `\givennames`: your first name and eventual middle names -- `\familynames`: your family names -- `\honoricprefix`: honorix name prefixes, e.g. academic titles -- `\honoricsuffix`: honoric name suffixes -- `\company[logo=...,height=...,hide]`: company name — always rendered on a second line underneath the personal name. `logo=` may contain either a filename or arbitrary TeX content (e.g. a custom macro); when present, it is shown first, followed by the textual company/title/role string (if visible). `height` (default `1.5em`) controls the logo's size **and** the reserved vertical space for that second line, so adapting the height keeps the layout balanced. Even when `hide` is set, the company still appears in the QR/vCard, and the logo remains visible. -- `\pobox`: post office box -- `\extaddr`: address extension, e.g. name of a building or floor number -- `\street`: street and number of the address -- `\city`: name of the address location -- `\region`: region of the address -- `\zip`: zip code of the address -- `\country`: full name of country of the address in the language of the card (short codes like `CH`, `USA`, `D` are automatically placed inline with mdash before city/zip, longer names on separate line) -- `\phone`: your phone number, the phone is marked as mobile, so to be used for voice and text (SMS) -- `\email`: your email address -- `\jabber`: your [jabber] or xmpp chat address -- `\matrixorg`: your [matrix] chat addres, hint: use [riot] messenger for [matrix] -- `\cloud`: your [nextcloud federation id] — the url is prepended automatically -- `\homepage`: url to a web site with «home» icon — without `https://` not `www` (unless it is required), this is prepended automatically -- `\world`: url to a web site with «world» icon — without `https://` not `www` (unless it is required), this is prepended automatically -- `\link`: url to a web site with «link» icon — without `https://` not `www` (unless it is required), this is prepended automatically -- `\wordpress`: url to a web site with «wordpress» icon — without `https://` not `www` (unless it is required), this is prepended automatically -- `\drupal`: url to a web site with «» icon — without `https://` not `www` (unless it is required), this is prepended automatically -- `\joomla`: url to a web site with «joomla» icon — without `https://` not `www` (unless it is required), this is prepended automatically -- `\wikipedia`: if you or your company have a [wikipedia] entry, specify documentclass option `lang` for the language of you entry and use this definition for the name of your page — the url is prepended automatically -- `\git`: the url of your [git] repository — without `https://` not `www` (unless it is required), this is prepended automatically -- `\gitea`: the url of your [gitea] project page, you can use this tag also for other project management sites, such as [gogs] — without `https://` not `www` (unless it is required), this is prepended automatically -- `\github`: your account name on [github] — only the name of the account, the url is prepended automatically -- `\facebook`: your account name on [facebook] or the name of your page — only the name of the account or page, the url is prepended automatically -- `\twitter`: your account name on [twitter] — only the name of the account, the url is prepended automatically -- `\youtube`: your account name on [youtube] — only the name of the account, the url is prepended automatically -- `\google`: your account name on [google+] — only the name of the account, the url is prepended automatically -- `\pgpurl`: the full url to your pgp public key (only added to the QR-Code, not shown in the text) -- `\pgpfingerprint`: the fingerprint of your pgp public key -- `\logo[height=...]{content}`: supply either a path to an image file (PNG, JPG, PDF, …) or arbitrary LaTeX content (e.g., `\Pacta`). When a readable file exists it is loaded via `\includegraphics`; otherwise the content is typeset as provided. Optional `height` parameter (e.g., `height=6em`) overrides the global `logoheight` option. -- `\qrlogo[scale=...,opacity=...]{content}`: behaves like `\logo`, but places the content in the center of the QR code. Pass an image path or LaTeX markup. Optional parameters: `scale` (fraction like `0.3` for 30% of QR width) overrides `qrlogoscale`, `opacity` (0.0-1.0) overrides `qrbgopacity`. Remember that every logo lowers the QR-code's error-correction margin—keep the scale conservative and always test the code with multiple devices (smartphones plus command-line tools such as `zbarimg`). -- `\companylogo[height=...]{content}`: backwards-compatible helper that still allows arbitrary content below the name. Prefer the new `\company[logo=...]{...}` syntax, but this command remains available. -- `\background[scale=...,opacity=...]{file/color}`: path to background image file or color name (e.g., `yellow!20`, `blue!10`). If file exists, it's used as image; otherwise treated as color. Optional parameters: `scale` (factor like `1.5`) overrides `bgscale`, `opacity` (0.0-1.0) overrides `bgopacity`. - - -Print the Card -============== - -The card is designed for professional printing service, such as [onlineprinters]. Please *check* the card and the *QR-Code* well before you pay money for printing! Scan the QR with at least one smartphone app **and** a decoder such as `zbarimg businesscard.pdf` on Linux to make sure the payload survives background images, logos in the QR code, etc. - -Choose a format, default is `89mm×59mm` with 2mm boder, so the card content is `85mm×55mm`. But the card can be adapted to any other printing format. To print cards of size `10cm×5cm` with `2mm` cut, you specify, [e.g.](examples/special-papersize.tex): - - \documentclass[paperheight=5.4cm,paperwidth=10.4cm, - contentheight=5cm,contentwidth=10cm, - cutdist=2] - {businesscard-qrcode} - -![example with special paper size](screenshots/special-papersize.png) - - -Usage Example -============= - -Include the documentclass, define your data and add the document environment: +Quick Start +=========== ```latex \documentclass{businesscard-qrcode} @@ -216,84 +40,379 @@ Include the documentclass, define your data and add the document environment: \email{name@example.com} \begin{document} - \drawcard + \drawcard \end{document} ``` -Save it as file [texstudio_d30266.tex] and compile it to get [texstudio_d30266.pdf]: +Compile with: - xelatex -synctex=1 -interaction=nonstopmode texstudio_d30266.tex +```bash +xelatex -interaction=nonstopmode your-card.tex +``` -![the visiting card resulting from the usage example](screenshots/texstudio_d30266.png) -See [examples] for more examples. +Installation +============ + +Copy `businesscard-qrcode/businesscard-qrcode.cls` to your LaTeX class path. Simplest way on Linux: + +```bash +mkdir -p ~/texmf/tex/latex/businesscard-qrcode +cp businesscard-qrcode/businesscard-qrcode.cls ~/texmf/tex/latex/businesscard-qrcode/ +ln -s ~/texmf/tex/latex ~/texmf/tex/xelatex +``` + + +Compilation Notes +================= + +- Use **`xelatex`** (UTF-8 support, e.g. umlauts, CJK). +- Do **not** load `inputenc` with this class. +- vCard line endings default to CRLF (`crlf` option) for better iOS import compatibility. ### Building with latexmk / IDEs -Editors such as VS Code’s LaTeX Workshop usually call `latexmk` from the -workspace root. The repository now ships a project-local `.latexmkrc` -(and `examples/.latexmkrc`) that extend `TEXINPUTS` so TeX always prefers -the class file from this checkout over anything installed under -`~/texmf`. Leave those files in place when compiling from your IDE. -If you invoke `xelatex` manually without `latexmk`, set -`TEXINPUTS=/path/to/businesscard-qrcode:` (or run the command from the -repository root) to achieve the same effect. +Editors such as VS Code LaTeX Workshop usually call `latexmk` from the workspace root. This repository ships project-local `.latexmkrc` files (root and `examples/`) that extend `TEXINPUTS` so TeX prefers the local class file from this checkout. -Logo (optional) -=============== +If you invoke `xelatex` manually without `latexmk`, set: -You can add an optional logo that appears next to the name or in the center of the QR code. The logo is dynamically scaled to match the name line height (when next to name) or to 25% of the QR code width (when in QR). - -```latex -\logo{path/to/logo.png} +```bash +TEXINPUTS=/path/to/businesscard-qrcode: ``` -### Logo Placement Options: +(or run from the repository root). + + +Document Structure +================== + +```latex +\documentclass[]{businesscard-qrcode} + + + +\begin{document} + \drawcard +\end{document} +``` + + +Escaping Spaces in Data +======================= + +Spaces inside macro arguments must be escaped as `\ `, otherwise TeX may collapse them before QR/vCard generation. + +```latex +\company{Example\ Company\ Ltd.} +\city{New\ York} +\phone{+41\ 44\ 123\ 45\ 67} +``` + + +Layout Options +============== + +You can set layout options in four ways: + +1. `\documentclass[...]` (global defaults) +2. `\cardsetup{key=value,...}` (runtime/global from that point) +3. `\drawcard[key=value,...]` (runtime, convenient per page/card) +4. command-style setters `\set...{...}` (one setter per option) + +Note: direct commands like `\paperwidth{...}` or `\color{...}` would clash with core LaTeX commands/lengths, therefore the command API uses `\set...{...}` names. + +```latex +\documentclass[textwidth=0.7,qrwidth=0.25,www,nofill,iconright,rightalign,hint,icon,textfirst]{businesscard-qrcode} +``` + +```latex +% runtime/global +\cardsetup{textfirst,noicon,qrwidth=0.35} + +% per card/page +\drawcard[noqr,noheader,layout=centered] + +% command-style +\setqrwidth{0.35} +\seticon{false} +\setlayout{centered} +``` + +### Paper and Geometry + +- `paperwidth=`: physical paper width, default `89mm` +- `paperheight=`: physical paper height, default `59mm` +- `contentwidth=`: inner content width, default `85mm` +- `contentheight=`: inner content height, default `55mm` +- `padding=`: inner padding, default `2mm` +- `cutdist=`: crop-mark distance, default `2` +- `cutlen=`: crop-mark length, default `1` + +### Typography and Layout + +- `fontsize=`: one of `8pt,9pt,10pt,11pt,12pt,14pt,17pt,20pt`, default `8pt` +- `textwidth=`: relative text block width, default `0.50` +- `qrwidth=`: relative QR block width, default `0.40` +- `qrfirst` / `textfirst`: QR left/right order, default `qrfirst` +- `header` / `noheader`: show/hide top name block + separator line, default `header` +- `qr` / `noqr`: show/hide QR block, default `qr` +- `layout=`: `standard` (default) or `centered` +- `rightalign` / `leftalign`: text alignment, default `rightalign` +- `iconleft` / `iconright`: icon side, default `iconleft` +- `fill` / `nofill`: fill space between icon and text, default `fill` + +### Address, Links, and Formatting + +- `address` / `noaddress`: include address in print + vCard, default `address` +- `hint` / `nohint`: show small protocol hints, default `hint` +- `icon` / `noicon`: show icons, default `icon` +- `https` / `www`: hint URL style, default `https` +- `lang=`: wikipedia language prefix, default `de` +- `countryformat=`: `auto` (default), `inline`, or `below` +- `crlf` / `nocrlf`: vCard newline style, default `crlf` + +### Colors and QR Tuning + +- `color=`: global text color, default `black` +- `qrcolor=`: QR module color, default `black` +- `qreclevel=`: `L`, `M`, `Q`, `H`, default `H` +- `qrlogoscale=`: QR-center logo size fraction, default `0.25` +- `qrlogoborder=`: QR-center logo padding fraction, default `0.02` +- `qrbgopacity=`: QR white background opacity, default `1.0` + +### Logo and Background + +- `logoheight=`: default logo height near name (with unit). Auto-default: `4em` if company exists, else `2em` +- `bgscale=`: background image scale, default `1.0` +- `bgopacity=`: background image opacity, default `1.0` + + +Data Definitions +================ + +Define data via commands like: + +```latex +\email{name@example.com} +``` + +All data commands support optional `[hide]` (or `[hide=true]`): value remains in QR/vCard but is hidden in printed text. + +```latex +\email[hide]{secret@example.com} +``` + + +Recognized Commands +=================== + +### Name and Identity + +- `\type`: `home` or `work` (used in ADR/TEL/EMAIL vCard typing) +- `\honoricprefix`: name prefix/title +- `\givennames`: given names +- `\additionalnames`: additional/middle names +- `\familynames`: family names +- `\honoricsuffix`: name suffix +- `\title`: position/job title (also contributes to displayed/vCard full name) +- `\role`: role/function +- `\company[logo=...,height=...,hide]`: company text with optional inline logo configuration + +### Address + +- `\pobox` +- `\extaddr` +- `\street` +- `\city` +- `\region` +- `\zip` +- `\country` + +### Contact + +- `\phone` +- `\email` +- `\jabber` +- `\matrixorg` +- `\cloud` + +### Web and Social + +- `\homepage` +- `\world` +- `\link` +- `\wordpress` +- `\drupal` +- `\joomla` +- `\wikipedia` +- `\git` +- `\gitea` +- `\github` +- `\facebook` +- `\twitter` +- `\youtube` +- `\google` + +### Crypto + +- `\pgpurl` +- `\pgpfingerprint` + +### Visual Content + +- `\logo[height=...]{content}`: logo near name (file path or TeX content) +- `\qrlogo[scale=...,opacity=...]{content}`: logo in QR center (file path or TeX content) +- `\background[scale=...,opacity=...]{file-or-color}`: background image or color +- `\centercontent{...}`: custom content used by `layout=centered` +- `\companylogo[height=...]{content}`: backward-compatible company logo helper + +### Multi-Page and State Control + +- `\clearfield{}`: remove one field (printed + QR/vCard) +- `\clearcard`: remove all card fields plus card-scoped visuals (`\title`, logo, QR logo, background) +- `\clear{}`: alias of `\clearfield{}` (when no other package already defines `\clear`) +- `\newcard`: alias of `\newpage` + `\clearcard` +- empty structured entries are omitted automatically: if no personal-name parts remain, `N`/`FN` are not emitted; if no address parts remain, `ADR` is not emitted and the address icon/text block is hidden +- `\cardsetup{key=value,...}`: set layout options at runtime +- `\drawcard[key=value,...]`: draw a card and optionally adjust layout options inline +- `\setoption{key}{value}`: generic runtime setter + +### Command-Style Setters for Layout Options + +- geometry: `\setpaperwidth`, `\setpaperheight`, `\setcontentwidth`, `\setcontentheight`, `\setpadding`, `\setcutdist`, `\setcutlen` +- layout/typography: `\setfontsize`, `\settextwidth`, `\setqrwidth`, `\setqreclevel`, `\setqrlogoscale`, `\setqrlogoborder`, `\setlogoheight`, `\setlayout` +- booleans (`true`/`false`): `\setcrlf`, `\setaddress`, `\sethint`, `\seticon`, `\setrightalign`, `\seticonleft`, `\setfill`, `\setqrfirst`, `\setheader`, `\setqr`, `\sethttps` +- colors/language/format: `\setlang`, `\setcardcolor`, `\setqrcolor`, `\setcountryformat`, `\setbgscale`, `\setbgopacity`, `\setqrbgopacity` +- convenience toggles: `\noheader`, `\withheader`, `\noqr`, `\withqr`, `\standardlayout`, `\centeredlayout` + +### Document Title Interop + +- `\title{...}` is repurposed by this class for card position/title content +- `\carddocumenttitle{...}` calls the original LaTeX document-title command if needed + + +Second Page (Front/Back) +======================== + +Use one source file for front/back variants: + +```latex +\begin{document} + % Page 1 + \type{home} + \givennames{John} + \familynames{Doe} + \email{name@example.com} + \drawcard + + % Page 2 + \newcard + \type{work} + \company{My\ Company\ LTD} + \title{CEO} + \email{doe@mycompany.ltd} + \drawcard +\end{document} +``` + +Alternative: centered back side without QR and without header: + +```latex +\newcard +\centercontent{{\Large\bfseries My\ Company\ LTD}\par\vspace{0.8em}hello@mycompany.ltd\par mycompany.ltd} +\drawcard[layout=centered,noqr,noheader] +``` + +Equivalent using setter commands: + +```latex +\newcard +\setlayout{centered} +\setqr{false} +\setheader{false} +\centercontent{{\Large\bfseries My\ Company\ LTD}\par\vspace{0.8em}hello@mycompany.ltd\par mycompany.ltd} +\drawcard +``` + +If you want to keep most data and only remove selected fields: + +```latex +\newpage +\clear{givennames} +\clear{familynames} +\drawcard +``` + +See [john-doe-hongkong.tex](examples/john-doe-hongkong.tex) for a full two-page example. + + +Logo and Background Examples +============================ + +### Logo next to name -**Default (logo next to name):** ```latex \documentclass{businesscard-qrcode} \logo{logo.png} ``` -**Logo in QR code center:** +### Logo in QR center + ```latex -\documentclass[logoinqr,qreclevel=H,qrlogoscale=0.25]{businesscard-qrcode} -\logo{logo.png} +\documentclass[qreclevel=H,qrlogoscale=0.25]{businesscard-qrcode} +\qrlogo[scale=0.25]{logo.png} ``` -**Important:** When using `logoinqr=true`: -- Always use `qreclevel=H` (highest error correction ~30%) for reliable scanning -- Test QR code scannability with multiple apps before printing -- Default `qrlogoscale=0.25` (25% width = 6.25% area) is recommended for Level H -- If scanning fails, reduce to `qrlogoscale=0.2` or `qrlogoscale=0.15` -- PNG transparency is preserved - use images with transparent backgrounds for best results +Important for QR-center logos: + +- prefer `qreclevel=H` +- test scan quality with multiple apps/devices +- reduce `qrlogoscale` if decoding becomes unreliable + +### Large logo next to name -**Large logo next to name:** ```latex \documentclass[logoheight=6em]{businesscard-qrcode} \logo{logo.png} ``` -**Background color:** +### Background color + ```latex \documentclass{businesscard-qrcode} \background{yellow!20} ``` -**Background image:** +### Background image + ```latex \documentclass[bgscale=1.5,bgopacity=0.3,qrbgopacity=1.0]{businesscard-qrcode} \background{photo.png} ``` -Note: Use `bgopacity` to fade the background (e.g., `0.2` or `0.3`) so text remains readable. The QR code has a white background by default (`qrbgopacity=1.0`) to ensure scannability. + + +Print the Card +============== + +The default print format is `89mm × 59mm` with `2mm` border/cut distance (inner card: `85mm × 55mm`). + +Example for `10cm × 5cm` card with `2mm` cut: + +```latex +\documentclass[paperheight=5.4cm,paperwidth=10.4cm, + contentheight=5cm,contentwidth=10cm, + cutdist=2]{businesscard-qrcode} +``` + +![example with special paper size](screenshots/special-papersize.png) + +Before printing, validate QR readability (phone app + command line, e.g. `zbarimg businesscard.pdf`). Need More ========= -If you are missing a feature or a configuration option, consult the [project] page. Just open a [ticket] and the [author] will care about it. Or extend it, it's [lgpl]. - +If you are missing a feature or configuration option, consult [project] and open a [ticket]. Contributions are welcome ([lgpl]). [examples]: examples "more examples" diff --git a/businesscard-qrcode.cls b/businesscard-qrcode.cls index 3a30ab9..a3fb25d 100644 --- a/businesscard-qrcode.cls +++ b/businesscard-qrcode.cls @@ -45,8 +45,13 @@ \DeclareComplementaryOption{nofill}{fill} \DeclareBoolOption[true]{qrfirst} \DeclareComplementaryOption{textfirst}{qrfirst} +\DeclareBoolOption[true]{header} +\DeclareComplementaryOption{noheader}{header} +\DeclareBoolOption[true]{qr} +\DeclareComplementaryOption{noqr}{qr} \DeclareBoolOption[true]{https} \DeclareComplementaryOption{www}{https} +\DeclareStringOption[standard]{layout} % standard, centered \DeclareStringOption[auto]{countryformat} % auto: <4 chars inline with mdash, >=4 separate line; inline: always inline; below: always separate line \DeclareDefaultOption{\@unknownoptionerror} \ProcessKeyvalOptions* @@ -102,6 +107,147 @@ \def\BCQ@data@logo{}% \def\BCQ@data@height{}% } +\newcommand\BCQ@setbool[2]{% + \edef\BCQ@booltmp{#2}% + \ifdefstring{\BCQ@booltmp}{false}{% + \csname BCQ@#1false\endcsname + }{% + \csname BCQ@#1true\endcsname + }% +} +% Runtime configuration keys (usable via \cardsetup and \drawcard[...]) +\define@key{BCQ@runtime}{paperwidth}{\def\BCQ@paperwidth{#1}} +\define@key{BCQ@runtime}{paperheight}{\def\BCQ@paperheight{#1}} +\define@key{BCQ@runtime}{contentwidth}{\def\BCQ@contentwidth{#1}\def\content{paperwidth=\BCQ@contentwidth,paperheight=\BCQ@contentheight}} +\define@key{BCQ@runtime}{contentheight}{\def\BCQ@contentheight{#1}\def\content{paperwidth=\BCQ@contentwidth,paperheight=\BCQ@contentheight}} +\define@key{BCQ@runtime}{fontsize}{\def\BCQ@fontsize{#1}} +\define@key{BCQ@runtime}{padding}{\def\BCQ@padding{#1}\def\padding{\BCQ@padding}} +\define@key{BCQ@runtime}{cutdist}{\def\BCQ@cutdist{#1}\def\border{\BCQ@cutdist}} +\define@key{BCQ@runtime}{cutlen}{\def\BCQ@cutlen{#1}\def\cutlen{\BCQ@cutlen}} +\define@key{BCQ@runtime}{textwidth}{\def\BCQ@textwidth{#1}\def\textpercents{\BCQ@textwidth}} +\define@key{BCQ@runtime}{qrwidth}{\def\BCQ@qrwidth{#1}\def\imagepercents{\BCQ@qrwidth}} +\define@key{BCQ@runtime}{qreclevel}{\def\BCQ@qreclevel{#1}} +\define@key{BCQ@runtime}{qrlogoscale}{\def\BCQ@qrlogoscale{#1}} +\define@key{BCQ@runtime}{qrlogoborder}{\def\BCQ@qrlogoborder{#1}} +\define@key{BCQ@runtime}{logoheight}{\def\BCQ@logoheight{#1}} +\define@key{BCQ@runtime}{bgscale}{\def\BCQ@bgscale{#1}} +\define@key{BCQ@runtime}{bgopacity}{\def\BCQ@bgopacity{#1}} +\define@key{BCQ@runtime}{qrbgopacity}{\def\BCQ@qrbgopacity{#1}} +\define@key{BCQ@runtime}{lang}{\def\BCQ@lang{#1}\def\lang{\BCQ@lang}} +\define@key{BCQ@runtime}{color}{\def\BCQ@color{#1}\color{\BCQ@color}} +\define@key{BCQ@runtime}{qrcolor}{\def\BCQ@qrcolor{#1}} +\define@key{BCQ@runtime}{countryformat}{\def\BCQ@countryformat{#1}} +\define@key{BCQ@runtime}{layout}{\def\BCQ@layout{#1}} +\define@key{BCQ@runtime}{crlf}[true]{\BCQ@setbool{crlf}{#1}} +\define@key{BCQ@runtime}{nocrlf}[true]{\BCQ@setbool{crlf}{false}} +\define@key{BCQ@runtime}{address}[true]{\BCQ@setbool{address}{#1}\ifBCQ@address\def\printaddress{}\else\csundef{printaddress}\fi} +\define@key{BCQ@runtime}{noaddress}[true]{\BCQ@setbool{address}{false}\csundef{printaddress}} +\define@key{BCQ@runtime}{hint}[true]{\BCQ@setbool{hint}{#1}} +\define@key{BCQ@runtime}{nohint}[true]{\BCQ@setbool{hint}{false}} +\define@key{BCQ@runtime}{icon}[true]{\BCQ@setbool{icon}{#1}} +\define@key{BCQ@runtime}{noicon}[true]{\BCQ@setbool{icon}{false}} +\define@key{BCQ@runtime}{rightalign}[true]{\BCQ@setbool{rightalign}{#1}} +\define@key{BCQ@runtime}{leftalign}[true]{\BCQ@setbool{rightalign}{false}} +\define@key{BCQ@runtime}{iconleft}[true]{\BCQ@setbool{iconleft}{#1}} +\define@key{BCQ@runtime}{iconright}[true]{\BCQ@setbool{iconleft}{false}} +\define@key{BCQ@runtime}{fill}[true]{\BCQ@setbool{fill}{#1}} +\define@key{BCQ@runtime}{nofill}[true]{\BCQ@setbool{fill}{false}} +\define@key{BCQ@runtime}{qrfirst}[true]{\BCQ@setbool{qrfirst}{#1}} +\define@key{BCQ@runtime}{textfirst}[true]{\BCQ@setbool{qrfirst}{false}} +\define@key{BCQ@runtime}{header}[true]{\BCQ@setbool{header}{#1}} +\define@key{BCQ@runtime}{noheader}[true]{\BCQ@setbool{header}{false}} +\define@key{BCQ@runtime}{qr}[true]{\BCQ@setbool{qr}{#1}} +\define@key{BCQ@runtime}{noqr}[true]{\BCQ@setbool{qr}{false}} +\define@key{BCQ@runtime}{https}[true]{\BCQ@setbool{https}{#1}} +\define@key{BCQ@runtime}{www}[true]{\BCQ@setbool{https}{false}} +\newcommand\cardsetup[1]{\setkeys{BCQ@runtime}{#1}} +\newcommand\setoption[2]{\setkeys{BCQ@runtime}{#1=#2}} + +% Command-style setters for all layout/runtime options +\newcommand\setpaperwidth[1]{\setoption{paperwidth}{#1}} +\newcommand\setpaperheight[1]{\setoption{paperheight}{#1}} +\newcommand\setcontentwidth[1]{\setoption{contentwidth}{#1}} +\newcommand\setcontentheight[1]{\setoption{contentheight}{#1}} +\newcommand\setfontsize[1]{\setoption{fontsize}{#1}} +\newcommand\setpadding[1]{\setoption{padding}{#1}} +\newcommand\setcutdist[1]{\setoption{cutdist}{#1}} +\newcommand\setcutlen[1]{\setoption{cutlen}{#1}} +\newcommand\settextwidth[1]{\setoption{textwidth}{#1}} +\newcommand\setqrwidth[1]{\setoption{qrwidth}{#1}} +\newcommand\setqreclevel[1]{\setoption{qreclevel}{#1}} +\newcommand\setqrlogoscale[1]{\setoption{qrlogoscale}{#1}} +\newcommand\setqrlogoborder[1]{\setoption{qrlogoborder}{#1}} +\newcommand\setlogoheight[1]{\setoption{logoheight}{#1}} +\newcommand\setbgscale[1]{\setoption{bgscale}{#1}} +\newcommand\setbgopacity[1]{\setoption{bgopacity}{#1}} +\newcommand\setqrbgopacity[1]{\setoption{qrbgopacity}{#1}} +\newcommand\setlang[1]{\setoption{lang}{#1}} +\newcommand\setcardcolor[1]{\setoption{color}{#1}} +\newcommand\setqrcolor[1]{\setoption{qrcolor}{#1}} +\newcommand\setcountryformat[1]{\setoption{countryformat}{#1}} +\newcommand\setlayout[1]{\setoption{layout}{#1}} +\newcommand\setcrlf[1]{\setoption{crlf}{#1}} +\newcommand\setaddress[1]{\setoption{address}{#1}} +\newcommand\sethint[1]{\setoption{hint}{#1}} +\newcommand\seticon[1]{\setoption{icon}{#1}} +\newcommand\setrightalign[1]{\setoption{rightalign}{#1}} +\newcommand\seticonleft[1]{\setoption{iconleft}{#1}} +\newcommand\setfill[1]{\setoption{fill}{#1}} +\newcommand\setqrfirst[1]{\setoption{qrfirst}{#1}} +\newcommand\setheader[1]{\setoption{header}{#1}} +\newcommand\setqr[1]{\setoption{qr}{#1}} +\newcommand\sethttps[1]{\setoption{https}{#1}} +% convenience toggles +\newcommand\noheader{\cardsetup{noheader}} +\newcommand\withheader{\cardsetup{header}} +\newcommand\noqr{\cardsetup{noqr}} +\newcommand\withqr{\cardsetup{qr}} +\newcommand\standardlayout{\cardsetup{layout=standard}} +\newcommand\centeredlayout{\cardsetup{layout=centered}} +\def\BCQ@registeredfields{} +\newcommand\BCQ@registerfieldname[1]{% + \ifx\BCQ@registeredfields\@empty + \xdef\BCQ@registeredfields{#1}% + \else + \xdef\BCQ@registeredfields{\BCQ@registeredfields,#1}% + \fi +} +\newcommand\BCQ@clearfieldinternal[1]{% + \csundef{X#1}% + \csundef{X#1@hide}% +} +\newcommand\clearfield[1]{% + \BCQ@clearfieldinternal{#1}% + \ifstrequal{#1}{company}{% + \csundef{Xcompanylogo}% + \csundef{Xcompanylogoheight}% + \setlength{\BCQ@companybrandingheight}{2em}% + }{}% + \global\let\BCQ@cachedname\@empty +} +\newcommand\clearcard{% + \@for\BCQ@field:=\BCQ@registeredfields\do{% + \expandafter\BCQ@clearfieldinternal\expandafter{\BCQ@field}% + }% + \clearfield{title}% + \csundef{Xlogo}% + \csundef{BCQ@logoheight@local}% + \csundef{Xqrlogo}% + \csundef{BCQ@qrlogoscale@local}% + \csundef{BCQ@qrbgopacity@local}% + \csundef{Xbackground}% + \csundef{BCQ@bgscale@local}% + \csundef{BCQ@bgopacity@local}% + \csundef{Xcompanylogo}% + \csundef{Xcompanylogoheight}% + \setlength{\BCQ@companybrandingheight}{2em}% + \global\let\BCQ@cachedname\@empty +} +% Convenience aliases for multi-page workflows: +% \clear{field} -> \clearfield{field} +% \newcard -> \newpage + \clearcard +\providecommand\clear[1]{\clearfield{#1}} +\providecommand\newcard{\newpage\clearcard} \define@key{BCQ@data}{hide}[true]{% \edef\BCQ@data@hide{#1}% } @@ -128,6 +274,7 @@ \fi } \newcommand\registerData[1]{% + \BCQ@registerfieldname{#1}% \expandafter\newcommand\csname #1\endcsname[2][]{% \BCQ@datareset \edef\BCQ@data@options{##1}% @@ -222,6 +369,9 @@ \setkeys{BCQ@background}{#1} \fi } +\newcommand\centercontent[1]{% + \def\Xcentercontent{#1}% +} \registerData{companylogo} % content (image/object) to display instead of company text (company still in vCard) @@ -362,12 +512,59 @@ #2% \fi\fi\fi\fi\fi } +\newcommand\ifhasaddressvcard[2]{% + \ifcsname Xpobox\endcsname + #1% + \else\ifcsname Xextaddr\endcsname + #1% + \else\ifcsname Xstreet\endcsname + #1% + \else\ifcsname Xcity\endcsname + #1% + \else\ifcsname Xregion\endcsname + #1% + \else\ifcsname Xzip\endcsname + #1% + \else\ifcsname Xcountry\endcsname + #1% + \else + #2% + \fi\fi\fi\fi\fi\fi\fi +} +\newcommand\ifhasaddressvisible[2]{% + \ifvisible{Xpobox}{#1}{% + \ifvisible{Xextaddr}{#1}{% + \ifvisible{Xstreet}{#1}{% + \ifvisible{Xcity}{#1}{% + \ifvisible{Xregion}{#1}{% + \ifvisible{Xzip}{#1}{% + \ifvisible{Xcountry}{#1}{#2}% + }% + }% + }% + }% + }% + }% +} +\newcommand\ifhasfullnamevcard[2]{% + \ifhaspersonalnamevcard{#1}{% + \ifcsname Xtitle\endcsname + #1% + \else\ifcsname Xrole\endcsname + #1% + \else\ifcsname Xcompany\endcsname + #1% + \else + #2% + \fi\fi\fi + }% +} % heightscale - calculate available height for text/QR % Uses actual logo height if logo is taller than default reserved space % This is computed as a length and stored, not a macro \newcommand\computeheightscale{% - \setlength{\BCQ@reservedheight}{\dimexpr\ifhaspersonalname{2em}{0em}+\ifhaspositionblock{\BCQ@companybrandingheight}{0pt}\relax}% + \setlength{\BCQ@reservedheight}{\dimexpr2em+\ifhaspersonalname{\ifhaspositionblock{\BCQ@companybrandingheight}{0pt}}{0pt}\relax}% \ifdim\BCQ@logoheightdimen>\BCQ@reservedheight \setlength{\BCQ@heightscale}{\dimexpr\textheight-\BCQ@logoheightdimen-\ifcsdef{Xpgpfingerprint}{2em}{0em}\relax}% \else @@ -488,12 +685,12 @@ % vcard assembly (version 4.0 retained). CRLF improves iOS import robustness. \newcommand\vcard{BEGIN:VCARD\BCQ@nl VERSION:4.0\BCQ@nl -N:\cond{Xfamilynames};\cond{Xgivennames};\cond{Xadditionalnames};\cond{Xhonoricprefix};\cond{Xhonoricsuffix}\BCQ@nl -FN:\name\BCQ@nl +\ifhaspersonalnamevcard{N:\cond{Xfamilynames};\cond{Xgivennames};\cond{Xadditionalnames};\cond{Xhonoricprefix};\cond{Xhonoricsuffix}\BCQ@nl}{} +\ifhasfullnamevcard{FN:\name\BCQ@nl}{} \ifexists{Xcompany}{ORG:\Xcompany\BCQ@nl} \ifexists{Xtitle}{TITLE:\Xtitle\BCQ@nl} \ifexists{Xrole}{ROLE:\Xrole\BCQ@nl} -\ifexists{printaddress}{ADR\ifexists{Xtype}{;TYPE=\Xtype}:\cond{Xpobox};\cond{Xextaddr};\cond{Xstreet};\cond{Xcity};\cond{Xregion};\cond{Xzip};\cond{Xcountry}\BCQ@nl} +\ifexists{printaddress}{\ifhasaddressvcard{ADR\ifexists{Xtype}{;TYPE=\Xtype}:\cond{Xpobox};\cond{Xextaddr};\cond{Xstreet};\cond{Xcity};\cond{Xregion};\cond{Xzip};\cond{Xcountry}\BCQ@nl}{}} \ifexists{Xphone}{TEL;VALUE=uri;TYPE=\ifexists{Xtype}{\Xtype,}voice,text:tel:\Xphone\BCQ@nl} \ifexists{Xemail}{EMAIL\ifexists{Xtype}{;TYPE=\Xtype}:\Xemail\BCQ@nl} \ifexists{Xjabber}{IMPP;TYPE=XMPP:\Xjabber\BCQ@nl} @@ -580,30 +777,26 @@ END:VCARD\BCQ@nl} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % inserttext - assemble the textbox -\newcommand\inserttext{ +\newcommand\inserttext[1][\textpercents\textwidth]{ %\frame { - \begin{minipage}[c][\heightscale][c]{\textpercents\textwidth} + \begin{minipage}[c][\heightscale][c]{#1} \ifBCQ@rightalign\begin{flushright}\fi \ifexists{printaddress}{ - \ifBCQ@iconleft - \ifBCQ@icon\parbox[c]{1em}{\faMapMarker}\ \ifBCQ@fill\hfill\fi\fi - %\frame{ - %\pbox[t]{\dimexpr\textwidth-2em\relax}{ - \begin{varwidth}{\dimexpr\textwidth-2em\relax} - \ifBCQ@rightalign\enforceright\fi\address - \end{varwidth} - %} - %} - \else - %\pbox[t]{\dimexpr\textwidth-2em\relax}{ - \begin{varwidth}{\dimexpr\textwidth-2em\relax} - \ifBCQ@rightalign\enforceright\fi\address - \end{varwidth} - %} - \ifBCQ@icon\ifBCQ@fill\hfill\fi\ \parbox[c]{1em}{\faMapMarker}\fi - \fi - \vspace{1em} + \ifhasaddressvisible{% + \ifBCQ@iconleft + \ifBCQ@icon\parbox[c]{1em}{\faMapMarker}\ \ifBCQ@fill\hfill\fi\fi + \begin{varwidth}{\dimexpr#1-2em\relax} + \ifBCQ@rightalign\enforceright\fi\address + \end{varwidth} + \else + \begin{varwidth}{\dimexpr#1-2em\relax} + \ifBCQ@rightalign\enforceright\fi\address + \end{varwidth} + \ifBCQ@icon\ifBCQ@fill\hfill\fi\ \parbox[c]{1em}{\faMapMarker}\fi + \fi + \vspace{1em} + }{}% } \insa[tel:]{Xphone}{faMobile}\insa[mailto:]{Xemail}{Email}\insa[xmpp]{Xjabber}{faCommentsO}\insa[matrix.org]{Xmatrixorg}{faCommentsO}\insa[nextcloud-id]{Xcloud}{faCloud}\insa[\protdisplay]{Xhomepage}{faHome}\insa[\protdisplay]{Xwordpress}{faWordpress}\insa[\protdisplay]{Xdrupal}{faDrupal}\insa[\protdisplay]{Xjoomla}{faJoomla}\insa[{\protprefix}\lang.wikipedia.org/wiki/]{Xwikipedia}{faWikipediaW}\insa[\protdisplay]{Xlink}{faLink}\insa[\protdisplay]{Xworld}{faGlobe}\insa[\protdisplay]{Xgit}{faGit}\insa[\protdisplay]{Xgitea}{faGithubAlt}\insa[{\protprefix}github.com/]{Xgithub}{faGithub}\insa[{\protprefix}facebook.com/]{Xfacebook}{faFacebook}\insa[{\protprefix}twitter.com/]{Xtwitter}{faTwitter}\insa[{\protprefix}youtube.com/user/]{Xyoutube}{faYoutube}\insa[{\protprefix}plus.google.com/+]{Xgoogle}{faGooglePlus} @@ -613,6 +806,23 @@ END:VCARD\BCQ@nl} } } +\newcommand\insertcenteredcontent{% + \vspace*{\fill} + \begin{center} + \ifcsdef{Xcentercontent}{% + \Xcentercontent + }{% + {\bfseries\cond{displayname}}% + \ifvisible{Xcompany}{\\\Xcompany}{}% + \ifvisible{Xtitle}{\\\Xtitle}{}% + \ifvisible{Xrole}{\\\Xrole}{}% + \ifvisible{Xhomepage}{\\\protdisplay\Xhomepage}{}% + \ifvisible{Xemail}{\\\Xemail}{}% + }% + \end{center} + \vspace*{\fill} +} + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % insertqrcode - insert the qr-code with optional white background @@ -718,33 +928,47 @@ END:VCARD\BCQ@nl} % drawcardcontent - assemble all blocks (name, text, qr, pgp) \newcommand\drawcardcontent{ \BCQ@setnamecache - \ifBCQ@rightalign\begin{flushright}\fi - \insertname - \noindent\makebox[\linewidth]{\rule{\paperwidth}{0.4pt}} % horizontal line - \vfill - \ifBCQ@qrfirst - \insertqrcode - \hfill - \inserttext - \else - \inserttext - \hfill - \insertqrcode - \fi - \ifexists{Xpgpfingerprint}{ - \vfill - \ifBCQ@iconleft - \faLock\ifBCQ@hint{\tiny\ pgp}\fi\hfill{\small\Xpgpfingerprint} - \else - {\small\Xpgpfingerprint}\hfill\ifBCQ@hint{\tiny{pgp\ }}\fi\faLock + \ifdefstring{\BCQ@layout}{centered}{% + \insertcenteredcontent + }{% + \ifBCQ@rightalign\begin{flushright}\fi + \ifBCQ@header + \insertname + \noindent\makebox[\linewidth]{\rule{\paperwidth}{0.4pt}} % horizontal line \fi - } - \ifBCQ@rightalign\end{flushright}\fi + \vfill + \ifBCQ@qr + \ifBCQ@qrfirst + \insertqrcode + \hfill + \inserttext + \else + \inserttext + \hfill + \insertqrcode + \fi + \else + \inserttext[\textwidth] + \fi + \ifexists{Xpgpfingerprint}{ + \vfill + \ifBCQ@iconleft + \faLock\ifBCQ@hint{\tiny\ pgp}\fi\hfill{\small\Xpgpfingerprint} + \else + {\small\Xpgpfingerprint}\hfill\ifBCQ@hint{\tiny{pgp\ }}\fi\faLock + \fi + } + \ifBCQ@rightalign\end{flushright}\fi + }% } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % drawcard - main card with optional background -\newcommand\drawcard{ +\newcommand\drawcard[1][]{ + \def\BCQ@drawcardopts{#1}% + \ifx\BCQ@drawcardopts\@empty\else + \setkeys{BCQ@runtime}{#1}% + \fi % Use local overrides if specified, otherwise use global options \ifcsdef{BCQ@bgscale@local}{% \edef\BCQ@bgscale@used{\BCQ@bgscale@local}% diff --git a/examples/example.pdf b/examples/example.pdf index 0e21ea53d20b65f7b79e92bcb454a58384dcaf1b..d80669b24319e20b79df571463e35487f6148908 100644 GIT binary patch delta 6658 zcmai3Rale(yF`(eZjkN}cIi&ZrMtTpB$uvFmXhw2?nVRz>6Y&9Zs`yt&VO+({&RKi z=3=hqnP;B&ok_SuOus|?elY?dr=RmkgJ6 z|B%UN!F+G&-?2TsB*(46X(aW$boDm>&~8xY{Y(PGSU%#}=}v2yyYyuu8#76=Waeu( zWb~Er6!+MnGr5&yz|vZI+Lbe*B}ciiiC>)?=ULan@2_rU-uG5P*hYcLeLMcr^opC% z7@_uJG1?&m%Nr?IAn-T>%{-f?Bft$WS{_we%KFou^!#HOZ6CouKg-pfb&?;lk<4o7 z9l>t~)691f>4*z?rocn<%kx4o8SCKhQ{NT7Mn*>yc{ZUd?1w#u2_>2M8w@s(@JLxG z$K>7qI7X^2U)Nf&;<5*Hp5@3+QaXy9@hYoQ(PfM{X2d@dLM5n232!puNwv9&w8GCI9KBPFMUr4U zj7Vt(W~AbL_GG%c>v$|<8NOXk>G$Y~T~bz-yGo!!OEC+|;Y7f?_{V~^oOM%xKrXKs z`CzbX=5SICLue@k{L4Ss>prn-&qU`a@Y1$vkTa?e%lw9tzANNLMFMp-1cdgykBk1W z2{%86`!~s7ACU^Zx7FLzxJJ*E4bxxTM@#9oNBT^c?=}G{Qcxm?;EPD|me7PQNV?ABqV0cXe!Zy#CQy?b_RGv?_bw z{8WAQa`j@2$WSUkHnv`w;rxgQi$@#fp|7|kc1#?PzY?Ca?1 zpVcZf2WZ}kc4z~}yUAz7vGOO=Ac5VCP=79r@HV2feITsZRNjbakDAqt;@A72oDtw) zWvw8qgw5`YZTw@Bq~MsA8o+`b?^Y~K#7K2jtCjO)bu|r6^X<@2FsT|*YlnDV8eZNZ zLLEN@BxaMiQMAVVsx1}bnxjyy!xd<3S7OH}hq&;`O?j15Yd*t&Ph{tAZ_^-^=nn>Z zW)hVp1G{1mUERIDo^c+wFphn`W2303q?(Oc4*z_g*X`>5l zl|}BYrm^Ph^=cX{_)@f}LaMC`JqKCi+Max0^V`?v`;h`R z8Qp1B=Y-6?$vJZ#h%%q*WrM!!&Es!kTacF{(7*$!4l%WjNV*rG$q>-bd~cIe6K(~? zEf%(zUmN4}f@ou4*euhADc|MvnL^ z{hkiJ>-J|@%6G9}?w5YSOxLuRTmjt;2PR>^6)fGhsb%9(h`=(P@i7X~>;sHPzGYTN za$2Fs`>Vybb^pdzBnOwe?)2X0hUo*;*2A{Cyhj}DC1l~^`o8fU6tx0+V+XrJ5GqHb92ZFE{SjV~l#y{hAfS|8Ch?yWV z0Z2g0-@2rk2ra3W=c|cP7$0i-gZ$+9ZO*ysyJJ=FisIdSb4$X{Srp{96IS7_A?Na$qn_uEeYfT3$=1#7;X1M3=)-+4)0@~UG8d**n>$w+p zYlk3^@tlh6w4~$m>_)d@zGcRg+8C7)RbYfo-tg?`hN@!5v7&AWX^Bl|ugJlc$@U4m z-&Dd*lRFVMJ#*DK($ZYB&RYRU>%fp$nE zm209yZEEBVCLJpmyg8m}Q2vVECvwn=z$ddgamwnwPgpe5L?W6MZN?`?eEw|}e?S2N zjj>(<6^+51K5LW)HY8HOgxe=Ut3aSHVZsQePi3c<#gp4s5MKJ^fBF?}y02>ET4!Ap zwW>)%_?sYiC8lY`qG`nhn(NrPL^Db=kuP&p5v^szYO497olZ@UN-7m4ps0j{t$+@V z)S}H!sS#WjjCF~It?qh{A1RcY0i_0|lD09h=xavXW25oM6R?tv^9#G)20>;R$6zYn zzK|Ae1^dDxR}?df1%nPULauKf9_yGMOIeoz3i0ki{tZO^7RSiS{TDVz0lKewD}&*{ zAL&1e^<4{p6jS<)$ z*Nmd)zbq7$gH%E)AY%Rp08Ywi?f?qZ?q&aJyKTD-ep(fs+)om!9)(|wkZL~=co|h| zu%g^pvRv_e-r;q@Nf-{fOF3QnnM;|xNlL#~rVV4$?N-lW{YlW^cvyn>F6dfj5_;JF zRj2c+a_?Y#QVcEU({$KGnRHpc_lxh4?&oR&-DR0#!)&&<@O|3{z`-A0gMqlFkb|GA zDkD4=rDaM9bRox;o3%zeqg@b@SAS^kF61;z;*}93^aXh%z^QJOyhG~Y%JD%)5x#dz zo6Pi?8SdRE1Bi*Oi$6Mw|8jZRGcE#{Z#JvjgT*r0TkK(HZ#6bUt`na<@yjR!*3R__=O4qSMwk^KQ_4 z(0d$WPvilsyITD2a&acuE(=D5%5s$_44;w3A6&~Q!&Mv|aDD@gBcJ%rTz8(@f}V4H zhW6v=o}N?5Y?MrweNP6;J?oJNwxEJ~A(Ks#WJNfN&bA($4(RQ{8pKy6YMS(Q^)}%l z1JR`dVV(Rcf7y5IQr7J%KM=CX>i!@hKLngL4% zbS!cjDujGfYz>~T2?jasW`F0ol)}J&y%^4j1Y8Hb?U)T8Bo0HE8E#OsN%~=t;p|IU zxHdq&7Y!tkgKl13@&*cWC=T9Vp&6Ji#~H zS1{S5AQF9Uhg=jH;p0|X3zfbscFxFH{|~^OeeR6d!94o+!siA*zz{QBtA`R48Xd7d z<61|Sy;Qo%F0q|`l%D4ULifzSLs_jHpg)sIMDR0v3Rvu4bD`X{7D*n{Nw20&?#?4c zF=u!hW3O1;GmY&C_fxYRARB}`bvQ2d!#M}-P!Zm8N;f>vkno64O=zyfOvi1vWdcY4 z7~Obe1jv{yz#Zs?u6P7ciM;l3&N;|rgfP5|YNxNrXve|)r_)@$iVkaVxGsioC3wT8 z_BQ_lSF{1@j0^mD$-2Ol{q;iMENQV7(Swa~AIq_7sAll}`C7E}+mY9Fh`QJSLCxV? z;VzlxwfN&g_2;%n=`+F61GGKAO~9HID@VGQs`}tMqyqE=<4UaL zk4EyaH`3RS{oF>A22L09bnY@#rPUdq;#`rUwdWYsqp2$vRE_vJ>xLf)cuKxa_{G_l;l@g@SezwIlW=%SF2i6{xTxNb|O9 zggpAp_iH|5Q{`MqsE>UE%Z3T9P0n{v*7-{IvNhQ;IaXCb%b;b=^3Idwp~Ok#iR45& zV}%{Fe--!ND)g(=VX|wy7#Ot(JCz36n$6R@cj5RSQ7T@*OOkSy9xf?|*ctbjYMLl2 z-!GWcM}Ka`VpS#=ZC_8G05tRAy{B0saU7${e2nB6z2)M!wWzh=c@lD%FqHFo*UqD! zV9|D|qE`r9?=z)N6*x2FZS*pCZ+cm#{eFwJlQaGph946#&<3j52@DctHA{UY`@=45 z%3@4x`2!P)Q_Vde*Z5nPzJ*W{!g`>DO9ffUCOMZU#yKVr@c4xrSYEoQ&PhZMe1~+B zF!R*wqzC(_$I)ymbw9Hm8rhzGOs-pkAz+b@t4&6pHNf`6Qz7@`&&Gf@BZcbm{VffO z*XFL&jbV0E;x1Q`xX0;VAKVp<6pgx#gtEsMMGro$Ml=tsV%!ipeh*T?Qzzu63NJsH z>9>ZkGKkj&8tH?x_`dKq|JS}3qk zOjDev9(R6^L%6+%4!;{`5l|fOw-(&ikabLNEzsIeoR~$oWO@v-jy#Z=7=gO&HD2hy z;71`b0S;A;f})OvKIv>W!k|AF~7TYn`tqeMyC%#Vd3-Y)i61_3jIN9FYFC-mJ}O%~u3A zo-8MHYbUG!?GOHgoGt9p!GhEvYG;e2&zm4X-60r+^Lyi&;C>MtCaWJ#4WC03bEl~P zc&eT>gT{>pw!T@J$f}8^q~A(w{deGYaGA8) z`lHxzT{o4Jdrtm5AB`I5DR3?x^;<*X+wDcAwRsNfnD5u?VMKibH_Bsb&3Wy^~O&n0=)o4JFHm1&a~W)vqz(ji{I`PF}#Y4 z;d!%PG5)gNl0qc>@Sx|u;~iu2bXvp2L-dJ$xZt(m4B~{|L~{`ZhFRKa&AKgQOKv-6 z8bH%zPKf_Jr>`V+Z@~bJdg{!Q%3C>tn(G5kSgY5XA3yF};+wRB#P1CWWa^*PMCDZp zZ_EnN}Vtr&*!0spHiybh!)W_3>iMyV2*6CGRpHf)#=#3lyR1Y18jy=|z!!Fbr5T zw6xX`3lt?7Tz>#{LJZ#w>LVm{69-+?5WC!_i=uUPcbOC?wax9^SP5n(SQC{Gr9`#nv-y;|ZM@A=x7yheF4# zrqcC6RV#a{3>M&l_OZf?M&3EA@I^ZL$9e7mR2{LgX$HuQqVn6PgGuG}ypiQwILEUY zsm!lMt8J(Nal_^<*Vg7h&b43^*!iE#{4&!{labMHbO zj*aS)Nt#)u?AICs%@m~c;pL09dXCKepmL?FcSImtjLEQHD`}o}2BRj|vS{rlBsWnl zm;5F!HjX&oabT8Ywk*Uemwpk;OC5pidWd{^WRBfPLyBPXIpeo+u?78eW52W;kw~L1 zt44L1vBq|4pVY89D83Eft_PQ2LUsIdZO7`xsR+ayY#~l6yOvzS;0N!iEs_myaihZb2Yfr{eP=3ZM-9#Few6mi-sjuW5<>rgHRaWDX zp>DcST-N~z{5g9Uc;wNCi?VhC3PK#!_`nNswMr$M!Z6+&;hHCGv#M?}A|{J0-7lTh zcNAGQ0#$;m2c*&;_KT|Bk%Ed7N;am8$b@ym#yt{c*Zg_;?vrywxB~Bj>5iQ4?iDHK ze3mS7Z;M|>udI#P9n2V?>CPw>ZenqvGCt*d~MdDdT$s9n!G3sb{*w_m;OwSPPd zna1kHaG4y`h#aP{mzK2;(CYTil*Uftxhaucxaggga{Os|qT;IPtaI@L=r0 z_-#V1cZh_K>uo6Q+)VPW3WDJW1;iTxKu&3Qc0nS zko#k03xAX%wZeG;=0|IJCjBfXC|`eARg(6RXJ7^}tT9QJvU+?doAMI{vu2!Q-T1@J zZSK^Z8-ewlIe#wG{MU|}ZLW`M>7&BtY&SUx!eaJvt|c=^RkG%4v*i|=T$cs$3E&$b zf0qVR-E6u!N%oo&@Ao;qWZfqp8i(pZbo&b`_haUw?E$K(m=*A^J zQgb2|HaATiuwicH+or5z{c_&5?XlvO8x_rznzCuHMaz$+?4f4SHnfFhC0HKiasd(| zd73QXGCeQj{FS0L#FS%F-Sk-<_T9tN1b3RK1wqc91GPdi5rJ}0nD!4pX43V z5h@!@nq1w~M{j#1eoyt@)MmW>zEG03V%IjR8vcA;miJGYQ|>n-rCPM-B{j~^Z>Xr0 zA#n*utICd5+ze0QlIHyR`aSi42)EnJL3v5&%3h_~tLNcQ5&4%gk-VGp zjuZQtmWzXOPr2ZM<+)1qBsW3;B;A1dOX214=Y&G7njdmkIuj#qbiI3KO8dR9{>OV delta 6631 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 delta 48463 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]fia_rz&5w2G8|l*bMF6 zf}2$rou;rTgP?3u41sMY49?bxRdLefgAHxjOZTq_CIXoEpo`g+LMu0$4Zd?^A#i|JtnUYCd`v04#8J{mMo-oB6iQ$!9Ugnb&EBi@Bmv-*RN*3OQKFL)eaafey_d++iWO>cHA8Cn;pB{vo*DJ~hvmQCsJxRyQjoH}WBsNrI-o1N~f z4!r^yT9T@Fxzl&ylU`}&m{c`+s|TYYpf9ZGycdOh==a#yv08mC)upeU1CEnpovOOz zVh3Imbc0^?on+B4nc}>oxG-?;$ z=S-=|GmOv^QeC?7d%*FF)hAtwy8A@oLgLQioHnK5!IrFnO@2YXPME1h?&FSn5=bE0 z)*Xm-0sWeZr{Utdt;_fCf2##^bwL8s+>-C#10g3QAj1r3juU@r_ji;X8sA#sKKkI# z5$12D!X)}zZBGrFqett0;50H`#zo;s!g|58Roaowp5yffk zH!d(RAhN_ppoJzA;^j{JySbLq8`{NC$my^-BI19%RDi4Mu%W+KC=eSek|?}SeXF9o z{BNYULG!1(+EKg}DA8Vb2C#t3HO0d1Rvz$JCskc++aFQnUSk>1SN5?(%mttilHrQciR!D!u}gF z;qp)HL1wt)8ZTKb%@?>0pABs-1}nTP&@RvCp44gk!J${Ubmd0Cib48vk)s5J-Cp?l z5?bvQqN+&+P!(av2dxRZ9pNq4|Kfm}o;eTn^}-7Jub>cH(Zi z*Ozka_Js#>dPWGXsQ>T+@xPGzCJU~jdh8T} zyUaAcp5a%P7oqW+r|3;*U4trm)`YcIFOG}hUIRDMQ#vM$xRJVlY=pHuhPa7?@{p^{ zM<%U*$-}9!Gyg(t?#tp2+_^JF|1!zlnzNG18R4p*`fE0U@|MiKK`hwdLf6#7<~wn) zUwvDBdv$Vy-b|X|+8k4vlihDh!HeO~^yet*b{c zJ{PlRb@DDMSp49-*bWff(>zk*U$0RMLxevw`BVSf$K=#fX-nn&Qj|yt(>LD_SFdo+g;!#=bFLs*$eW6 zkDntF6_T$ZMk6vF8uyqMLx-h0C*cU3mN=T@O|K1#%+_fc_pW>Eb_&s^a_HVp26>>d zVd@h~k>O+iUV2Wy(O2WW|FpHP5M7mK@h2jwHRlT#{;hqS0L3L+A}JCJUPvf@Cc3jl z3O>`jVn?w%jT304mtEj88r-0VU@cX z{`HU7UxI3hFKL0j-+ix|z(13l1hFDtiHT>@dDBo=6n{5x7A9coAQ^MUpAxG5K=QH{rG z`-14FQf2N?JsM)nbfH!(ec!#&iQdI!Q#*T-nA2aYm-?QUT^2M7*Xw}`OyT3{=cBTx2JL2k=`K2b z3E@q*LetZ}fpnTh7ZCtOMJPM-ayF38otQr}C!r%mQ%Q()z&sr%%mRfw^^u9GQC$dW z2#a!$lX`>JmZ0NUzyR*H8)GNG{w|0| zvVfT(l0GV9v24zi8zt8Mdp$SDOx|d1VZrBhmcxFh$7e3~w^+X2+h%@Z^MruGW^d<` z;NJ<=WUZ@=H>%N@dpZdgJ)y@HLfmHq1Dd9|2AnAA83)5IC@%(vOmFiWOzJx})TB}W znmWneaQtJcM>M9owBzt@@~vacn-z_Ld;V;TZ1nxUhk3HuCqr@~-6M4)VNNJ2)0{nZ zu=P4!qAqo^vMBU=V}Z!VrO)#NhE%1@`O%Nlf2Me6J8a&V}`kwF;P=8*kJe zlnSf%XUJ6~7Nt%y3qN!hx8HR&tos<;w3FYYeyXv+cwJaxZ>mSA`jYI9cAN@~u77dh zBw4_ue!j6FBS|o2CsTOSz~Ab4f){D_^Y1}a^<>lFX40pLwpJDT;HH`9eOI{T%FZ5N zs+07?`fi=9o)oyiYZ5B}%mnjfH9jL|nfubguqAdd&z!?GEA5%SSOfB8$nicRY>6<= zZqoVxlRXdPT(NoV^|T^bW_ripb-^-@dSg!2NN{tF!qe{ga%_OxLnp`ZX|?GdvI-y^ zP2Hxe$&P?AQqRj>4*th>UZ=n1^jt%8H(x3^1V8*J?91gH)`O?tJX@%0zJvPQMS&4&DYse3OisjvuCn>t9tOxWpQFw-w zTggGt;*yuB7a~N5D=X}UwPUDmqMmDl??c!z+-77#g9;)7NTSrHQ()@1^Rvj_QDAsAWlHfn zw;($0zya`nIX8kPx0lAfM}~L%OP6pev{*$8zb~_L3LAjCze=B}-?GqH@W; zY(lgnk#seYA`4i{>VjTmHNQkA^nwfP5e}+2k2V)o7qX%MX7yo10c?(o2r9o>NVgw< z-G_WQ@2h?LQ=*F)X`i{T3E}qj2|ondQ=+6VrbcWl>3Ty=Nc1jfL5=syRn=SiVOPb{ zV#@#icvRl!c)k@VWXjirQApVq1ZE@d^izF82h5oZ*DD7uZe0yHI??CqvXmVk5QX1) zM1+rW_G!kNRU6r{=kPNxxgC!Dl4nG*k{5*+UaCaluQZ2ePONTDWEfPqh|18m)ys$j@b;U##HNOzkf9Z;(>p*|iy z1vyG0>%WO@c1{Vc(z)Xi>*l)0BKP!#2S6yuo1zgN=l%EMac1I9P_lrB^VA0FoI>h; z#OGy+AgB#pMJ1=k8GmopLt4C#D8T9=(1Zm|cWZmApj&#hnQJwHQBiWg* zWt6_36KZG^kfJn31c6u=Ax*q0w?@*@b%H%tU#hPs^&g(!ho*T2{iNtbbNtp?SzY`f z$G$(S<-v=^t?*j>)oA=S`)q#7gBN$#l3pB?<6BAB$${`x7ws(gDLK^guq)NY zoH>jw%BLb)&ww|`NA2>aPoziMZ(=X=v^#u|WbSoy1p$!SvatjNK(9gsagKkMF*BsR zNr=K*A5rC_q&ywmGbdpHUN(~|OrVupcs{QEnq`gDaKqy0Ox?``XKJrr^Z1^*bo(k8 zxlj`7o`_W!pC8si_G@VuWO(G4Bq>>@Z^zmbcPx+no17XA?xUTZ{(153y9Ea@r0>5H zfkqsK=li*E3IRrfOTz;mk+!K^6*@OC1Dc#XBYO#9z(xTe>d8S|;NekpI|9rB-TV|Y zcL_~k+3pum-{LXPOEgD{A3Jhx5X=W8lGhiYu(FC09fL+wGtMHEIIl_=eQfg*`6KAB z)4yL|IO#uWPCQBfJ{4Lid}IrJ<>jFe!WjYF$;I11l?xaK;REgKSp+*_na z5Xcn*&`4qsmu9kh>Mas}v-ZFSk?H2|G0R$!Bt=^-3#_Ey%Q+H_|6=!ypK{AhSfV^_ ze>&$<`tzY&ry!Z{dFDI*xnsn~AC1C~AI4wDRKyJmG1RW`Cxn#$PhsC3)zlMht@Pfz z6afY4T{@920-=d?>AiP>z@-Eb5NS%2j(|uJ=^(vI?;u5D6zNFsfxMgFTkCy)ey~3l=ao016CGAe17b6a|4|evp{mRA&>$a7I0c0;eA{G5Gp<>do+hnL8V5AS zhQ-8_52*vz@iVWWzGV0SI4#7~BTCcraomTJrfrJzC_DOuGxWNfPdvGHFMS(EBpP+EKjfK>7Hm~i`A>EZ>UL~InqQ0Y7kWBIQHh;8d*fCQWgjOsWT8xxU%ws@R`8NWA(FnzdH zlzsTz^z?)X5k*BWsXA0u+rc3IbkpNMW))K>hS-vR(fM;e!!(b5QRa4r>$gTUK#6e_ zm9UF+EdTHW0o-j&K6eYF0JSpO@ydb2%N~TFKX4rvE)(un5{Uz#_>H1q`TnjQF~&{u z@v=?x6xTR)tasv|hM1nPW28rQq!HL$&;Ba{FM$A@FW06Ee6g0Q!(VNK zBnaG&Fz+j7Ratk4iBGo5-6QFict%6Dls3-6lrw9bf)S*&&QPBw}!G-PCzr` zV|ewvDDVhff+Uw{PsW)nZSdE9DZrAphV(4I$ih)6chG+yEe8F4L)aU9SIh=na%ed| z4(RB73tVlFjt1Wm`!d!PpB3cZVK`bU^uh7UXJarnvPme8E!xA93PSX=<3SirYv>RO z*M)3}2{R9h38xMuV=j^fZXl4d<(vTXZYCwgvBMViFq?rA zizcE)XCx*XyzRoEqD;e!7XlI`H}G_sAuU%7b^(jwuRuX>Srj&ynBI`Kl8*o11JvPp zVL7nxM?!+iOsPgBq0#up3{mTm_1l1E1U1jmlFz)cW^a-22UYJ}l96USbN73j^gk=cc$WBaqE1fQJ8v9Vm3}^= zujen{fqP!+1%mueu|Xlo^vX$-tx9{QF<=&YFATuh$bHt^1TZ*N$L<#_V z2=H|tfefen*v|u&z9Yt542EOYSOg2}6YubIOr1*Qy2043u8%S8VkuaiY*D7nYEcFJ zKe@!j?CUm!reg5vcM?S5=d8>R4zV8{Y%a(&#`-{DB?GQMm8l*QUR<>SU$o50kp@X1 z9ri7faj+xutwr}6TTF(&pXsZp-UJoF_}YC;cr%<5hCJk$_z23RXlo3!ihD&JpW&sS?ji@ zO8jh0;J*v#01hMQFU3{RRz2M&KZZe%yEzcR3%CVoZMb7Sh|${480psf!B2}nfF;D| z8i5}`I<``P`v+~j0>uCXNdQf>r@N>o(aZUdb#WkTAvdUvA;XubI{MWdFWz!_+7-_nr-^V|pnr087XTHoKscK5aY@@R1q8 zAi#P-SVDft>dsDS$D#vkkG!Yl)cQtV(-)^>UtnU{sQ$8i<8LG#Ws4QW3V{l}ESNibwxF1oXCj-vFV=Hk0JBP*{@rHRvr9cq z1LY0foikDmH3wDp+lEN9`dN&FZ^`jsRyw1oM}aBeRD;ogvVJ)mv22ynOi&k}C%Z;Kvr}T9q0dDBFJkkulBK9)0PUj~G?Iu8I7u4*y%eMr` zt%#k`x`P?ErJ!H=|K<8z^5`<_&O>IG#ZHXtP_ui13IdZSO+h~dX)uXu0iz=jql_#~ zN2EsRhG~P)M;d7s<;Q_B+*8eqd8YrZ4AD_{G^h!1!CVuA)h_7BkMR!92(IbgfiOQz zj{Q{-9Ds&Ig2`B$0Ks9+t@$5k*$zti6FG1^<8&Pf5LDJ=$>)L65e~rzWI?(87*sMS z2j=-}QtlAnUQj8P!q}l~=t$k73Nn*Zn9L`}i@D@#xR|-~37nH7R8%OW;LQ#1F-3M> zOTnM#ftnZ}sUbmlyKLbBtIm!U9+;32hL0K7ds1xyh@?92Q54uliWm`5R&fH_(@_~y zpN;E0U`fu7MatgySLXzH!7S^BfegR-VfcB~#m6=U?5H)%gJJdDPf=ie)0zbDP7zO` zXj4|!xsC<_R-G^$Y)$8Z=~z#%>{S3cx$LVb-+@QU4)coI*&~IH%Xw)$m1_dtrE=>Bt4ON_C(B0suI27anFdopd!CYE6 zYxpMwB0#13eNNCagPV~Vhvi6I&%bp%ccdC7H_Z>|6mqdJmtTgyBU&d^07jg1#e|ZL zFt8*>V3l!OfOh*2+n37XgZ)U#i}s9|;Q>kbRL@Owtm2*%$W$(5^d-W|V-`N*SpkvJQ zRub^P9HYN@l#gINN1(y&VafpX@s&CRxI+DvwCoH;i=g2`8xZ7SFAR;k(bnq(EOeFt z)aB8r;I6yK`7r7hoAJtYi(xS?Cv5StuBOCV11TkjV&^5TQP+9 z#D<|(PwB$YE*J3QyrUInXKav1;yP+j6zQb*@v1E1o%M@+hSucITAD@@5>3*T=`tA< zo-nzC}K*GWyUk5yPF zBSo$5IOq=kV8r)|^P7lLNhb5@4$!?1)qGOE`3Rqqsw@1o3yVyI-_}MgGx@8J3zy%~hUf-=Q7cy+G}f=x>Aj~n_Dy1yX}_9!4m>zR+jd_9B`Bms}$Okm*Pw&+l#UL-@JkECi zOW9#@)U_RbMqH!6r)TVm$=PsM!yg34#n^Mlh@xZZ$Asmw0m}i)rl0lLKUzT(AEJ_+ zPDU>Qp3Lau1Mvi6NgadS*BKI#*V3kue}#UDPWhZi$zoG@T1j}WEv4xZeU@4fBiESz zL?ZC-vel;2hQAY{+@?rraZj^>C{?O|s=fByBd1+B;g``yfD7%B6)g{!r4QZgr0q_P zzj(`;_!AVaVbzH>?d|J!V0~V0UwL)aHWum+1T7&NnLTzY)D4qaDbG!L60?&=XnF64pGAu3}E4KK9;4pCL*<*PMPmol9;-8?rr5F-?(eQOr%z1ALvG57v8n z9JlQh>LudoY#3q_yeVTwj1wAY1QVM3X$Gd0UP8%I1*t}m&l^vxB(KldA1+yo({{7z z-A?-Sd61M%kj7kXtkkbDGBvaB`9Ou z^`M}#{G9XOMks}*H`x>+qBh!=aAtJvKXSFw1F;MtRS^xK+XXI6)3(94>OG<_{;!dn z(3rlvx3Od!zi-VMTY^wTA9bDmC}cAVXWiZ*Q%iro$&`+ciL7?y3?hbcYHE@}^)YY|?{_-@x}m5F1L zK@~oB5cCd^`eiKO%p=->T{}s~`W*Q{rbJ!J-=11>%w~@q`bqvH{Hv4txmC~890B^x zX4aIot;ZxsF89=QM}Ykdi#hV&AHH>sJ6V;TMC1AiaI{Xp{w#VwyF;~1nOaVnG>NY7 z_ewf{04nmPRFi5Z^KGGD3}_9a3i(5VaVkGBwVOW8t=XWHMP8sjq$*0@}! zYb8dExEx9!I;ZoGJbOBFo96i4py<`eOXNk2(4l0$hSC^^M!k(-94Fy}A^vDPuNJ## z4#XP@VjB%LiibgI#wks&B^Wi-DC63+SJ@xii8HE$r;?oy;fSXENYUs^(c*&kMK@EE z|JG=WgAhItdrFa|(eqR)?taRHc$ij^2FX;4aj7e-w+JVZ%}CeY8ilmtcq+7?L^ZW& zZa1_}w{FkjOH3kj6utRjd_GTwJRvKi-JXS4iDP#BiwP(Bi%cZ0)_^-|_qG-!cg zx*S!wDiF~hm`;~&z+cCIZt{|)nnA%LY$aUmLC`VZYIBw+Ya0h+yxoUx4n>~j9{y&I zsl1}R)aumgVUN%xsl?529zn^J2CNaQOw?znW@l6&qIlljpx&mDAyt4bQ$#22BdWxI>9taxT2cW(@&tM1%Ym$ogoDw=0dNU3#RFP)t*favgOnQ|@>qIs(p z4J@8pJU^YIZGX67b-HJiU0iGq#cfhm54YW?*mkM4h09Ad%Xe#x!Z+9Io4@>{wXB{u+PU{kXzI8=Y-|XYmVU3&M-JH%ZiesPvLUxC zhU3+s9Ol<$u+<%HT;;lEPM`5z?B<4kV#R2L$+td>A!goX+s9)(sY3opxn~Pdq1M<@J+raVbjV^nGM>ji!Nt=GXjH{H3Zqtc? zbW!%)>GxEh!R1(e?7Sg!mF?7VMrQ=cR@A1QEN!cjNb?c)7!TRD`R4mJpeUoI!i$4H zHV&1$?&c}+^p$!Mnk7Kv8+r+PV`AW>wj@!j)b|Ci&PtLzEzC3eeD;|#yt~vSSa5WH z%-BXpmE;5~g|smFUKdsoYr&r8_*Ngil1ddq5kKBxRzRL#ieIWXs|a`b{kVI#dw1YW z_Zx*$3)-rN(P56u=*nbaVAY;z+z9D)iO(>ujEdrs(z*HV{v$CPagfhz-dAbdr_A#v zgzQ@uV{d-VFvDo-%=H_r-RKAf=5Vcx;v~}k@r93N2P7`nHFTl{35BHj=s4DJBdLSg zWcwt?L)skskB30&OM(MtORs~+p7kl}y=(`>v7A9|Zv~j^g{QR9z?94v@@}h9ph~DkDAp=g<)6Kt8#d--#TUNbSh->w; zVqABjrGh4+g`sC#q1*52C}}9)UADTyIiUjG0^O3+c{7O3#O?I6^fS(L9zISA(S7y$ z1j@aabJSX-9YUO!Dp-XSmjw?~0y3$kUgMZ{E>0Cu76rbnBgC~A}9{oHz zK>O2Gh;B(7cDA=PjhaRk*^8_C<>lFYF@2WS^pGC>-_zu!< z6|Dm;W7U>tGFWfo^NH0Sg{1#8ZFfA)n;3Q~c~$mpyYLxLC$J(nTO*6-p3mfFjh}E` z@z;<9w=l|t+4%668^c{_6lcsYU1d7Q!9RAzl-wg~WU)86Vj6cmd&BRj)=Ege9mM_d znz%3}Lf5W--7DN)Ip#MV&!dj@_-s~$q2AXf8_!-zx9ZiA4LwQ;`y7|fHVvYWY+th4 z^-pNF$@7*6*EfNvMjXjgym~sXqMvfi2_I!~Xtph#kEd*_iX0*4R92t&1x~Cwa#9zD zDW|oqtu=PXz35ar37y{F-8?2yy?7d$mA80lQT~IQe>g!%IORREsf(%7%rip&=QADp z&EuF_eV+U@hpEgQ9E(Un$m?L;q~8Um7FE?e8=~#%6Z6jjON#a@QnPwvp^p}sW`Bks zv_}m-q=3qYT^_x|CVIs0HR(hrhZnI3pBz~Wno7=jWzi-Wh&Lzt&5D7yOXrljz3m*9 z^-A;gIFaQkr79oO{Gl`ny?s?4K7HW*%}}R+7uM8^tjq3swnDORTnm>dKa>PukmS=*;S!&IH&Pw z1a1-{iWS-uK!(ezd0+s2YYi}yL11G}KYE5AQId@M0!B<9a;SJ#rqVMJFCCRNVsw$`Ek zahi_kFKvi%f0C7oH<@l!T|^|mBHK)ZP4>g(j*gkdpZ;dcQu4c^q>u=UcbWCqb|!_^NAqwjI5XW72gIhcXy;iOfK2zY3vq6@*ny+?0)6V^-`7VC+b9~ z1}Qp;m>cKU4uFMg%i4S8+W1j*!$eHb7F#DO5EvJl;F&15M2xo<3}#tA^KGR4$G_6@ zHF7>~@($8SBuBfR((6^OU&do*NWjaSC83>$A6#0QEKVEgt4F%H5ZA-f@a$vL8biYo zmegslju-Qq!mFP)!Zy0~^RUwgq`AD>DmUuovhRgXnxBa@9OM`1cZ>vU3W?0(2_`)MV+l! z=<0h%4kx+vK(Q+o#H2ppvbASwhlu#`y1w2Z-@;z%sjT%<-p}Psao%@r)`UjtH{>G$ z4$&E5`XYY7kg#cK!l^n<_3=i4@3+98A(E6>^d}ibsWtT}z-x}kZN=cv1^5Z@NP;81 z8Z67+Pl#LyTdVKcY{YQ{VjngkZAlhe`J&G|r|$S^prd+-vhMTVXHMcNXjci|6uo{% zj|8NkXn?7tLS5bahx-dR%|z_go*{XT!$%~t+C}XE7k}E{@5A1(iQ%ilf=B&2$p*<> zpSgHMA1QkY(`q}*h+m?@$Vpx^F~VVr?~79T2iV(6+&oUMe`Tg}#oaB6{L*h5aAB(L z+4?})I4<>7J6`F?-G|jdPf|G#XA2&vD<)|$kx&^vOK5$^CCsrU^4)Awf9PY;HYyodBdb0j}qA3O1adG@z3YX>-&?S$=qE5uLUOl+H>WTrB)F&dE<#tBI& z549^r{Y}`cSna>x9+Y=QZZO;dFqNs2&aOgT0m0B+lh>of5k&Y5i{_o0nF3#8I=I@V zIw(tRQHFFM7t&2a1H5r(f;dNcU)^1lI{Az5AR*^!pCEWwTFBvtJ5$dIx#gfzro8>N zMPwBdd#kCIA)OVkYw!7Zi&G3}J<>&cR0W z{J|#b5TYK?e?iup3@*zqFJ}% z@r#-mJsH`k3XTN4Ql@UhCVb_($^r;Ecc}p|zM})c0?x49!*2Y}f2!EELk3AcH6)_{ zP0y!Qd3J8=E3`}`46*RW8rsLxw63$qjh=o0j&plFa~qw!-^sdj9o)%|?+NB5YBI=u z>^Wpw@vzC|l=<_Nx%<)5yTzi{T5+^C?QGRPQDj=1me$kp@x@RTQ)CS@q2iyz;=QY^ z<@WYHvpp(Wx=#YgP^t{hSies)8nlAiIq;1|9~G1L&l(@l<&>FCTYT7};i{}H>h8!c z1TKebRo@Fu(q(*psG|AZ2y3TK!>TXgJ58cJDtYbj1~$|op*!-I%m|S^wggQrvFPiZ z3RT6cS$Vh@&_*rz(&x6;gv~j3700o66K*Iq!qqHy#B$_!EM+PhcH%U&IFnTNvubVO zD${@P=VIa44OhNzcS}a*ZZG=36CSi#g#v;~zhCVL)y{v5)JFd|#ACE{7ST%V|hM$`QYqxS=JMPE~_WaQlL zvEsTLS(w40_xI!+6=FVNDGG5ZR)p&#-(WGmX^_=7eKWWWo<`PdM&=EUXRtL*z9Q$7WqXjS4^a0kB!PCKW z`h95YddRCf2Do!jaNd~Bj>^J2y_7ZM=Gmw2ol;&tO>Z0CcS;P|nOY-pCIvZd($A!l z$%e{OuO|nww2A^`vKR-fb+ax>k3)gYu^x>$dHN4Eo}~HI8BpAFtblC}Hr4QOqQbc! zg6FAO-K-Y)N?&cUU7ygecHdDF7LLZz|6UOO*;x`svaufbBuQy$y?thXI+Jcq&?M^Y z;7D^HzIH~w%YXbwWs=smeLE1pf(m=L>^#d|IqhR*ykRkmV_+#^e*6y_00Id!O&pQ3Mcd{n~@OZy=w3|J-X-(O8;^^;WX|*qTr(WrI$;wx9LHpw6 zX|;!f>1^Avw zd04pS1$>sRM*#Jf^nN76hc293IOC{0=l62jF08OFsuv*wNWJv@*rpJ8)30E1FJ?FE z-OlTkeSfH6?{BVqmFr1Q{PKu75Ko%1lhHKtzxT7#Wlv~c9+aI>(*wlc_>*HppR?Em zdNXp>wLf6#4`00{eO9c8&e*jU;a8Fr6PFZruojjUw-=R?7M7NjdTi|g{@L3I3rk8l zNGZtu|5{|2+K8wDk_rk$|5er8iC!%UjCPYo>QdlLGOAG0D)uX^kiCwhv+9X{_4Q70 z0k#s)<6mP;n`&!1XGfxoS^Rgj3~=m>M^pxU*g3O?qDKGfrQ`TKVXSxD57H3dzw}}3 z3@bDrdiUa{=QiLpK>1r>UQ_+xua;z4)1NV+H-wLin?iz!QyrIFZ!huLRw=VGcx**@ F{|DmRXK(-j diff --git a/examples/photo-example.pdf b/examples/photo-example.pdf index 88e3fb8651b00bb2599d1466d59789b50b903afc..1430b8f33b16125f3aae9fbc84b222c72319e833 100644 GIT binary patch delta 5769 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 HMNdWw|J5S^ delta 5770 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 delta 6204 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%0A<931uQYqJ*t!EM*~AhpK^* zSd}B{6QT88&}Vc0h$#?G3AB*qw<7xdY@c_I`g#R*tBMbpq5;p&i>5J1>0m0&7dMCN zuU-n3-`cAn)m>p(Y*9WUpUfsK)XbLYWEi+FmU3LOq}GOqtWZ-#(LVq)Zu)pFpeSz8 zFlSjboBLDWfrF!Ake7dA)DUKGPDb7ZpN@OMo}e+E6!-)osgTWB4z06b?-JN}89hjA zDxD<^-S4L7jTdhs&^eL3@w?T`&N7Vx0+rTQKKFKbjA!_bhGoupx|Rpy6?6GiDaVo) zrDhU}rP@S}e1mCA7t+YvniP&EC=y*GLgT=(Md%qp;XAJ17%OZw2~c^Od5nS~AXfH> zFQqg1PQ8iWVpB#xL(!$~kT`$8i7Lr{SVkh})-T}t$lyjASYhH>>7+QU9OcyP{um;C z6dS@OLnzQ9S0{1swU1`&Cv9noCBcR@E#&JTRPO5?+voK%L=4q+ToBp5W4cZQKcekZ z{dBhxd&f#Oe(4lE3(L(d-A=FVp)pmEVsxFy;yq^xUN1K>0~E!0#8~?La-oDE^lew< zV_HeP555J<5;=rCA*>coFgsiAC-H{{Ho~)xJ_`kE!brv2CQ;XEz9{&Iii-9{BR&gw z9SX`wu6}lw%uve})F&AfdE4>xbuj+6j{B;V_&ikcphUi~ovzQCoplKke-mHhPB6yX z8+_r_=BdW>8k(N>hd1#u?wW*!9-nXSv7%V(A)$X8I=g9;))mYk3dd)TgX1sJ2MoVE zDp0EbNW-x|jf1nkB@*j;CIro2h@QcR%kaQOtH7YqM|@2|7LV+P4+5QRnEk#Jfnvq`(mtHEQmg4`dpu_*} zR4&1wDU&=HVh^$v5p)2HfFTe&kf5WJlPDMh60sGs1v!H4ZKWmupONc3Xj-L&I^~3% zd6JTWTOqfj@uDy)M#-G}Q(?6zC4*)~el^?%mJIgQU{`(0F@NJjG&WIOTINm<;>2Q$ WrD7&b0)vo{sy@-!=2{Gya{UL7;I?D{ diff --git a/examples/texstudio_d30266.pdf b/examples/texstudio_d30266.pdf index 63eb3822468b5c9935af24fbdd36c404379544b0..785fc208474e36c5bb6029b0ac760c36c0d2e148 100644 GIT binary patch delta 5149 zcmai&RZ!Fcqs0Y8x>Z0LmXhvWI;6WxdI2dxy8j4Em#~0>Al(X6IDh;C4Qi8I8 zNW=Z^%zgOY?&Fy`uje;se!T-YT?06ul~tuOlC!e^iKZ&sH;d9mKl3~f6CPfO6=6!T z4m)T+Tlp5ao})_!YrV*!Q;{5wQe};W*(HvR_3FSwRQZAIx%OHcnZ+!g-zQUo>5NG` z9Ro^*BB96Ab2p(3L6a`>!|rVw%_1vWa2LBW0Wrjjgyj=hvB!Hl_ptouR(j6gMvb5@ zbpPhI8w2oT50VE8eq==T2yoS(G~_Hm3Sy14Q5f>UlEwt~T95LvcPK?){1~Hx#wXdo zvZ|<;5f=cl@12u?Xx-UKBvOv?MEiByZy<%l5aj)l@r2J%GmXcH6%-JNe28a@rZwAE z+$&__KtM6K=K5Pcf+k7OvZA7Dnl2^ycCl*)Lw2!y3)6g&)m(zFPJ$Aj0lvGcn;P_! z3%Mw~f?Icc#e1vFWbTT^a_3rL|Io&eWiH2+0DvedG}t_-4KA>-tU|sMYah#`i)gO- zW=FsmhUYsJ|1Ml3v#!Yd($ajWu7*s7`4Y!An&?U|imW?McI05Z$w`+H$=<0Iu=lkUwc^DxxO!w5TK zF5p@y_-1Sm)I+bePEKHL*Q(9PfN{;HVoZoV(F$drH$db85F(!}~K`hP=AV-5dM`5fh!v z+xp?k6%l^cE1wd7mChu8y<>?=(&B~ z{Jz|V>aOZ8Ui}hW+D)6Jm)-`=M+Uz}R$tv#j`8o*il={QGuZKeG%or2@I&6m4siAx z!uBWZKAIp~-^5sV62kRp&Ozt7L6Y~yRB9H=9yyPx#2(WlzXmBYFh!f|k+L8uS$5!DPVHEBaV}x_rNlLdN>tO(gBZ!N zEl*k@s!&EG8$Ut0GuR+>8^l;V-{E5}!uE9$)%2?&9Vt171i&s`@;-~ zf5+0=)^fn;<33?u%tQF#cExjd-5i`f_V0qymBqGr(FJB~j&z$5oVs0yaVe^S^#eUA zxa#|ti4tu;P-$j(4HZ|RHXo*5ofjU}M7~?=R}Y+GmvNewE%D3!n#=jSFG=vt@%2yN z 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 delta 5148 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 H>j$&}hZ!qu delta 155 zcmZo_Vs2_;o>0m4lADLiglpQzk2M>cukNom)ipHKH8ct_G_W!?vNAN#HZZU!C8<`q`6-!cl?+A(M%XnhIP*|_vR8sekrd2W+85m*Lu;9!?b)W_fxQ3F<+|=Td#M}bh PdcNO0@MF49JC`;9wFfZz diff --git a/screenshots/photo-example.png b/screenshots/photo-example.png index 7d3f88d1593eb55ab42377bd97361f03963536b5..e6c9395a35322920bac0f3782e8f48611c8e122e 100644 GIT binary patch delta 120 zcmeDD#?<+ZX+!)jZ!=v36I~SBXW53=FCzt`Q|Ei6yC4 lx%nxXX_X8{21eL5u|dGe}VQc~EZ1J|AQnS5`THUMiqBdGuY diff --git a/screenshots/photo-in-qr-example.png b/screenshots/photo-in-qr-example.png index 0b463df9988f491bfd8164673d1b1fcf36c4dcb1..0a44ffa942914083ba5345d1523893401245aac4 100644 GIT binary patch delta 166 zcmbPq)?m_EgN7Ey7N!>F7M2#)7Pc1l7LFFq7OocVEj%w&>&+tPBip|CyG@z`&qd;u=wsl30>zm7AZEnO4bQWMG6{!>WaPmw*~H;2KIYb5n~; T5_1c1>-oEdpLcq?8jm&rTH!D+ delta 166 zcmbPq)?m_EgN7Ey7N!>F7M2#)7Pc1l7LFFq7OocVEj%w&>rHhH4RsBTLJSS8OpUAz z4YdsntPBjwp9SeNFfgc=xJHzuB$lLF<>sekrd2W+85m*Lz_$CF@JNRm2b5oF%sji`+uAxzgp@EgDk(HsLwt<0_fkFAR fApObm!Qwci*>=C0JUJj(3Ws#yy3;