Некорректный экспорт в Pdf

YushininYushinin Воронеж
отредактировано August 2013 Раздел: FastReport 4.0
Здравствуйте, авторы.

Delphi XE4+ FR 4.14.3 (все белое и пушистое)

При экспорте любого отчета с графикой экспорт корректно срабатывает только один раз.
При повторном экспорте получается битый файл - Acrobat Reader его вообще не открывает, а Foxit показыает без картинок.

Путем экспериментов выяснено, что если в компоненте TfrxPDFExport вызывать метод CleanupInstance, то экспорт удается, но только один раз.
Если из просмотра отчета еще раз экспортировать - битый pdf!

Это "костыль", а хотелось бы решение.

Только просьба не затягивать с ответом, у меня клиенты в шоке,

PS: на Delphi XE + FR 4.11.15 все было OK.

С уажением, Сергей Юшинин.

Комментарии

  • YushininYushinin Воронеж
    отредактировано 20:26
    Ну среагируйте!
  • YushininYushinin Воронеж
    отредактировано September 2013
    Не дождался я ответа.
    В результате звонка в поддержку выяснилось, что форум, мол, "не официальный"!
    Надо тикет писать. Ну написал.
    Что ж тогда форум в вашем домене делает?
    Разговоры по душам сиротливых пользователей? :)
    Ну да ладно...

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

    Решение нашел такое:
    procedure TfrxPDFExport.Clear;
    var
      i: Integer;
    begin
      SetLength(FXObjects,0); // fixed pictures
      ...
    

    Теперь при каждом вызове экспорта массив чистится и картинки выводятся корректно.
    PS: Не уверен, что это идеальное решение, но глюки с экспортом прошли.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.