Имя: Пароль:
1C
1С v8
Размер картинки 1С
0 Chrome0102
 
05.08.15
11:58
Привет форумчане, как средствами 1С (без установки доп. библиотек) определить размер картинки в каталоге?
1 Волшебник
 
модератор
05.08.15
11:58
Размер файла или количество пикселей?
2 Lama12
 
05.08.15
11:59
(1)+ Или разрешение? Или глубину цвета? Или еще чего?
3 Chrome0102
 
05.08.15
12:00
Количество пикселей
4 Волшебник
 
модератор
05.08.15
12:07
Держи код


//***
Функция ПолучитьЗначенияСвойствКартинки(ПутьКФайлу) Экспорт
    
    #Если Клиент Тогда
            
    Свойства = Новый Соответствие;
    
    МассивПодстрок = РазложитьСтрокуВМассивПодстрок(ПутьКФайлу, "\");
    ИмяФайла = МассивПодстрок[МассивПодстрок.Количество()-1];
    Позиция = Найти(ПутьКФайлу, ИмяФайла);
    КаталогФайла = Сред(ПутьКФайлу, 1, Найти(ПутьКФайлу, ИмяФайла)-1);
    
    Если (Не МассивПодстрок.Количество())
        ИЛИ (Не ЗначениеЗаполнено(ИмяФайла))
        ИЛИ (Найти(ИмяФайла, ".") = 0)
        ИЛИ (Не ЗначениеЗаполнено(КаталогФайла))
        ИЛИ (Не обСуществуетФайл(ПутьКФайлу)) Тогда
        Сообщить("Не найден файл по указанному пути """+ПутьКФайлу+"""", СтатусСообщения.Важное);
        Возврат Свойства;
    КонецЕсли;    
        
    ShellApp = Новый COMОбъект("Shell.Application");
    objFolder = ShellApp.NameSpace(КаталогФайла);
    objItem = objFolder.ParseName(ИмяФайла);
    
    Для i=-1 По 40 Цикл
        Если ЗначениеЗаполнено(objFolder.GetDetailsOf(, i)) Тогда
            Свойства.Вставить(objFolder.GetDetailsOf(, i), objFolder.GetDetailsOf(objItem, i));
        КонецЕсли;    
    КонецЦикла;
    
    Возврат Свойства;
    
    #КонецЕсли

КонецФункции
5 Chrome0102
 
05.08.15
12:36
(4) спасибо!!!