Быстрый поиск
Введите фрагмент названия статьи для поиска
Исследование защиты программы HDRsoft Photomatix Pro
20.12.2022 | Категория: Темная сторона Силы | Автор: ManHunter
Скриншот программы HDRsoft Photomatix Pro
HDRsoft Photomatix Pro - профессиональная программа для редактирования фотографий и создания изображений с высокой контрастностью. Автоматически уменьшает шум, выбирает оптимальные параметры для пакетной обработки, тем самым получая на выходе идеальное фото. Всю малину портит стоимость лицензии в сотню баксов, но это поправимо.
Читать статью целиком »
Просмотров: 1245 | Комментариев: 6
Как добавить просмотр файлов HEIC в Проводник
03.11.2022 | Категория: Software | Автор: ManHunter
Как добавить просмотр файлов HEIC в Проводник
Появилось тут у меня некоторое количество фотографий в формате HEIC (High Efficiency Image Coding), сделанных на айфон. С конвертацией в более привычные форматы проблем не возникло, но вот в Проводнике хотелось бы видеть превьюшки фотографий. Согласитесь, что так работать гораздо удобнее.
Читать статью целиком »
Просмотров: 3752 | Комментариев: 11
Рисуем компас на PHP
14.10.2022 | Категория: Web-мастеру и не только | Автор: ManHunter
Рисуем компас на PHP
Появилась следующая задача. Есть пачка изображений, каждому изображению соответствует определенное направление съемки. Требуется промаркировать все изображения картинкой компаса, который указывает это направление. С самой маркировкой проблем не возникло, а вот с компасами пришлось немного повозиться.
Читать статью целиком »
Просмотров: 828 | Комментариев: 4
Исследование защиты программы Icecream Image Resizer
22.09.2022 | Категория: Темная сторона Силы | Автор: ManHunter
Скриншот программы Icecream Image Resizer
Программа Icecream Image Resizer, как можно понять из названия, предназначена для изменения размеров изображений мороженого. Без регистрации за один раз программа может обработать только три файла, что для истинных любителей мороженого очень мало. Так что давайте излечим ее от жадности.
Читать статью целиком »
Просмотров: 1290 | Комментариев: 4
Вывод изображения на Ассемблере с помощью WIC
13.08.2022 | Категория: Образ мышления: Assembler | Автор: ManHunter
На сайте уже есть две статьи про загрузку и вывод изображения с помощью GDI+ и OLE, сегодня расскажу про еще очередной способ загрузки изображений, на этот раз с помощью WIC (Windows Imaging Component). Эта технология позволяет не привязываться к конкретным форматам изображений, а делегировать большую часть рутинной работы системе. Если установлен соответствующий графический кодек и система в принципе может открыть изображение во встроенном Просмотрщике фотографий, значит его можно будет прочитать и при помощи Windows Imaging Component. Например, популярный формат WebP в чистой Windows 7 не открывается, но если поставить кодеки, то все сразу заработает.Переходим к программированию. Поскольку это COM-технология, то нам понадобится описание множества GUID, констант и интерфейсов. Надо ли говорить, что FASM про них ничего не знает? А множество действительно внушительное.
Code (Assembler) : Убрать нумерацию
- ; GUID {CACAF262-9370-4615-A13B-9F5539DA4C0A}
- CLSID_WICImagingFactory dd 0CACAF262h
- dw 09370h
- dw 04615h
- db 0A1h, 03Bh, 09Fh, 055h, 039h, 0DAh, 04Ch, 00Ah
- ; GUID {EC5EC8A9-C395-4314-9C77-54D7A935FF70}
- IID_IWICImagingFactory dd 0EC5EC8A9h
- dw 0C395h
- dw 04314h
- db 09Ch, 077h, 054h, 0D7h, 0A9h, 035h, 0FFh, 070h
- ; IID_IWICImagingFactory Interface
- struct IWICImagingFactory
- ; IUnknown
- QueryInterface dd ? ; 000h
- AddRef dd ? ; 004h
- Release dd ? ; 008h
- ; IWICImagingFactory
- CreateDecoderFromFilename dd ? ; 00Ch
- CreateDecoderFromStream dd ? ; 010h
- CreateDecoderFromFileHandle dd ? ; 014h
- CreateComponentInfo dd ? ; 018h
- CreateDecoder dd ? ; 01Ch
- CreateEncoder dd ? ; 020h
- CreatePalette dd ? ; 024h
- CreateFormatConverter dd ? ; 028h
- CreateBitmapScaler dd ? ; 02Ch
- CreateBitmapClipper dd ? ; 030h
- CreateBitmapFlipRotator dd ? ; 034h
- CreateStream dd ? ; 038h
- CreateColorContext dd ? ; 03Ch
- CreateColorTransformer dd ? ; 040h
- CreateBitmap dd ? ; 044h
- CreateBitmapFromSource dd ? ; 048h
- CreateBitmapFromSourceRect dd ? ; 04Ch
- CreateBitmapFromMemory dd ? ; 050h
- CreateBitmapFromHBITMAP dd ? ; 054h
- CreateBitmapFromHICON dd ? ; 058h
- CreateComponentEnumerator dd ? ; 05Ch
- CreateFastMetadataEncoderFromDecoder dd ? ; 060h
- CreateFastMetadataEncoderFromFrameDecode dd ? ; 064h
- CreateQueryWriter dd ? ; 068h
- CreateQueryWriterFromReader dd ? ; 06Ch
- ends
- ; IID_IWICBitmapDecoder Interface
- struct IWICBitmapDecoder
- ; IUnknown
- QueryInterface dd ? ; 000h
- AddRef dd ? ; 004h
- Release dd ? ; 008h
- ; IWICBitmapDecoder
- QueryCapability dd ? ; 00Ch
- Initialize dd ? ; 010h
- GetContainerFormat dd ? ; 014h
- GetDecoderInfo dd ? ; 018h
- CopyPalette dd ? ; 01Ch
- GetMetadataQueryReader dd ? ; 020h
- GetPreview dd ? ; 024h
- GetColorContexts dd ? ; 028h
- GetThumbnail dd ? ; 02Ch
- GetFrameCount dd ? ; 030h
- GetFrame dd ? ; 034h
- ends
- ; IWICBitmapFrameDecode Interface
- struct IWICBitmapFrameDecode
- ; IUnknown
- QueryInterface dd ? ; 000h
- AddRef dd ? ; 004h
- Release dd ? ; 008h
- ; IWICBitmapFrameDecode
- GetSize dd ? ; 00Ch
- GetPixelFormat dd ? ; 010h
- GetResolution dd ? ; 014h
- CopyPalette dd ? ; 018h
- CopyPixels dd ? ; 01Ch
- GetMetadataQueryReader dd ? ; 020h
- GetColorContexts dd ? ; 024h
- GetThumbnail dd ? ; 028h
- ends
- ; IID_IWICFormatConverter Interface
- struct IWICFormatConverter
- ; IUnknown
- QueryInterface dd ? ; 000h
- AddRef dd ? ; 004h
- Release dd ? ; 008h
- ; IWICFormatConverter
- GetSize dd ? ; 00Ch
- GetPixelFormat dd ? ; 010h
- GetResolution dd ? ; 014h
- CopyPalette dd ? ; 018h
- CopyPixels dd ? ; 01Ch
- Initialize dd ? ; 020h
- CanConvert dd ? ; 024h
- ends
- ; IID_IWICBitmap Interface
- struct IWICBitmap
- ; IUnknown
- QueryInterface dd ? ; 000h
- AddRef dd ? ; 004h
- Release dd ? ; 008h
- ; IWICBitmap
- GetSize dd ? ; 00Ch
- GetPixelFormat dd ? ; 010h
- GetResolution dd ? ; 014h
- CopyPalette dd ? ; 018h
- CopyPixels dd ? ; 01Ch
- Lock dd ? ; 020h
- SetPalette dd ? ; 024h
- SetResolution dd ? ; 028h
- ends
- ; IID_IWICBitmapLock Interface
- struct IWICBitmapLock
- ; IUnknown
- QueryInterface dd ? ; 000h
- AddRef dd ? ; 004h
- Release dd ? ; 008h
- ; IWICBitmapLock
- GetSize dd ? ; 00Ch
- GetStride dd ? ; 010h
- GetDataPointer dd ? ; 014h
- GetPixelFormat dd ? ; 018h
- ends
- ; GUID {6FDDC324-4E03-4BFE-B185-3D77768DC910}
- GUID_WICPixelFormat32bppPBGRA dd 06FDDC324h
- dw 04E03h
- dw 04BFEh
- db 0B1h, 085h, 03Dh, 077h, 076h, 08Dh, 0C9h, 010h
- CLSCTX_INPROC_SERVER = 0x01
- WICBitmapDitherTypeNone = 0x00000000
- WICBitmapPaletteTypeCustom = 0x00000000
- WICBitmapCacheOnDemand = 0x00000001
- WICBitmapLockWrite = 0x00000002
- WICDecodeMetadataCacheOnDemand = 0x00000000
Читать статью целиком »
Просмотров: 1035 | Комментариев: 5