|
Как получить характеристики файла jpg из Свойства-Подробно? | ☑ | ||
---|---|---|---|---|
0
Kaban
04.05.20
✎
01:26
|
Если на файле-изображении щёлкнуть правой кнопкой мыши, нажать Свойства и перейти на вкладку "Подробно", там будут такие характеристики, как "Дата съемки", "Автор", модель фотоаппарата и тд
Как их можно вытащить оттуда? Стандартный "Файл" этого не показывает. FSO = Новый COMОбъект("Scripting.FileSystemObject"); File = FSO.GetFile("C:\Users\admin\Desktop\Новая папка\5015-0029.jpg"); тоже не все показывает Может кто-то заморачивался |
|||
1
Aleksey
04.05.20
✎
03:26
|
http://catalog.mista.ru/public/195840/
Первая ссылка в яндексе |
|||
2
trdm
04.05.20
✎
07:45
|
Если (вРасширение = "png") ИЛИ (вРасширение = "bmp") ИЛИ (вРасширение = "jpg") Тогда
Попытка вИмяФайлаВХранилище = СокрЛП(псЭлемент.Код)+"." + псЭлемент.Расширение; вИмяФайлаВХранилище = СокрЛП(вИмяФайлаВХранилище); вИмяФайлаВХранилищеП = глКаталогКартинокФайлов+СокрЛП(псЭлемент.Код)+"." + псЭлемент.Расширение; Если ФС.СуществуетФайл(вИмяФайлаВХранилищеП) = 1 Тогда Shell = CreateObject("Shell.Application"); Folder = Shell.Namespace(глКаталогКартинокФайлов); вИтемФайл = Folder.Items().item(вИмяФайлаВХранилище); // Folder.GetDetailsOf(Folder.Items().item(СокрЛП(вИмяФайлаВХранилище)), 10) = "325 x 600" вСимворР = "x"; вРазмеры = Folder.GetDetailsOf(вИтемФайл, 10); вВысота = Число(Folder.GetDetailsOf(вИтемФайл, 26)); вШирина = Число(Folder.GetDetailsOf(вИтемФайл, 27)); Если вВысота*вШирина = 0 Тогда Если ПустоеЗначение(вРазмеры) = 0 Тогда вШирина = Число(СокрЛП(глСлеваОт(вРазмеры,вСимворР))); вВысота = Число(СокрЛП(глСправаОт(вРазмеры,вСимворР))); КонецЕсли; КонецЕсли; псЭлемент.Ширина = вШирина; псЭлемент.Высота = вВысота; КонецЕсли; Исключение Сообщить(ОписаниеОшибки()+" [20161114-1632]" + вИмяФайлаВХранилище); КонецПопытки; КонецЕсли; |
|||
3
oleg_km
04.05.20
✎
12:16
|
Если подключить дотНет по методу Сергея Смирнова, то можно использовать возможности дотНета:
using (FileStream Foto = File.Open(file, FileMode.Open, FileAccess.Read)) { BitmapDecoder decoder = JpegBitmapDecoder.Create(Foto, BitmapCreateOptions.IgnoreColorProfile, BitmapCacheOption.Default); BitmapMetadata props = (BitmapMetadata)decoder.Frames[0].Metadata.Clone(); dt = DateTime.Parse(props.DateTaken); FileInfo fi = new FileInfo(file); newFile = fi.DirectoryName + @"\" + string.Format(format, dt, props.CameraManufacturer, props.CameraModel, fi.Name); } |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |