Любой хороший фильтр экспорта PDF, который работает с Fast Report? - PullRequest
6 голосов
/ 27 июля 2011

Недавно я обнаружил, что PDF-файлы, экспортируемые фильтром экспорта PDF Fast Report, не отображаются правильно на устройствах Mac OSX, iOS и Android.

Fast Report сообщил, что их реализация PDF поддерживает только Windows, и они могутНе скажу, когда будет доступна новая реализация, над которой они работают.

Я также пытался использовать фильтр экспорта Gnostice, но их демонстрационный установщик не работал в Delphi XE, и когда я связался с ними, ониПотребовалось 15 дней, чтобы прислать мне прикрепленный dcus, который тоже не работал.Поэтому я ищу другой вариант.

Если вы знаете или используете фильтр экспорта PDF, который работает с быстрым отчетом, сообщите мне.


Ноябрь 2015: У Fast Report теперь есть поддержка PDF / A , с этой опцией PDF отлично подходит для всех платформ.


Октябрь 2014 г. - Fast Report 5 по-прежнему генерирует "только для Windows" PDF.Готовое к работе решение этой проблемы было бы полезным для кроссплатформенных разработчиков, учитывая, что Fast Report является генератором отчетов в комплекте с Delphi.

Вот свежий пример, созданный с помощью демонстрации Fast Report 5, отображаемойс Adobe Reader 11 на Android 4.4:

enter image description here

и в Windows:

enter image description here

Ответы [ 6 ]

8 голосов
/ 27 июля 2011

Fast Report сообщил, что их реализация в формате pdf поддерживает только Windows, и они не могут сказать, когда будет доступна новая реализация, над которой они работают.

Я не уверен, что это следует понимать буквально, учитывая, что PDF должен быть кроссплатформенным форматом. Скорее всего, это означает, что на самом деле у них нет ни времени, ни оборудования, ни опыта для тестирования на этих платформах. Фильтр экспорта PDF, который я использую, встроен в быстрый отчет! Конечно, есть ошибки, но мне удалось их обойти. И я думаю, что это может сработать и для вас: начните с простого документа, который правильно экспортирует, начните добавлять функции, пока он не тормозит, затем вы знаете, что тормозит, и вы будете знать, как обойти проблему.

Из моего опыта вот что привело меня в беду:

  • Закругленные углы в документе PDF не были похожи на те, что были в предварительном просмотре быстрого отчета. Мое исправление: Найдено сочетание настроек, из-за которого экспортированный PDF-файл выглядел точно так же, как предварительный просмотр документа. Для меня закругленные углы были просто косметической особенностью, а с косметикой нет «One Look»; Альтернатива работала просто отлично. Это может быть исправлено в самой последней версии, но я не стал менять документ для проверки.
  • Вопросы прозрачности и общие вопросы. При работе с быстрым редактором отчетов (и при просмотре его превью) легко перекрывать объекты. Вы не видите этого из-за непрозрачности объекта. При экспорте в PDF перекрывающиеся объекты каким-то образом умудрялись «печатать» контуры, и это явно выглядело некрасиво. Мое исправление: уделите больше внимания этим объектам, убедитесь, что они не перекрываются, или убедитесь, что они не генерируют контуры, если не предполагается, что контуры видны.

Также убедитесь, что вы тестируете с помощью ADOBE Reader на любой из указанных платформ. Если он работает с ридером Adobe, но не работает с другими ридерами, это может быть ошибка в стороннем ридере!


Редактировать : Здесь (ссылка) - образец PDF-документа, созданного моим приложением Fast Reports. Я понятия не имею, какие документы вы генерируете, но в моей книге это очень сложный документ. Обратите внимание на диагональную линию, которая начинается там, где заканчиваются данные таблицы, обратите внимание на встроенные изображения (штрих-код, штамп, подпись).

Я открыл этот документ на следующих мобильных устройствах:

  • iPad, работает под управлением iOS: документ отображается на 90% нормально. Изображения не отображаются вообще, но они не важны для моего документа (и это, скорее всего, проблема с читателем iOS). Все причудливые цветные линии и закругленные углы правильно отображаются. Некоторый текст не отображается должным образом, и я уверен, что он не отображался, потому что «ящик», в котором он находится, слишком мал для содержимого. Скорее всего, это происходит потому, что я не встраивал шрифты TTF в PDF, а шрифт Apple на iOS не полностью соответствовал шрифту Microsoft, который использовался в Windows.
  • Samsung Galaxy S2, работающий под управлением Android 2.3: документ отображается правильно на 100%.
  • Samsung Something (??), работающий под управлением Windows Mobile 6.5 и FoxReader: документ полностью бессмысленный: показывались картинки, но интервал между буквами был настолько плох, что его невозможно прочитать. Я обвиняю читателя, это не Акробат, и он, вероятно, хотел быть «умным». И это сломало мне зубы в моей кодировке текста, потому что мой текст не английский.

О формате PDF: документ «PDF», если он соответствует стандарту, вот некоторая Википедия информация об этом. Теоретически PDF-документ должен выглядеть точно так же, как вы смотрите на него, но есть силы, которые могут с этим сработать:

  • Не все читатели являются "Adobe Acrobat". Теоретически все они совместимы, на практике они почти не совместимы на 100%.
  • PDF-файлы, в которые не встроены шрифты, зависят от шрифтов, доступных в хост-системе. Если они не совпадают со шрифтами, впереди проблемы, потому что они могут иметь немного отличающиеся размеры. Поскольку мы говорим о PDF-файлах, которые были сгенерированы в Windows и открыты на iOS или Android, очевидно, что это разные платформы, и они гарантированно используют разные шрифты (потому что шрифты лицензированы, и я сомневаюсь, что Microsoft предоставит лицензии на эти шрифты Apple. Я также сомневаюсь, что Apple захочет шрифты Microsoft). Одним из возможных решений является встраивание шрифтов, но это значительно увеличивает ваши PDF-файлы.
5 голосов
/ 27 июля 2011

AFAIK, вы можете экспортировать страницы быстрого отчета в виде метафайлов (т.е. векторный формат Windows, который фактически представляет собой необработанную сериализацию команд GDI).

Тогда вы сможете преобразовать эти метафайлы в PDF, используя наш Библиотека с открытым исходным кодом SynPDF .Он работает от Delphi 5 до XE, готов к Unicode, может встраивать шрифты истинного типа и даже создавать файлы PDF / A.

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

Посмотрите, например, , как его можно использовать для QuickReport .Аналогичный технический документ следует использовать с быстрым отчетом.

4 голосов
/ 02 августа 2011

Служба поддержки Gnostice ответила на мое электронное письмо, в котором я сообщил, что их пробный установщик не работает, и прислал мне несколько советов, в которых может быть проблема, и я смог установить его.

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

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

В итоге, основываясь на рекомендациях и после поиска других вариантов, чтобы найти заброшенные компоненты, которые не обновлялись годами, Gnostice eDocEngine был лучшим решением.

Просто надеюсь, что они сделают свой установщик немного более "дружественным к программисту", как если бы он жаловался на отсутствие модулей Fast Report в пути поиска. Я мог бы хотя бы понять, что происходит, вместо того, чтобы просто получить ошибку и обвинить их в том, что у них был пробный установщик, который не работал.

После замены фильтра и создания PDF-файлов с использованием компонента eDocEngine PDF-файлы теперь работают одинаково в iOS, OSX и Android.

0 голосов
/ 10 сентября 2014

Я использую wPDF из компонентов WPcubed, это действительно отличный продукт, хорошее соотношение цены и качества

0 голосов
/ 26 марта 2013

Вот мое обходное решение. Это не универсальный, но помог мне в моем случае. Основная идея: использовать в отчете шрифт с небольшим размером файла (я нашел Arial-подобный шрифт с кириллическим набором символов размером 57 КБ). Таким образом, экспортируемые файлы могут быть 100-200 кб. Подробности здесь: http://dev -doc.blogspot.com / 2013/03 / FastReport-4-шрифт-чтение-и-огромный-file.html

0 голосов
/ 27 июля 2011

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

...