0. Serginio 798 26.01.16 17:26 Сейчас в теме

Использование классов .Net в 1С для новичков

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
96. Serginio 798 18.07.18 12:07 Сейчас в теме
Да проблема в передаваемом параметре (выяснили, что это не метод расширения)

Можешь через отладчик если что посмотреть. Исходники то у тебя есть.
101. ZSS2014 31.10.18 12:54 Сейчас в теме
А что необходимо сделать чтобы 1с распознала данный com объект ("NetObjectToIDispatch45")?
102. Serginio 798 14.12.18 11:29 Сейчас в теме
(101) Нужно скачать и зарегистрировать NetObjectToIDispatch45.dll
https://www.forum.mista.ru/topic.php?id=763810&page=1
103. Denanhel 28.12.18 15:48 Сейчас в теме
Еще пример. Изменениеразмера изображения
все изображения к размеру 500 на 500 где-то срежем, гдето добавим белого фона

destWidth = 500;
destHeight = 500; 		
	
Врап = новый COMОбъект("NetObjectToIDispatch45");  		
			
src = Врап.СоздатьОбъект("System.Drawing.Bitmap", ИмяВходящегоФайлаКартинки;
dest = Врап.СоздатьОбъект("System.Drawing.Bitmap", destWidth, destHeight, 
                                          Врап.ПолучитьТип("System.Drawing.Imaging.PixelFormat").Format32bppArgb);		
			
srcRect = Врап.СоздатьОбъект("System.Drawing.Rectangle");
destRect = Врап.СоздатьОбъект("System.Drawing.Rectangle");
			
destRect.Width = destWidth;
destRect.Height = destHeight;
			
g = Врап.ПолучитьТип("System.Drawing.Graphics").FromImage(dest);
			
backgroundColor = Врап.ПолучитьТип("System.Drawing.Color").FromName("White");
			
b = Врап.СоздатьОбъект("System.Drawing.SolidBrush", backgroundColor);
			
g.FillRectangle(b, destRect);
srcRect.Width = src.Width;
srcRect.Height = src.Height;
			
sourceAspect = src.Width / src.Height;
destAspect = destWidth / destHeight;
			
Если sourceAspect > destAspect Тогда
        destRect.Width = destWidth;
        destRect.Height = Цел(destWidth / sourceAspect);
        destRect.X = 0;
	destRect.Y = Цел((dest.Height - destRect.Height) / 2);
Иначе
	destRect.Height = destHeight;
	destRect.Width = Цел(destHeight * sourceAspect);
	destRect.X = Цел((destWidth - destRect.Width) / 2);
	destRect.Y = 0;
КонецЕсли; 
			
g.DrawImage(src, destRect, srcRect, Врап.ПолучитьТип("System.Drawing.GraphicsUnit").Pixel);
			
src.Dispose();
dest.Save(ИмяИсходящегоФайлаКартинки); 
dest.Dispose();
Показать
105. MichiMaloy 04.03.19 17:21 Сейчас в теме
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии


Программист 1С
Краснодар
зарплата от 80 000 руб. до 160 000 руб.
Полный день

Консультант 1 С
Краснодар
зарплата от 50 000 руб. до 150 000 руб.
Полный день

Консультант-методолог 1С
Краснодар
зарплата от 110 000 руб.
Полный день

Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству