Создание PDF-файлов из текстовых полей iOS - PullRequest
2 голосов
/ 30 ноября 2011

Я работаю над требованиями и спецификациями для нового приложения для iOS, предназначенного для использования некоторыми специалистами, работающими «в поле».Весь день в течение нескольких недель подряд эти люди несут значительное бремя отчетности перед начальством, используя стандартизированные формы, которые отслеживают все виды информации.Традиционно эти формы находятся в формате PDF, просто распечатываются и заполняются чернилами, а затем передаются десяткам сотням других, выполняющих ту же операцию.Иногда они используют PDF с полями формы, чтобы данные можно было набирать, а затем распечатывать как часть формы.В любом случае, учитывая их рабочий процесс, время и стрессовые нагрузки, а также другие факторы, это не очень продуктивный способ создания стандартных форм отчетности.

Приложение, которое мы задаем, будет предлагать iOS (иAndroid, если возможно - но вторичное или даже третичное требование на данный момент) пользовательский интерфейс для отслеживания данных, которые они вводят в поле, логической организации их для каждого отдельного пользователя и нажатием кнопки, вседанных и автоматически создайте из них PDF-файл, используя стандартизированную форму.

Конечно, формы СТРОГО и жестко стандартизированы в этой отрасли, и любое отклонение в формате, структуре или представлении просто недопустимо.

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

  1. открыть необходимую форму PDF для текущей задачи;
  2. проанализировать свой словарь для идентификации конкретных полей данных;
  3. для каждого отдельного поляопределите соответствующие данные из собственного пользовательского интерфейса приложения iOS и таблиц данных и назначьте эти данные соответствующему полю из PDF / словаря
  4. , экспортируйте PDF в файл NEW PDF,который приложение будет отправлять по электронной почте или хранить через iCloud, Dropbox или через какую-либо другую форму обмена файлами.

Подвох # 4 заключается в том, что этот файл PDF должен оставаться редактируемым стандартными приложениями PDF в Windows иMac (Acrobat, Preview и т. Д.), Поэтому все поля должны остаться.И PDF-файл должен быть одинаково доступен для просмотра как в Windows, так и в Mac.

Теперь ни при каких условиях PDF-файл (ни оригинал, ни экспортированный конечный документ) НИКОГДА не нужно будет отображать внутри приложения iOS илибыло бы много смысла иметь возможность сделать это.

Я не знаю, возможно ли что-либо из этого.Это наш первый iOS-проект, и мы стремились создать приложение с использованием Moai или Corona или какой-либо другой инфраструктуры, чтобы сэкономить время разработки и упростить перенос на разные платформы.Тем не менее, если это невозможно сделать с помощью Lua и одной из этих платформ (я по-прежнему скептически отношусь ... они, похоже, ОЧЕНЬ сильно ориентированы на игры), мы не против того, чтобы делать это напрямую в Objective C и создавать версию для Android некоторое время вниз.дорога.

Но в любом случае, я затрудняюсь оценить, является ли это практическим мероприятием.Наши требования ясны, и, честно говоря, если этого не сделать, проект не будет продолжен.Но я определенно мог бы использовать некоторую помощь от вас, ребята, в определении моих возможностей, могу ли я сделать это в Lua, и какие SDK были бы наиболее полезны для достижения этой цели.

Ответы [ 3 ]

1 голос
/ 27 июля 2012

Рассматривали ли вы просто создание нового PDF-файла с использованием изображения формы в качестве фона для PDF-файла и просто запись данных пользователя в необходимые области поверх изображения формы. Уменьшит сложность попыток разбора оригинальной формы PDF-файлов.

1 голос
/ 02 декабря 2011

Исходя из того, что вы сказали, кажется, что нет оснований выполнять часть работы над мобильным устройством в формате PDF, поскольку:

  1. вам не нужнопокажите его на ipad
  2. , который вы планируете отправить по электронной почте, или сохраните его в облаке
  3. если вы напишите это для iOS, вам придется писать снова для Android, как вы упомянули

Можете ли вы упростить часть своих требований mobile , сосредоточившись на сборе и проверке данных, а затем отправившись на сервер для производства документов?Это даст вам гораздо больше гибкости в инструментах, которые вы можете использовать для объединения данных в PDF-документы.Если это так, вы можете посмотреть на создание PDF-файлов или заполнение полей из кода, используя что-то вроде iText (C # или Java).Если вы не хотите создавать свой собственный серверный сервер, вы можете попробовать что-то вроде Docmosis Cloud - но это может не позволить вам получить ваши точные макеты.

Конечно, улов, который вы упомянули- необходимость сохранять PDF-файлы редактируемыми со своими полями - существенная ошибка во всех случаях.Если вы сможете убедить заинтересованные стороны в том, что лучше генерировать итоговые документы из вашей системы (генерировать черновик, просматривать, обновлять данные, генерировать заново и т. Д.), А не создавать редактируемые документы, которые затем теряют контроль и отслеживание, тогда вы будетемиль впереди.

Надеюсь, это поможет.

0 голосов
/ 10 декабря 2011

Это вопрос стоит обсудить, но у нас нет идеального ответа.Я склонен думать об этом как о почти идеальном сценарии - его было бы значительно легче разработать.При таком подходе есть две ключевые проблемы, которые заставили нас его использовать, за исключением крайних случаев:

  1. Пользователи этого продукта будут работать в поле.Это поле может быть буквально где угодно - на улицах Манхэттена, в зоне бедствия с инфраструктурой, которая была серьезно повреждена или даже разрушена, или в самой разрушенной войной стране третьего мира.Если бы это были улицы, скажем, Манхэттена, нет проблем - их устройства iOS или Android будут иметь доступ к 3G или Wi-Fi практически везде, где бы они ни находились.В последних двух сценариях (которые, возможно, более распространены в этой отрасли), эта возможность подключения может быть очень ограниченной.Проблема заключается в том, будут ли возможности конечного пользователя работать продуктивно или видеть и обмениваться данными со своими коллегами, будут слишком сильно ограничены, если у них нет достойного сигнала.Хотя, честно говоря, даже сегодня они часто даже не используют мобильные устройства, вынуждая их возвращаться в местоположение типа штаб-квартиры или использовать радиоприемники для обмена информацией, фактически отрицая мою точку зрения здесь.Но если мы не собираемся значительно увеличивать их производительность в полевых условиях, это просто дает нам паузу, чтобы подумать, достаточно ли у нас ценностного предложения, чтобы попросить их довольно существенно изменить методы своей работы.

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

...