powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FastReport и экспорт в PDF
7 сообщений из 7, страница 1 из 1
FastReport и экспорт в PDF
    #39592610
AndrewMI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет! Может кто подскажет.
FastReport 4.9 при выгрузке в PDF получаются очень большие файлы. Отчеты по > 1000 страниц выходят около 1 Гб.
Пробовал заменить на экспорт в PDF от Synopse (SynPDF). Файл уменьшился в разы, но некорректно отображаются некоторые элементы отчета, например те, где есть html-теги. Пытался использовать разные настройки, но заметного улучшения не добился.
Кто сталкивался? Подскажите, как можно решить?
Возможно, в 5-х версиях экспорт в PDF сжимает лучше, но пока возможности приобрести нет.
...
Рейтинг: 0 / 0
FastReport и экспорт в PDF
    #39592677
gpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте использовать PDF-принтер. В пятой версии экспорт TfrxMemoView c HTML-тэгами аналогичный. Изменения сделаны только в шестой версии
...
Рейтинг: 0 / 0
FastReport и экспорт в PDF
    #39592709
AndrewMI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gpi, да, так пока и делаю. Использую встроенный в Win10 принтер. Спасибо.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
FastReport и экспорт в PDF
    #40045346
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обратная задача
FastReport 4.9 - можно ли выгрузить в пдф, чтобы каждая страница была цельная картинкой
...
Рейтинг: 0 / 0
FastReport и экспорт в PDF
    #40045416
Сергей Фролов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreymx
FastReport 4.9 - можно ли выгрузить в пдф, чтобы каждая страница была цельная картинкой

Из коробки - нет.
А так печатаешь каждую страницу, вместо Canvas от принтера на Canvas твоей картинки. А потом добавляешь полученную картинку в PDF (например через SynPDF).
...
Рейтинг: 0 / 0
FastReport и экспорт в PDF
    #40045422
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как то так, я накидал немного:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
type  
  TImageExport = class(TfrxCustomExportFilter)
  private
    FPageNumber : integer; 
    FBmp        : TBitmap;
    
    procedure EndPageAndSave();
  public
    constructor Create(AOwner: TComponent); override;
    destructor  Destroy(); override;  
  
    function    Start: Boolean; override;
    procedure   ExportObject(Obj: TfrxComponent); override;
    procedure   StartPage(Page: TfrxReportPage; Index: Integer); override;
    procedure   Finish; override;
  end;
  
//------------------------------------------------------------------------------
constructor TImageExport.Create(AOwner: TComponent);
begin
   FBmp := TBitmap.Create();
end;
//------------------------------------------------------------------------------
destructor TImageExport.Destroy();
begin
   FBmp.Free();
end;
//------------------------------------------------------------------------------  
function TImageExport.Start: Boolean;
begin
  FBmp.Width:=0;
  FBmp.Height:=0;
  
  FPageNumber := -1; // start with 0
  //TODO: Start PDF Document
end;  
//------------------------------------------------------------------------------
procedure TImageExport.ExportObject(Obj: TfrxComponent);
begin
   TfrxView(Obj).Draw(FBmp.Canvas,1,1,0,0 ); // ScaleX, ScaleY, OffX, OffY
end;
//------------------------------------------------------------------------------
procedure TImageExport.EndPageAndSave();
begin
   //TODO: FBmp ===> PDF-Page
end;
//------------------------------------------------------------------------------
procedure TImageExport.StartPage(Page: TfrxReportPage; Index: Integer);
begin
  inc(FPageNumber);

  if FPageNumber>0 then EndPageAndSave();

  //fPaperWidthInch := Page.PaperWidth / 25.4;
  //iDesignDPI      := Round(Page.Width / lPaperWidthInch);

  FBmp.Width:=Round(Page.Width);
  FBmp.Height:=Round(Page.Height);

  //TODO: Start PDF Page
end;
//------------------------------------------------------------------------------
procedure TImageExport.Finish(); override;
begin
   if FPageNumber>=0 then EndPageAndSave();
   //TODO: Save PDF Document and close
end;  
//------------------------------------------------------------------------------
...
Рейтинг: 0 / 0
FastReport и экспорт в PDF
    #40045434
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо, коллеги
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FastReport и экспорт в PDF
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]