X39.Solutions.Papercraft.Controls.QrCode
8.1.1
dotnet add package X39.Solutions.Papercraft.Controls.QrCode --version 8.1.1
NuGet\Install-Package X39.Solutions.Papercraft.Controls.QrCode -Version 8.1.1
<PackageReference Include="X39.Solutions.Papercraft.Controls.QrCode" Version="8.1.1" />
<PackageVersion Include="X39.Solutions.Papercraft.Controls.QrCode" Version="8.1.1" />
<PackageReference Include="X39.Solutions.Papercraft.Controls.QrCode" />
paket add X39.Solutions.Papercraft.Controls.QrCode --version 8.1.1
#r "nuget: X39.Solutions.Papercraft.Controls.QrCode, 8.1.1"
#:package X39.Solutions.Papercraft.Controls.QrCode@8.1.1
#addin nuget:?package=X39.Solutions.Papercraft.Controls.QrCode&version=8.1.1
#tool nuget:?package=X39.Solutions.Papercraft.Controls.QrCode&version=8.1.1
X39.Solutions.Papercraft.Controls.QrCode
X39.Solutions.Papercraft.Controls.QrCode adds a dedicated Papercraft qrCode XML control backed by Net.Codecrete.QrCodeGenerator.
The control renders QR modules as Papercraft vector rectangle commands, so it stays renderer-neutral and does not depend on SkiaSharp.
Use this package when templates need QR codes and you do not need the broader ZXing barcode package.
Package Role
| Area | Provided by this package |
|---|---|
| DI entry point | AddQrCodeControls() |
| Core-only DI entry point | services.AddPapercraftQrCodeControls() |
| XML control | <qrCode> |
| Dependency | Net.Codecrete.QrCodeGenerator |
Register Controls
For normal applications that already use the default Papercraft facade:
using Microsoft.Extensions.DependencyInjection;
using X39.Solutions.Papercraft;
using X39.Solutions.Papercraft.Controls.QrCode;
services.AddPapercraft()
.AddQrCodeControls();
For a core-only package or custom renderer setup:
services.AddPapercraftCore()
.AddQrCodeControls();
services.AddPapercraftQrCodeControls() is also available when you only want to register Core plus QR controls.
It does not add a renderer backend by itself.
Template Usage
<template xmlns="X39.Solutions.PdfTemplate.Controls">
<body>
<qrCode size="30mm" errorCorrection="High">
https://example.com/order/123
</qrCode>
</body>
</template>
Supported parameters:
| Parameter | Purpose | Default |
|---|---|---|
value or content |
QR code payload | Empty, invalid at render time |
size |
Rendered square size | 25mm |
foreground |
Module color | black |
background |
Background color | transparent |
quietZone |
Quiet-zone module count | 4 |
errorCorrection |
Low, Medium, Quartile or High |
Medium |
Related Projects
X39.Solutions.Papercraft.Core: control contracts used by this package.X39.Solutions.Papercraft.Controls.ZXing: optional package for general 1D and 2D barcode controls.../../docs/manual/controls-qrcode.md: template-author QR code documentation.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.8)
- Net.Codecrete.QrCodeGenerator (>= 3.0.0)
- X39.Solutions.Papercraft.Core (>= 8.1.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.