Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > конвертация *.tif в *.pdf


Автор: RayR 24.9.2010, 15:11
Люди добрые, подскажите, пожалуйста нормальный компонент или способ преобразовать многостраничный *.tif файл в pdf-формат.
Пробовал пользоваться компонентом HotPDF, все хорошо, только регулярно вываливается с ошибкой, причем случайным образом.
пример:
Код

uses
  SysUtils, Graphics, Classes, HPDFDoc;

var
   HPDF: THotPDF;

begin
  HPDF:= THotPDF.Create(nil);
  try
    HPDF.AutoLaunch := false;                // PDF file will be shown automatically
    HPDF.FileName := 'TiffToPDF.pdf';       
    HPDF.BeginDoc;                          // Create PDF file

    HPDF.AddTiffFromFile( 'TiffSample.tif', icJpeg, tptResizePage ); //Add multipage tiff file

    HPDF.EndDoc;                            // Close PDF file
  finally
      HPDF.Free;
  end;
end.


На одном файле все работает нормально, но вот если этот код поставить в цикл, т.е. чтобы можно было преобразовать много файлов в цикле, то начинает вываливаться ошибка, причем случайным образом: может 100 файлов нормально сконвертировать, а на 101 выдать ошибку, может 3 и на 4 ошибка. Каждый раз количество файлов отличается, т.е. ошибки в коде преобразования нет, иначе бы отваливалась на первом же файле. Файлы для теста используются одни и те же. Может кто пользовался этим компонентом?

Буду очень благодарен за любую информацию.

Автор: Данкинг 24.9.2010, 15:27
А чем ты открываешь .tif? Вообще если открыл, то проще всего распечатать на виртуальном принтере вроде DoPDF.

Добавлено через 43 секунды
Понял, этим компонентом и открываешь. В общем, мой совет остаётся в силе в любом случае. smile 

Автор: RayR 24.9.2010, 15:30
Цитата(Данкинг @ 24.9.2010,  15:27)
А чем ты открываешь .tif? Вообще если открыл, то проще всего распечатать на виртуальном принтере вроде DoPDF.

Добавлено @ 15:27
Понял, этим компонентом и открываешь. В общем, мой совет остаётся в силе в любом случае. smile

По поводу DoPDF можешь подробнее рассказать, пожалуйста?


Да и хотелось бы обойтись без установки на клиентских компах дополнительного ПО (виртуальных принтеров и т.п.)

Автор: Данкинг 24.9.2010, 17:49
Цитата(RayR @  24.9.2010,  16:30 Найти цитируемый пост)
По поводу DoPDF можешь подробнее рассказать, пожалуйста?

http://www.dopdf.com/он бесплатный. Но устанавливать его, разумеется, придётся. smile Ещё вариант - через FastReport, т.е. грузить в Image картинку и её конвертить в PDF. Но на практике как работать с tif - не знаю, я так пробовал только с JPG.

Автор: RayR 27.9.2010, 08:16
Цитата(Данкинг @ 24.9.2010,  17:49)
Цитата(RayR @  24.9.2010,  16:30 Найти цитируемый пост)
По поводу DoPDF можешь подробнее рассказать, пожалуйста?

http://www.dopdf.com/он бесплатный. Но устанавливать его, разумеется, придётся. smile Ещё вариант - через FastReport, т.е. грузить в Image картинку и её конвертить в PDF. Но на практике как работать с tif - не знаю, я так пробовал только с JPG.



dopdf точно не подойдет: 30 000 файлов, и каждый вручную на принтер... легче застрелиться. 
По поводу FastReport надо посмотреть, может что получиться...
Есть еще идеи, господа программеры?

Автор: Данкинг 27.9.2010, 10:09
Цитата(RayR @  27.9.2010,  09:16 Найти цитируемый пост)
и каждый вручную на принтер... легче застрелиться. 

В смысле, вручную?

Автор: RayR 27.9.2010, 10:59
Цитата(Данкинг @ 27.9.2010,  10:09)
Цитата(RayR @  27.9.2010,  09:16 Найти цитируемый пост)
и каждый вручную на принтер... легче застрелиться. 

В смысле, вручную?

Поясни, плиз, с принтерами не работал напрямую, все как-то через fast report одиночные отчеты.

Автор: Данкинг 27.9.2010, 11:29
Цитата(RayR @  27.9.2010,  11:59 Найти цитируемый пост)
Поясни, плиз, с принтерами не работал напрямую, все как-то через fast report одиночные отчеты. 

Ну, посылаешь документ на принтер, только на не "обычный", а на DoPDF. 

Автор: RayR 27.9.2010, 12:21
Цитата(Данкинг @ 27.9.2010,  11:29)

Ну, посылаешь документ на принтер, только на не "обычный", а на DoPDF.

Так он же на каждом файле будет открывать окно с настройками печати и т.п., или это можно обойти, а как ему указать под каким именем должен быть сохранен файл?
Напоминаю, у меня более 30 000 файлов....

Автор: Данкинг 27.9.2010, 15:30
Цитата(RayR @  27.9.2010,  13:21 Найти цитируемый пост)
Так он же на каждом файле будет открывать окно с настройками печати и т.п.,

А, это да. Тогда только FastReport остаётся. smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)