23 lines
641 B
C#
23 lines
641 B
C#
using System;
|
|
using System.Linq;
|
|
using Net.Codecrete.QrCodeGenerator;
|
|
|
|
namespace ln.templates.html;
|
|
|
|
public class QrCodeElement : TemplateElement
|
|
{
|
|
public QrCodeElement(string tagName) : base(tagName)
|
|
{
|
|
}
|
|
|
|
public override void RenderElement(Context renderContext)
|
|
{
|
|
string[] lines = QrCode.EncodeText(GetAttribute(renderContext, "value"), QrCode.Ecc.Medium)
|
|
.ToSvgString(0)
|
|
.Split(Environment.NewLine.ToCharArray())
|
|
.Skip(2)
|
|
.ToArray();
|
|
string svgSource = String.Join(Environment.NewLine, lines);
|
|
renderContext.TargetWriter.Write(svgSource);
|
|
}
|
|
} |