Как приложения для обработки изображений определяют файл, который открыл пользователь? - PullRequest
0 голосов
/ 24 ноября 2010

Как приложения обработки изображений идентифицируют файл, который открыл пользователь?

Как мы уже знаем, приложения обработки изображений могут открывать все известные форматы изображений.Мой вопрос: как приложения обработки изображений знают, какой файл он открывает.Он узнает по расширению файла или откроет файл в двоичном формате и прочитает заголовок файла, а затем создаст объект этого типа файла.

Или любые известные способы определения форматов файлов изображений.

Для вышеуказанной проблемы, как вы проектируете свою систему.Какие шаблоны дизайна вы будете использовать.

Заранее спасибо.

Харша

Ответы [ 2 ]

1 голос
/ 24 ноября 2010

Я бы сказал, что шаблон дизайна приложения в целом совершенно не связан с процессом распознавания формата изображения.

Каждый формат файла изображения имеет очень раннюю двоичную информацию, указывающую тип файла, который является «заголовком» файла.

Файлы GIF, например, начинаются с букв GIF и кода, указывающего, какая версия спецификации GIF, 87a или 89a. Файлы PNG, как указывает Роберт Харви, имеют специальный символ, за которым следуют PNG в качестве первых четырех байтов файла.

Большинство записей Википедии для основных форматов изображений объясняют заголовок и немного больше о самом файле - в дополнение к ссылкам выше, которые охватывают PNG и JPEG, есть также http://en.wikipedia.org/wiki/GIF#File_format для GIF.

0 голосов
/ 24 ноября 2010

Допустим, у меня есть файл с расширением .PNG, и я не уверен, что это действительно файл PNG.Я могу посмотреть на заголовок и убедиться, что это файл PNG.

Для JPG я могу посмотреть синтаксис и структуру файла и посмотреть,это то, что я ожидал бы от JPG.

Вообще говоря, алгоритм таков: Предположим, что файл изображения соответствует формату, указанному расширением файла, пока внутренняя структура файла не докажет, что расширениенеправильно.

...