Umlautprobleme beim qrcode-Paket. Workaround möglich?

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


Benutzeravatar
deha
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Do 18. Apr 2019, 15:39

Umlautprobleme beim qrcode-Paket. Workaround möglich?

Beitrag von deha »

Hallo zusammen,

wir haben ein Template, auf dem wir aus verschiedenen Variablen einen QR-Code erzeugen lassen möchten. Die LaTeX-Umgebung wird nicht von uns betreut, sodass wir nur beschränkte Möglichkeiten haben. z.B. können wir nicht jedes beliebige Paket nutzen und es ist auch nur ein einiger LaTeX-Durchlauf zur generierung des pdf möglich.
Alles funktioniert, solange keine Sonderzeichen oder Umlaute im Text sind, für den ein QR-Code erzeugt werden soll. Der Log zeigt, dass z.B. aus "Lücke" "L\xfccke" wird. Wegen des "\" bricht das Script dann ab.
Hier die relevanten Teile des Templates:
\documentclass[a4paper]{scrartcl}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{helvet}

\usepackage{ifthen}
\usepackage[german]{babel}
\usepackage{color}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{float}
\usepackage{geometry}
\usepackage[nolinks]{qrcode}

\geometry{a4paper,top=10mm,left=23mm,right=23mm,bottom=37mm}

\begin{document}

\qrcode{QRAE|\var1|\var2|\var3|}

\end{document}
Die Umgebung nutzt \usepackage[utf8]{inputenc}, darauf haben wir aber auch keinen Einfluss. Die Variablen werden ebenfalls außerhalb des Templates erstellt/definiert.

Fällt euch ein Workaraound dazu ein? Ein anderes Paket als qrcode können wir nicht nutzen.

Beste Grüße
Daniel

Gast

Beitrag von Gast »

Du hast zwar aufgezählt, worauf ihr keinen Einfluss habt, aber worauf habt ihr denn nun Einfluss? Das Beispiel ist übrigens auch nicht lauffähig. Wenn genau das nicht definieren \var den Fehler demonstrieren soll, dann wäre eventuell
\documentclass[a4paper]{scrartcl}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{helvet}

\usepackage{ifthen}
\usepackage[german]{babel}
\usepackage{color}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{float}
\usepackage{geometry}
\usepackage[nolinks]{qrcode}

\geometry{a4paper,top=10mm,left=23mm,right=23mm,bottom=37mm}

\begin{document}

\qrcode{\detokenize{QRAE|\var1|\var2|\var3|}}

\end{document}
eine Möglichkeit.
\documentclass[a4paper]{scrartcl}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{helvet}

\usepackage{ifthen}
\usepackage[german]{babel}
\usepackage{color}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{float}
\usepackage{geometry}
\usepackage[nolinks]{qrcode}

\geometry{a4paper,top=10mm,left=23mm,right=23mm,bottom=37mm}

\begin{document}

\qrcode{\detokenize{Lücke}}

\end{document}
funktioniert bei mir übrigens auch.
Ich vermute daher, dass ihr zunächst dafür sorgen müsst, dass "Lücke" auch wirklich in UTF8 als Lücke in den Quellcode geschrieben wird.

Bei URLs codiert man Sonderzeichen dagegen anders. Da verwendet man diese %-Notation wie bei https://de.wikipedia.org/wiki/M%C3%BCcke

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Das hat mich daran erinnert, dass ich immer noch den Code dazu rumliegen habe

https://github.com/u-fischer/putfenc

Benutzeravatar
deha
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Do 18. Apr 2019, 15:39

Beitrag von deha »

Super, vielen Dank für eure Hilfe!

Antworten