#html #xml #xslt
Вопрос:
Используя xsl, я пытаюсь преобразовать некоторый html-текст в Qr-код с помощью шрифта. Шрифт отображается, но он отображает каждый символ вместо всего текста в один Qr-код. Я попытался превратить текст в переменную числа xsl и попытался отобразить ее таким образом
<xsl:variable name="OrderNumber" select="number(//Order/Number)" />
<font face="QR font tfb" style="font-size:36pt;"><xsl:value-of select="$OrderNumber"/></font>
Я просто пытаюсь прямо сейчас взять номер заказа и превратить его в сканируемый qr-код. Поиск в Google и stackoverflow для меня ничего не дает.
Комментарии:
1. Какая это версия XSLT или какую версию XSLT поддерживает процессор?
Ответ №1:
Шрифт, который вы упомянули, — это просто «шрифт», который отображает символы в QR-код для этого простого символа. Так что вы проходите www.mysite.com … он не дает и никогда не даст вам ни одного QR-кода для фразы, он дает вам один QR-код для каждого символа во фразе (как и должен делать шрифт).
Вам нужно реализовать что-то другое, кроме шрифтов (например, сервис QR-кода).
Видишь https://www.dafont.com/qr-font-tfb.font и вы даже видите, что каждый символ-это QR-код. Это, по сути, бесполезно, если вы не хотите QR-кодировать букву «А».
Если вам нужно что-то для кодирования фраз или ссылок, то что-то вроде https://www.the-qrcode-generator.com/ сработало бы. Есть много других. В Google чартах есть устаревший, но он все еще работает:
https://chart.googleapis.com/chart?chs=300x300amp;cht=qramp;chl=www.mysite.com
Доходность:
Поэтому, предполагая, что ваша переменная XSL работает, не используйте <font>
, а вместо этого используйте что-то вроде <img>
и создайте src
атрибут, как в примере с диаграммой Google.
<xsl:variable name="OrderNumber" select="number(//Order/Number)" />
<xsl:variable name="chartQR">
<xsl:text>https://chart.googleapis.com/chart?chs=300x300amp;amp;cht=qramp;amp;chl=</xsl:text>
<xsl:value-of select="$OrderNumber"/>
</xsl:variable>
<ing src="{$chartQR}"/>
Комментарии:
1. <img src=»{$chartQR}»/>