Создание PDF файлов из группы файлов (JPG)
Select messages from
# through # FAQ
[/[Print]\]
Goto page 1, 2, 3  Next  :| |:
Total Commander -> Автоматизация Total Commander

#1: Создание PDF файлов из группы файлов (JPG) Author: beryaLocation: kiev PostPosted: Tue Nov 15, 2011 23:23
    —
Доброго времени суток.
Подскажите пожалуйста, если возможность написания скрипта для создания PDF файла из файлов находящихся в папке (в основном JPG)
Заранее спасибо.

#2:  Author: FlasherLocation: Москва PostPosted: Thu Nov 17, 2011 01:15
    —
Деньги готовим. Mr. Green

Увы, только шаровары:
Кнопка для Image to PDF Command Line Tool.
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\Image2PDF\Image2PDF.exe
-ImageList %L -Output %TFileName.pdf -FitImageToPageSize -PageSize "A5+Portrait" -OpenPDF
imageres.dll,159
Создать PDF-файл и поместить в него изображения выделенных файлов

Функций полно, только не все работают в демо-версии.

Для Image2PDF Command Line:
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\Image2PDF\img2pdf.exe
-p 1 -b -1 -r 40 -o %TFileName.pdf %P%S
imageres.dll,159
Создать PDF-файл и поместить в него изображения выделенных файлов

Для 3-Heights™ Image to PDF Converter Shell:
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\Image2PDF\img2pdf.exe
-c -sp 612 792 -f -d 300 -fi 3 %P%S %TFileName.pdf
Utils\Image2PDF\img2pdf.exe
Создать PDF-файл и поместить в него изображения выделенных файлов

1

Во всех случаях опции, естественно, выставляются по усмотрению.

Бесплатные
Pdftk, но там, как я понял, она вытаскивает картинки из других pdf, как и триальная CoherentPDF.
Add Image Tool в составе PDFedit-Tools - слишком простой набор, у меня не заработала.

Из неконсольных есть:
J2PDF (самый оптимальный вариант)
PDFForge Images2PDF
PDFill PDF Tools
AnyPic JPG to PDF Converter (Триал)
Softinterface® Convert Image to PDF (Триал)

COM-объекты типа таких (1, 2, 3, 4) цеплять не очень хочется.

Ну а такого бесплатного хлама в сети полно.

#3:  Author: beryaLocation: kiev PostPosted: Thu Nov 17, 2011 15:36
    —
Спасибо, будем искать варианты

#4:  Author: МоторокерLocation: г. Пермь (читается Перьмь) PostPosted: Mon Nov 21, 2011 14:50
    —
Irfan точно умеет в отдельные файлы конвертировать, наверняка в справке можно найти и мульти PDF вариант. Возможно, другие смотрелки тоже поддерживают такую конвертацию.

Добавлено спустя 31 минуту:

berya ответил в личку:
Quote:
IrfanView умеет, но не много страничные, по справке: делайте в многостраничный TIFF с последующей конвертацией в многостраничный PDF.
Сейчас разбираюсь с http://www.compulsivecode.com/jpegtopdf.html, вроде получается, но есть вопросы по именованию файла.

Выложить в общий пост не могу - новичков не пускают - если у Вас есть возможность - выложите ссылку.

#5:  Author: beryaLocation: kiev PostPosted: Mon Nov 21, 2011 15:41
    —
IrfanView умеет, но не много страничные, по справке: делайте в многостраничный TIFF с последующей конвертацией в многостраничный PDF.
Сейчас разбираюсь с compulsivecode.com/jpegtopdf.html, вроде получается, но есть вопросы по именованию файла.


TOTALCMD#BAR#DATA
"%COMMANDER_PATH%\Utilites\JPEGtoPDF\JPEGtoPDF.exe"
"%T%O.pdf" %P%S
%COMMANDER_PATH%\Utilites\JPEGtoPDF\JPEGtoPDF.exe
JPEGtoPDF


-1
Как можно присваивать имя фала по имени папки?

Добавлено спустя 9 минут:

в IrfanView в файле i_view32.ini нужно менять в разделе

[ImPDF]
ImpdfPreviewOn=1


заменить на
ImpdfPreviewOn=0

тогда можно конвертировать из командной строки без подтверждений.

i_view32.exe c:\*.jpg /convert=d:\temp\*.pdf



Но проблема в многостраничных PDF

#6:  Author: FlasherLocation: Москва PostPosted: Mon Nov 21, 2011 23:14
    —
Моторокер wrote:
Irfan точно умеет в отдельные файлы конвертировать, наверняка в справке можно найти и мульти PDF вариант. Возможно, другие смотрелки тоже поддерживают такую конвертацию.
Таких пофайловых конвертаторов полно. Что, собственно, и было названо хламом для сей задачи.

berya wrote:
IrfanView умеет, но не много страничные, по справке: делайте в многостраничный TIFF с последующей конвертацией в многостраничный PDF.
В общем-то, был ещё вариант делать одностраничные pdf, а потом их склеивать (с помощью Pdftk, например), но он мне что-то не очень понравился.
berya wrote:
Как можно присваивать имя фала по имени папки?
Скриптом. А если в одной папке несколько файлов? Я так понимаю, речь о родительской?

#7:  Author: beryaLocation: kiev PostPosted: Tue Nov 22, 2011 00:57
    —
Да, имя файла = имени папки из которой создавался PDF

#8:  Author: FlasherLocation: Москва PostPosted: Tue Nov 22, 2011 01:15
    —
Вопроса было 2..

#9:  Author: beryaLocation: kiev PostPosted: Tue Nov 22, 2011 01:19
    —
все файлы в папке - в конвертацию с последующим удалением

#10:  Author: FlasherLocation: Москва PostPosted: Tue Nov 22, 2011 01:25
    —
Стормозил. Файл-то один на выходе. Вопрос снимается.
Только вот опций у предоставленного интерпретатора нет. Это вообще никак не расстраивает? Я бы выложил 29$ за качественный продукт, если бы необходимость являлась частой.

#11:  Author: beryaLocation: kiev PostPosted: Tue Nov 22, 2011 01:35
    —
качество вполне устраивает - главное время и удобство склейки

#12:  Author: FlasherLocation: Москва PostPosted: Tue Nov 22, 2011 02:46
    —
Code:
'====================================================================================
' Сконвертировать выделенные графические файлы в один PDF с именем активного каталога

' Важно: если выбран только один файл, то конвертироваться будут все файлы
' c поддерживаемыми расширениями, расположенные в корне активного каталога

' Параметры: "<путь к редактору>" "<путь источника>" "<путь получателя>" %L
' Пример:    "%%COMMANDER_PATH%%\Utils\JPEGtoPDF.exe" "%P" "%T" %L
'====================================================================================
With WScript.Arguments
  If .Count = 0 Then WScript.Quit
  Edit = .Item(0)
  Path = .Item(1)
  Targ = .Item(2)
  List = .Item(3)
End With
If Right(Targ, 1) <> "\" Then Targ = Targ & "\"

Set D = CreateObject("Scripting.Dictionary")
For Each Ext in Split("BMP,GIF,JPG,JPEG,JP2,J2K,PNG,TIF,WMF,EMF", ",")
  D.Add Ext, ""
Next
With CreateObject("Scripting.FilesystemObject")
  Name = .GetFileName(Path)
  N = Name
  Const M = 1
  Do While .FileExists(Targ & Name & ".pdf")
    l = l + 1
    If l < 10^M Then PostFix = Right(String(M, "0") & l, M) Else PostFix = l
    Name = N & " (" & PostFix & ")"
  Loop
  Temp = Split(.OpenTextFile(List).ReadAll, vbNewLine)
  If UBound(Temp) = 1 Then
    For Each F in .GetFolder(Path).Files
      If D.Exists(Ucase(.GetExtensionName(F))) Then Pars = Pars & " """ & F & """"
    Next
  Else
    For Each F in Temp
      If F > vbNullString Then
        If D.Exists(Ucase(.GetExtensionName(F))) Then Pars = Pars & " """ & F & """"
      End If
    Next
  End If
  CreateObject("WScript.Shell").Exec Edit & " """ & Targ & Name & ".pdf""" & Pars
End With
Set D = Nothing
WScript.Quit
JPEGtoPDF

Last edited by Flasher on Wed Nov 23, 2011 04:15; edited 5 times in total

#13:  Author: beryaLocation: kiev PostPosted: Tue Nov 22, 2011 15:58
    —
Ошибка Windows Script Host

В "D:\Program" отсутствует расширение имени файла



И можно ли расширение JPG заменить на "все файлы" (*.*) - программа дружит и с TIFF и некоторыми другими графическими форматами?

#14:  Author: FlasherLocation: Москва PostPosted: Tue Nov 22, 2011 16:11
    —
Не вижу строки ошибки.
Я там случайно пробел в конце первого параметра вставил.

berya wrote:
И можно ли расширение JPG заменить на "все файлы" (*.*) - программа дружит и с TIFF и некоторыми другими графическими форматами?
Не знал. Убрал ограничение. А *.* - означает, что будут браться все файлы в папке бзе исключений. Оно надо?

#15:  Author: beryaLocation: kiev PostPosted: Tue Nov 22, 2011 16:19
    —
убирал пробел и до этого - не помогает. Выбор всех файлов нужен, так как в одной папке могут быть разные типы файлов и чертежи и текст и фотографии

Добавлено спустя 35 секунд:

кнопка:

Добавлено спустя 10 секунд:

Code:
TOTALCMD#BAR#DATA
"D:\Program Files\Total Commander\vbs\pdf.vbs"
"%%COMMANDER_PATH%%\Utils\JPEGtoPDF\JPEGtoPDF.exe" "%T" %P%S
C:\WINDOWS\System32\WScript.exe
pdf


-1


Last edited by berya on Tue Nov 22, 2011 16:56; edited 1 time in total



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page 1, 2, 3  Next  :| |:
Page 1 of 3

Powered by phpBB © 2001, 2005 phpBB Group