test-st-petersburg / DocTemplates

Шаблоны документов Libre Office
Apache License 2.0
0 stars 1 forks source link

Внести изменения в фирменный бланк в соответствии с приказом от 05.03.2021 № 35/ахд #105

Closed sergey-s-betke closed 3 years ago

sergey-s-betke commented 3 years ago

Требуемая возможность

Внести изменения в фирменный бланк в соответствии с приказом от 05.03.2021 № 35/ахд (добавить "линейку" снизу и QR код).

Приказ 35 ахд от 05.03.2021.pdf Бланки.pdf

sergey-s-betke commented 3 years ago

Размещение QR кода не помешает ничему, а линейка может помешать размещению сведений об исполнителе...

sergey-s-betke commented 3 years ago

Предоставленный QR код не соответствует стандарту и не распознаётся сканером Яндекса (в частности). Будем генерировать заново. В QR коде - ссылка на сайт. Дам в нашем коде ссылку на раздел сайта с нашими координатами.

sergey-s-betke commented 3 years ago

Требования к шкале ("линейке") приведены на 61ой странице руководства по применению фирменного стиля Росстандарта.

sergey-s-betke commented 3 years ago

Для генерации QR кодов лучший вариант - использовать PowerShell модули.

Описание полей визитки: https://en.wikipedia.org/wiki/VCard#Properties

sergey-s-betke commented 3 years ago

vCard Format Specification - https://tools.ietf.org/html/rfc6350

sergey-s-betke commented 3 years ago

Стандарт на QR код: ГОСТ Р ИСО/МЭК 18004-2015

sergey-s-betke commented 3 years ago

Класс dotNet для генерации QR кодов - https://github.com/codebude/QRCoder

sergey-s-betke commented 3 years ago

Ниже - пример генерации QR кода для URI:

$QRCoderPackage = Get-Package -Name 'QRCoder';
$LibPath = Join-Path -Path ( Split-Path -Path ( $QRCoderPackage.Source ) -Parent ) -ChildPath 'lib\net40\QRCoder.dll';
Add-Type -Path $LibPath;

[System.Uri] $generator = 'https://github.com/codebude/QRCoder/';
[System.String] $payload = $generator.ToString();

$qrGenerator = New-Object -TypeName QRCoder.QRCodeGenerator;
[QRCoder.QRCodeData] $qrCodeData = $qrGenerator.CreateQrCode($payload, [QRCoder.QRCodeGenerator+ECCLevel]::Q);
[QRCoder.QRCode] $qrCode = New-Object -TypeName QRCoder.QRCode -ArgumentList $qrCodeData;
$qrCodeAsBitmap = $qrCode.GetGraphic(40);
$qrCodeAsBitmap.Save('C:\Users\sergei.s.betke\Documents\DocTemplates\tools\build\test.bmp');