Files
EnvelopeGenerator/EnvelopeGenerator.ReceiverUI/wwwroot/index.html
TekH 09cc639466 Add signature input and PDF export functionality
Introduced a signature input feature in `ReportViewer.razor` to allow users to draw a signature on a canvas and embed it into reports before exporting as a signed PDF.

- Added a canvas (`receiver-signature-pad`) and buttons for clearing, applying, and exporting signatures.
- Injected `IJSRuntime` for JavaScript interop and added methods for signature handling (`ClearSignatureAsync`, `ApplySignatureAsync`, `ExportSignedPdfAsync`).
- Embedded the signature as an image and label in the report's bottom margin.
- Added `receiver-signature.js` to manage the signature pad, including drawing, clearing, and exporting the signature as a Base64 image.
- Updated `index.html` to include the new JavaScript file.
- Displayed validation messages for missing or invalid signatures.
2026-05-26 01:02:07 +02:00

69 lines
2.2 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>EnvelopeGenerator.ReceiverUI</title>
<base href="/" />
<link href="css/bootstrap/bootstrap.min.css" rel="stylesheet" />
<link href="EnvelopeGenerator.ReceiverUI.styles.css" rel="stylesheet" />
<link href="css/app.css" rel="stylesheet" />
<style type="text/css">
.splash-screen {
display: flex;
justify-content: center;
align-items: center;
flex-flow: column nowrap;
height: 100vh;
font-family: "Segoe UI",Roboto,"Helvetica Neue","-apple-system",BlinkMacSystemFont,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
font-size: .88rem;
font-weight: 400;
line-height: 1.5;
text-align: center;
}
.splash-screen .spinner-border {
border: .2em solid;
border-color: #5f368d #bfbfbf #bfbfbf;
width: 120px;
height: 120px;
}
.splash-screen-caption {
font-size: 1.5rem;
font-weight: 600;
margin-top: 1.5rem;
}
.splash-screen-text {
color: #a1a1a1;
margin-top: .5rem;
}
</style>
</head>
<body>
<div id="app">
<script type="text/javascript">
if(/MSIE \d|Trident.*rv:|Edge\//.test(window.navigator.userAgent))
window.location.href = "browserNotSupported.html";
</script>
<div class="splash-screen">
<div class="spinner-border"></div>
<div class="splash-screen-caption">EnvelopeGenerator.ReceiverUI</div>
<div class="splash-screen-text">Loading...</div>
</div>
</div>
<div id="blazor-error-ui">
An unhandled error has occurred.
<a href="" class="reload">Reload</a>
<a class="dismiss">X</a>
</div>
<script src="_content/DevExpress.Blazor.Resources/js/preload-script.js"></script>
<script src="js/receiver-signature.js"></script>
<script src="_framework/blazor.webassembly.js"></script>
</body>
</html>