URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 4903
[ Назад ]

Исходное сообщение
"как определеить размер jpg (пикселей на пикселей)"

Отправлено greenetc , 04-Дек-05 15:47 
подскажите, как определить в программе разрешение файла JPG, нужно просто его размер определить и всё .
поскажите плиз.

Содержание

Сообщения в этом обсуждении
"как определеить размер jpg (пикселей на пикселей)"
Отправлено Hatta , 04-Дек-05 16:26 
>подскажите, как определить в программе разрешение файла JPG, нужно просто его размер
>определить и всё .
>поскажите плиз.

Если у вас установлен libjpeg, то все что вам нужно, это прочитать файл libjpeg.doc, который у себя я нашел в директории /usr/share/doc/libjpeg-devel-6b. Конкретно вас интересует функция jpeg_read_header().

#include <stdio.h> /* не забудьте stdio.h.
Он должен идти перед jpeglib.h */
#include <jpeglib.h>

int main(int argc, char *argv[])
{
    struct jpeg_decompress_struct cinfo;
    struct jpeg_error_mgr err;
    FILE *f;

    if(argc != 2) {
        printf("Specify input file\n");
        exit(2);
    }
    
    cinfo.err = jpeg_std_error(&err);
    jpeg_create_decompress(&cinfo);
    
    f = fopen(argv[1], "r");
    if (f == NULL) {
        printf("Cannot read the file\n");
        exit(2);
    }
    jpeg_stdio_src(&cinfo, f);
    jpeg_read_header(&cinfo, TRUE);
    printf("x = %d, y = %d\n", cinfo.image_width, cinfo.image_height);
    return 0;
}