Уменьшение размера штампа ЭП 1С Документооборот 2.1

1. Alex_BLR 9 26.10.22 19:34 Сейчас в теме
Подскажите, необходимо уменьшить ширину (возможно и высоту) штампа электронной подписи в документе формата docx при вставке тега ВставитьЭП.

Какой объект в конфигурации подправить?

Конфигурация Документооборот 8 КОРП редакция 2.1.
Платформа 1С:Предприятие 8.3 (8.3.19.1229
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. userOleg 27.10.22 08:48 Сейчас в теме
Общался на эту тему с тех поддержкой. Ответили. что нужно через конфигуратор снимать с поддержки и дальше:

НачалоЦитаты:

-как поменять внешний вид штампа визуализации ЭП:

Надо поменять общий макет ШаблонОтметкиЭП (картинка с прозрачностью.)
И поменять код в РаботаСЭП.СоздатьОтметкуЭП (изменить координаты вставки текста, если нужно).

как уменьшить размер штампа электронной подписи?

Используются файлы форматов doc, docx, тег ВставитьЭП размещен, где нужно.


1. Надо поменять общий макет ШаблонОтметкиЭП (картинка с прозрачностью.)
И поменять код в РаботаСКартинками.СформироватьШтампЭП (изменить координаты вставки текста, если нужно).


2. doc с тегом ВставитьЭП
ВизуализацияЭПКлиентСервер.ВставитьШтрихкодВФайлMSWordВместоТэга
после oGraphicObject.AlternativeText = Тэг; добавить
oGraphicObject.Width = 230;
oGraphicObject.Height = 60;

3. docx с тегом ВставитьЭП
общий макет ВставкаИзображенияВместоТегаВDocx
<wp:extent cx="4539615" - поменять тут число.
Если еще высоту надо поменять:
ВизуализацияЭПВызовСервера.ВставитьШтрихкодВместоТэгаВФайлDocx (для 2.1)
или ВизуализацияЭПВызовСервера.ВставитьВизуализациюВместоТэгаВФайлDocx (для 30)
ВысотаШтрихкодаЗначение = (ВысотаШтрихкода / 25.4) * 914400; - изменить число 914400

4. docx, без наличия тега "ВставитьЭП"
ВизуализацияЭПВызовСервера.ВставитьИзображениеЭПВФайлDocxСУказаниемПоложения
ВысотаШтрихкода = (ВысотаКартинки / 25.4) * 914400; - тут поменять число.

общий макет ВставкаИзображенияЭПСУказаниемПоложенияDocx
в строке <wp:extent cx="4539615" cy="_ВысотаШтрихкода_"/>
поменять cx (ширина)

5. odt стегом ВставитьЭП.

ВизуализацияЭПOpenOfficeВызовСервера.ВставитьШтрихкодВФайлODTВместоТэга
аргумент ВысотаШтрихкода увеличить или уменьшить.

ЗаготовкаДляВставкиШтрихкода =
"<draw:frame draw:name=""" + Тэг + """ text:anchor-type=""as-char"" svg:y=""-3.395cm"" svg:width=""11.198cm"" svg:height=""_ВысотаШтрихкода_mm"" draw:z-index=""0"">
| <draw:image xlink:href=""Pictures/" + ИДКартинки + ".png"" xlink:type=""simple"" xlink:show=""embed"" xlink:actuate=""onLoad""/>
|</draw:frame>";


- тут поменять svg:width=""11.198cm"" на нужное число.


6. pdf.
РаботаСКартинками УменьшитьШтамп НаложитьШтамп


КонецЦитаты.

Сам не пробовал, не хочу снимать с поддержки.
4. Alex_BLR 9 27.10.22 09:54 Сейчас в теме
(2) А через внешнее расширение получается нельзя сделатЬ?
3. Alex_BLR 9 27.10.22 09:14 Сейчас в теме
Спасибо, почитаю. А через расширение получается нельзя реализовать?
5. userOleg 27.10.22 15:27 Сейчас в теме
По поводу расширения, не знаю, через расширение не все срабатывает.
Хотя не вижу причин почему бы и не получилось.
Я думаю в будущих версиях должны сделать штатную возможность настройки штампа.
тема слишком востребована у пользователей.
Руководство хочет видеть логотип компании в штампе.
6. Alex_BLR 9 27.10.22 16:15 Сейчас в теме
(5)Ну посмотрим, если будет рабочий вариант через расширение скину.
7. userOleg 27.10.22 16:52 Сейчас в теме
(6)Хорошо. Это будет интересно.
8. user1089020 21.12.23 13:54 Сейчас в теме
(6) Скажите, у вас получилось уменьшить размер штампа? И каким все-таки образом?
9. user1278383 5 21.12.23 14:16 Сейчас в теме
(8) все не читал, но для уменьшения штампа можно через расширение изменить процедуру РаботаСКартинками.УменьшитьШтамп()
10. user1089020 21.12.23 14:37 Сейчас в теме
(9) К сожалению, это процедура относится к pdf-файлам, не к docx

Если НРег(ДанныеФайла.Расширение) = "docx"
		Или НРег(ДанныеФайла.Расширение) = "odt" Тогда
		
		// делаем автозаполнение.
		
		ДвоичныеДанныеШтампа = ДанныеФайла.ДвоичныеДанныеШтампа;
		
		ДвДанныеФайлаDoc = ПолучитьДвоичныеДанныеФайла(ДанныеФайла.Ссылка);
		
		ДвоичныеДанныеНовые = ВизуализацияЭПКлиентСервер.ВставитьВизуализациюЭПВместоТэга(
			ДвДанныеФайлаDoc, ДанныеФайла.Расширение, "ВставитьЭП", ДвоичныеДанныеШтампа, ЧислоПодписей, РасположениеШтампаЭПВPdf);
			
		Если ТипЗнч(ДвоичныеДанныеНовые) = Тип("ДвоичныеДанные") Тогда
			ФайлВизуализация = РаботаСФайламиВызовСервера.СоздатьВизуализациюИЗаполнитьДанныеФайла(
				ДанныеФайла, ДвоичныеДанныеНовые, ИдентификаторФормы);	
		КонецЕсли;	
		
	ИначеЕсли НРег(ДанныеФайла.Расширение) = "pdf" Тогда
		
		СпособВставкиШтампаЭПВPDF = ПолучитьСпособВставкиШтампаЭПВPDF();
		
		ВременнаяПапкаДляРазархивирования = ПолучитьИмяВременногоФайла("");
		
		ДвДанныеФайлаPdf = ПолучитьДвоичныеДанныеФайла(ДанныеФайла.Ссылка);
		ИмяФайлаPdf = ВременнаяПапкаДляРазархивирования + ПолучитьРазделительПути()
			+ "src.pdf";
		ДвДанныеФайлаPdf.Записать(ИмяФайлаPdf);
		
		ДвоичныеДанныеШтампа = ДанныеФайла.ДвоичныеДанныеШтампа;
		ИмяФайлаШтампа = ВременнаяПапкаДляРазархивирования + ПолучитьРазделительПути()
			+ "stamp.png";
		ДвоичныеДанныеШтампа.Записать(ИмяФайлаШтампа);
		
		Если СпособВставкиШтампаЭПВPDF = Перечисления.СпособыВставкиШтампаЭПВPDF.ImageMagickGhostscript Тогда
			РаботаСКартинками.УменьшитьШтамп(ИмяФайлаШтампа, ЧислоПодписей);
		Иначе	
			РаботаСКартинками.УвеличитьШтамп(ИмяФайлаШтампа, ЧислоПодписей);
		КонецЕсли;
Показать
user1278383; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот