[GastForen Programmierung/Entwicklung AppleScript Convert To PDF

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Convert To PDF

Anonym
Beiträge gesamt: 22827

9. Okt 2004, 20:32
Beitrag # 1 von 6
Bewertung:
(1546 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

unter OS-X gibt es ein Script, das aus TIFF, JPEG u.s.w. ein PDF erzeugt, sozusagen ein "Pseudo-PDF"
Nun wird das PDF in einer festen Größe 216x279 erzeugt.
Frage:
Kann man das Format im Script ändern?

Hier das Script  "Convert to PDF"

property RadarProblem3258323IsFixed : false
property type_list : {"JPEG", "GIFf", "PICT", "TIFF", "PDF", "TEXT"}
property extension_list : {"jpg", "gif", "pct", "tif", "pdf", "rtf"}
--html is not currently handled

on run {}
 tell application "Finder"
  try
   set FinderSelection to the selection as alias list
  on error
   --Finder Scripting fails with one item (Radar problem 2741967)
   set FinderSelection to the selection
  end try
 end tell
 
 if RadarProblem3258323IsFixed then
  set FS to FinderSelection
  --Ideally, this list could be passed to the open handler
 else
  set FS to {}
  repeat with EachItem in FinderSelection
   copy EachItem as alias to end of FS
  end repeat
 end if
 
 set SelectionCount to number of FS -- count 
 if SelectionCount is 0 then
  set FS to userPicksFolder()
 else if the SelectionCount is 1 then
  set MyPath to path to me
  if MyPath is item 1 of FS then
   --If I'm a droplet then I was double-clicked
   set FS to userPicksFolder()
  end if
 else
  --I'm not a double-clicked droplet
 end if
 open FS
end run

on userPicksFolder()
 set these_items to {}
 set these_items to (choose file with prompt "Select a file to convert to PDF:" of type {"JPEG", "GIFf", "PICT", "TIFF", "TEXT", "RTF"}) as list
end userPicksFolder

on open these_items
 set thesefiles to {}
 set the item_info to {}
 repeat with i from 1 to the count of these_items
  set this_item to (item i of these_items)
  set the item_info to info for this_item
 
  if folder of the item_info is true then --if the item is a folder
   processFolder(this_item)
  else if ((folder of the item_info is false) and ¬
   (alias of the item_info is false)) and ¬
   (the file type of the item_info is in the type_list) or ¬
   ((the name extension of the item_info) is in the extension_list) then
   
   set theFilePath to (item i of these_items as string)
   set thePOSIXFilePath to POSIX path of theFilePath as string
   processFile(thePOSIXFilePath)
  end if
 end repeat
end open

--process folders
on processFolder(theFolder)
 set these_items to list folder theFolder without invisibles
 repeat with i from 1 to the count of these_items
  set this_item to alias ((theFolder as text) & (item i of these_items))
  set the item_info to info for this_item
  if folder of the item_info is true then
   processFolder(this_item)
  else if (alias of the item_info is false) and ¬
   ((the file type of the item_info is in the type_list) or ¬
    the name extension of the item_info is in the extension_list) then
   set theFilePath to (this_item as string)
   set thePOSIXFilePath to POSIX path of theFilePath as string
   processFile(thePOSIXFilePath)
  end if
 end repeat
end processFolder

on processFile(thePOSIXFileName)
 try
  set terminalCommand to ""
  set convertCommand to "/System/Library/Printers/Libraries/./convert "
  set newFileName to thePOSIXFileName & ".pdf"
  set terminalCommand to convertCommand & "-f " & "\"" & thePOSIXFileName & "\"" & " -o " & "\"" & newFileName & "\"" & " -j \"application/pdf\""
 
  do shell script terminalCommand
 end try
end processFile

vielleicht kannst Du erkennen wo die Größe festgelegt wird

Gruss willem
X

Convert To PDF

Hans Haesler
  
Beiträge gesamt: 5816

9. Okt 2004, 22:43
Beitrag # 2 von 6
Beitrag ID: #419103
Bewertung:
(1545 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Willem,

leider kann ich Dir nicht helfen.

Im Abschnitt, in welchem die PDF-Datei erzeugt wird, ist klar, dass es sich um einen Terminal-Befehl
handelt, welcher per 'do shell script? ausgeführt wird. Ich habe aber nicht herausgefunden, ob es einen
'man'-Eintrag dazu gibt. Aber die wichtige Datei 'convert' (ein "Unix Executable File") habe ich mit
BBEdit geöffnet und die Parameter, welche gebraucht werden, entdeckt.

Das '-f' ist der Name der Originaldatei, das '-o' der Name der PDF-Datei und das '-j' der Typ der Datei.
Und das ist es schon. Die Grösse des Bildes muss irgendwo in der Datei codiert sein.

Ich habe noch ein bisschen mit den nichtverwendeten Parametern experimentiert. Ein '-D' am Schluss
angefügt, lässt die Originaldatei spurlos verschwinden. Ein '-u' bewirkt nichts, was ich feststellen könnte.
Und da ist noch das '-a'. Aber da sollte man eine Attribut-Textkette anfügen. Doch wie diese formuliert
sein sollte …

Ich würde die Bilder je in ein XPress-Layout laden, die Seitengrösse der Bildgrösse anpassen und dann
ein PDF exportieren.

Hans Haesler <[email protected]>


als Antwort auf: [#419102]

Convert To PDF

Anonym
Beiträge gesamt: 22827

10. Okt 2004, 08:02
Beitrag # 3 von 6
Beitrag ID: #419104
Bewertung:
(1545 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

Danke Dir für die Mühe,
über Quark wird es wohl die zuverlässigste Methode sein.

Gruss willem


als Antwort auf: [#419102]

Convert To PDF

Hans Haesler
  
Beiträge gesamt: 5816

10. Okt 2004, 10:41
Beitrag # 4 von 6
Beitrag ID: #419105
Bewertung:
(1545 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Willem,

bitteschön.

Nur so als Anregung: Wenn eine Reihe von Bildern so behandelt werden soll, dann kann ich
mir ein Droplet vorstellen, auf welches die Bilddateien gezogen werden können. Für jede
würde ein Projekt erstellt, das Bild importiert und (nach Vorgaben) das Format der Bildgrösse
angepasst werden. Variante: für jedes Bild eine neue Seite im gleichen Projekt.
Wie gesagt: nur so als Anregung &#133;

Hans Haesler <[email protected]>


als Antwort auf: [#419102]

Convert To PDF

Anonym
Beiträge gesamt: 22827

12. Okt 2004, 20:11
Beitrag # 5 von 6
Beitrag ID: #419106
Bewertung:
(1545 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
hört sich gut an. Wenn man also ein Tiff auf das Droplet zieht, wird ein PDF gleichen Namens angelegt? habe ich das so richtig verstanden?
Nun, wenn  man dann noch einen Zielordner (immer gleich) bestimmen könnte wär es super.

Aber wie, ohne Quark oder Indesign zu Hilfe zu nehmen?
bin gespannt

Gruss willem


als Antwort auf: [#419102]

Convert To PDF

Hans Haesler
  
Beiträge gesamt: 5816

12. Okt 2004, 21:53
Beitrag # 6 von 6
Beitrag ID: #419107
Bewertung:
(1545 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Willem,
Zitat ... Wenn man also ein Tiff auf das Droplet zieht, wird ein PDF gleichen Namens angelegt? ...

Nun mal sachte! ;-)
Zitat Aber wie, ohne Quark oder Indesign zu Hilfe zu nehmen?

Nun &#133; ich sagte "Projekt" und meinte damit ein XPress-Ding.  Die Idee ist, erst Mal für jede Bilddatei ein Projekt
zu erstellen, das Bild zu importieren und das Layout an die Bildgrösse anzupassen.

Das Exportieren als PDF könnte man als separates Script anschliessend auslösen. Eventuell aber auch im gleichen Zug.
Müsste aber etwas herumprobieren.

Übrigens: Nachdem ich verschiedenes mit dem Script "Convert to PDF" angestellt hatte, fand ich am nächsten Tag
im Root-Verzeichnis der Harddisk eine Datei namens "-D". Das Icon war neutral. Nach einem Doppelklick darauf
öffnete sich eine PDF-Datei. Das Format: 64.9 X 52.2 mm. Die Grösse der kleinen Bilddatei, welche ich für die Tests
benutzte. Und das Bild füllte das ganze Format aus.

Ich habe daraufhin versucht, den Befehl wieder so zurechtzubiegen, damit die Datei nochmals so erzeugt würde. Aber
ohne Erfolg. Ich habe, ebenfalls vergeblich, versucht, die man-page, in welcher die Attribute erläutert wären, zu finden.
Vielleicht wende ich mich an die AS-users-Liste, in der Hoffnung, dass jemand Bescheid weiss.

Hans Haesler <[email protected]>


als Antwort auf: [#419102]
X

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022
Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022