Изображения .pgm не подходят, кажется, вписываются в массив

Работаю над базовой обработкой изображений, и мне нужно манипулировать изображением P2 .prg. Если комментариев нет, то во второй строке должно быть значение ширины и высоты. Если мы возьмем пример FEEP с этого сайта https://people.sc.fsu.edu/~jburkardt/data/pgma/pgma.html тогда мы можем видеть, что данное значение равно 24, а массив позже в файле имеет ширину 24. Идеальный! Однако всякий раз, когда я иду читать любой другой файл с того же веб-сайта, измерение ширины составляет, скажем, 512, но текстовые данные внутри файла имеют ширину всего 17 цифр? Я неправильно смотрю на этот файл? Как я могу разобрать этот файл в многомерный массив, если ширина строк не соответствует ширине из заголовка?

Конец строки "...разделенные пробелом..." является пробелом и не имеет специального значения. Для 1-го файла в примерах apollonian_gasket.ascii.pgm 1-е 600 номеров последовательно являются 1-й строкой и т.д.

Richard Critten 17.05.2022 22:23

Форматы ASCII (P1, P2 и P3) обычно хранят около 72..76 символов в строке, но это не является жестким требованием. Вы должны иметь дело со многими, которые вы найдете.

Mark Setchell 17.05.2022 22:36
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Четыре эффективных способа центрирования блочных элементов в CSS
Четыре эффективных способа центрирования блочных элементов в CSS
У каждого из нас бывали случаи, когда нам нужно отцентрировать блочный элемент, но мы не знаем, как это сделать. Даже если мы реализуем какой-то...
0
2
21
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В форматах .pgm одна строка текста не соответствует одной строке изображения.

Первые width числа — это первая строка изображения. Затем следующие width числа — это вторая строка изображения и так далее. Сколько цифр в одной строке текста не имеет значения.

Это означает, что при чтении файла вы должны игнорировать символы новой строки и рассматривать их как любые другие пробелы.

Другие вопросы по теме