|
Изменить разрешение/размер изображения в командной строке/средствами 1С. | ☑ | ||
---|---|---|---|---|
0
cube033
26.04.13
✎
09:15
|
За недолгий опыт 1с программирования и общения на Мисте - успел поверить, что решить можно любую задачу. Это такая приятная мысль, и неужели в этой ситуации никак не обойтись без откровенных костылей?
Полную задачу описывать не буду. Но одна из подзадач - администрировать БД сайта из 8.1 УПП. Подподзадача - работать с изображениями номенклатуры. Добавлен механизм присваивания нескольких изображений, благодаря Мисте красиво открывается/закрывается SSH туннель, Все изображения сразу отправляются по FTP на сервер,а адреса картинок в БД сайта. Но со стороны изготовителя сайта, поступило довольно логичное предложение: "Почему бы не выгружать по ФТП сразу Превьюшки?" Да только где их взять? Знаете ли вы способ, как программно создать уменьшенную копию изображения? Может утилитки какие-нибудь? Знаю, что похожая тема уже была, но там одна толковая ссылка, но по ней только реклама, да вирусы (все поудалял, но до сих пор раз в час ссылки в браузере произвольно открываются) |
|||
1
Godofsin
26.04.13
✎
09:16
|
погугли внешние компоненты, их куча всяких по работе с изображением
|
|||
2
Wobland
26.04.13
✎
09:17
|
ЗапуститьПриложение тебе в помощь
|
|||
3
Wobland
26.04.13
✎
09:17
|
или КомандаСистемы
|
|||
4
cube033
26.04.13
✎
11:35
|
Решено!!!
Скачиваем и устанавливаем GFLAx.(Я качал отсюда: http://www.softpedia.com/progDownload/GFLAx-Download-179932.html) Регистрируем в Windows. У меня возникала ошибка, в поддержке Майкрософт прочитал, что dll нужно класть сюда: C:\Windows\SysWOW64 - естественно нужно учитывать ОС - у меня Windows8x64. Открываем CMD.exe с правами администратора и набираем: regsrv32 C:\Windows\SysWOW64\GFLAx.dll А дальше все просто - комплекте с программой идет полезный Хелп со свойствами и методами на Англ. В моем примере задача, чтобы ни одно измерение превьюшки не превышало 250 пикселей. ИмяФайла = "C:\Users\cube0_000\Pictures\images\komp.jpg"; GFLAx = Новый COMОбъект("GFLAx.GFLAx"); GFLAx.LoadBitmap(ИмяФайла); ШиринаИзо = GFLAx.Width; ВысотаИзо = GFLAx.Height; Если ШиринаИзо>ВысотаИзо Тогда Делитель=ШиринаИзо/250; Иначе Делитель=ВысотаИзо/250; КонецЕсли; Делитель = ?(0,1,Делитель); ШиринаИзо = ШиринаИзо/Делитель; ВысотаИзо = ВысотаИзо/Делитель; GFLAx.Resize(Цел(ШиринаИзо),Цел(ВысотаИзо)); GFLAx.SaveBitmap("C:\Users\cube0_000\Pictures\images\komp303.jpg"); |
|||
5
oleg_km
26.04.13
✎
11:53
|
Есть еще WIA
|
|||
6
эцп
26.04.13
✎
11:59
|
Есть еще ImageMagic
|
|||
7
palpetrovich
26.04.13
✎
12:10
|
(4) а это "Делитель = ?(0,1,Делитель);" вообще работает?
|
|||
8
palpetrovich
26.04.13
✎
12:14
|
+7 работает блин, ...и нафига я пишу "Делитель = ?(Делитель=0,1,Делитель)"
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |