[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt automatisiertes platzieren/importieren von word-files

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

automatisiertes platzieren/importieren von word-files

itseasy
Beiträge gesamt: 8

20. Feb 2012, 21:00
Beitrag # 1 von 11
Bewertung:
(4675 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Gemeinde,

ich stehe vor dem nächsten Problem. Ein enstprechendes Script - oder einen für mich nachvollziehbaren Ansatz - habe ich hier leider nicht gefunden. Evt. ist dies auch gar nicht möglich?!

Ich finde auch nichts richtiges in der CS 4 JavaScript Reference Guide.

Mein Ziel ist es, ein 350 Seiten starkes, A4 Word-Dokument in ein Indesign zu platzieren/Importieren. Am Ende des Scripts möchte ich dann ein InDesign Dokument haben, welches 350 Pages hat. Und auf jeder Page die entsprechende Word-Seite.

Die Platzierung sollte m.E. ja immer links/oben 0/0 sein, wenn beide dokumente die gleichen maße haben, oder?!

Ich habe ja schon die "Word RTF import preferences" gefunden, wo ich wohl den Import steuern kann. Aber dort kann ich z.B. nicht erkennen, dann die jeweilge A4-Word auf der jeweiligen A4-Indesign-Page platzierzt wird.

In der Hoffnung dass es nur ein paar Scriptzeilen sind und mir jemand weiterhelfen kann und möchte..

Das spätere seitenweise Exportieren zu SWF habe ich dank eines Scripts von Martin Fischer bereits super gelöst..

mfG

Ivo
X

automatisiertes platzieren/importieren von word-files

Martin Fischer
  
Beiträge gesamt: 12783

20. Feb 2012, 22:49
Beitrag # 2 von 11
Beitrag ID: #490374
Bewertung:
(4655 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ivo,

auf welchem Betriebssystem bist Du unterwegs?
Bist Du, was die Skriptvorlage betrifft, etwas flexibel?

Im Skriptarchiv gibt es ein AppleScript placeSelectedFiles.as für ID CS3, das in etwa das macht, was Du Dir vorstellst.
Kannst Du Dich an diesem Code entlanghangeln und die Entsprechungen für JavaScript herausfinden?

Grob geht es um folgende Schritte:
1. Verzeichnis mit Word-Dateien auswählen Folder.selectDialog()
2. Word-Dateien ermitteln Folder.getFiles( '*.doc' )
3. Dateien in einer Schleife platzieren Page.place( _file, [left_margin, top_margin], undefined, false, true)
4. bei Bedarf eine neue Seite einfügen Doc.pages.add()


als Antwort auf: [#490370]

automatisiertes platzieren/importieren von word-files

olaflist
Beiträge gesamt: 1400

21. Feb 2012, 00:26
Beitrag # 3 von 11
Beitrag ID: #490377
Bewertung:
(4634 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Warum erwartest Du, dass 350 Seiten Word genau 350 Seiten Indesign ergeben? Was genau hast Du vor?

Olaf


als Antwort auf: [#490370]

automatisiertes platzieren/importieren von word-files

itseasy
Beiträge gesamt: 8

21. Feb 2012, 07:42
Beitrag # 4 von 11
Beitrag ID: #490381
Bewertung:
(4596 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
@Martin:
Vielen Dank für den Hinweis. Bin selbst mit Windows unterwegs. Es soll aber auch auf einem Apple zum Einsatz kommen. Ich werde mir das Script ansehen und mich ausprobieren. Ich denke ich bin ein ganz guter Autodidakt, nur wenn mir so ganz die Ansätze fehle.. Ich berichte an dieser Stelle!

@Olaf:
Ja, ich weiß schon worauf du hinaus willst. Vermutlich kann (und wird) es Unstimmigkeiten beim Übernehmen von Formatierungen geben, richtig? Na sollten diese schwerwiegend sein, gäbe es noch einen Workflow, in dem ich erst aus Word in PDF konvertiere und dann alle PDF Seiten in InDesign einfüge.

Mein Ziel ist es letzten Endes zu jeder Einzelseite ein Einzel-SWF zu bekommen. Egal ob das ursprüngliche Ausgangsformar Word oder PDF war - bei immer gleichbleibendem Format wohlbemerkt. Denn ich hoffe (bisher), dass doch wohl eine "DIN A4 Seite" in Word exakt auf eine DIN A4 Seite in InDesign platzierbar ist - ohne Größenanpassungen. Das gleiche auch über den möglichen Umweg PDF.

Idealerweise übertrage ich noch den "echten" und somit selektierbaren, suchbaren Flashtext bis ins letzte Format (SWF). Dies ist aber nicht mal höchste Priorität.

beste Grüße am Morgen

Ivo


als Antwort auf: [#490377]

automatisiertes platzieren/importieren von word-files

Martin Fischer
  
Beiträge gesamt: 12783

21. Feb 2012, 07:46
Beitrag # 5 von 11
Beitrag ID: #490383
Bewertung:
(4592 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Warum erwartest Du, dass 350 Seiten Word genau 350 Seiten Indesign ergeben?


In meiner Antwort oben hatte ich das autoflowing-Attribut des place()-Befehls im Fokus.

place (fileName: File[, placePoint: Array of Measurement Unit (Number or String)=any][, destinationLayer: Layer][, showingOptions: bool=false][, autoflowing: bool=false][, withProperties: Object])

Freilich bedarf es zur 1:1 Entsprechung der Seiten in Word und InDesign eines entsprechenden Steuerungsbefehls zum Umbruch auf eine neue Seite: als Seitenumbruch-Steuerzeichen oder als Umbruchoption 'Beginn auf neuer Seite' eines Absatzes.


als Antwort auf: [#490377]

automatisiertes platzieren/importieren von word-files

Martin Fischer
  
Beiträge gesamt: 12783

21. Feb 2012, 07:53
Beitrag # 6 von 11
Beitrag ID: #490384
Bewertung:
(4590 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Denn ich hoffe (bisher), dass doch wohl eine "DIN A4 Seite" in Word exakt auf eine DIN A4 Seite in InDesign platzierbar ist - ohne Größenanpassungen. Das gleiche auch über den möglichen Umweg PDF.


InDesign sind Beispiel-Skripte beigelegt.
Darunter befindet sich PlaceMultipagePDF.jsx, womit alle Seiten einer PDF-Datei in einem InDesign-Dokument platziert werden können.


als Antwort auf: [#490381]

automatisiertes platzieren/importieren von word-files

olaflist
Beiträge gesamt: 1400

21. Feb 2012, 10:03
Beitrag # 7 von 11
Beitrag ID: #490395
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo itseasy,

wenn ich ehrlich bin, klingt das ziemlich gruselig :-)

Da wurde ich in der Tat lieber PDFs aus Word generieren und die dann (auf welchem Wege auch immer) dazu überreden, dass SWF draus wird.

Außer der Textinhalt ist eher trivial, und Du hast keine frei schwebenden Objekte in Wordm usw. usf. eignet sich ein 350-Seitenimport schnell dazu, einem den ganzen Tag zu verhunzen....

In diesem Sinne viel Glück!

Olaf


als Antwort auf: [#490381]

automatisiertes platzieren/importieren von word-files

itseasy
Beiträge gesamt: 8

23. Feb 2012, 09:47
Beitrag # 8 von 11
Beitrag ID: #490560
Bewertung:
(4466 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

erstmal Entschuldigung für meine verzögerte Antwort! Diese zeugt nicht von Desinteresse sondern vielmehr anderweitigen Arbeitsstreß.

Also, Martin und Olaf, vielen Dank für eure Hinweise, ich werde es wohl wirklich sein lassen, die Word-Dokumente direkt in ID zu importieren.

Es scheint wirklich viel einfacher, erst PDF´s zu generieren und diese dann zu importieren.

@Martin: PlaceMultipagePDF.jsx - na das hört sich ja exakt nach dem an, wonach ich suche! Ich werde das heute oder morgen gleich testen.

Dabei fällt mir gleich noch eine Frage an ein, auch wenn Sie nicht ganz zu diesem Thema passt:
Gibt es einen "Befehl" oder einen universellen Ansatz um so etwas wie eine Fortschrittsanzeige zu basteln?

Ich habe ja dieses modifizierte Script von Martin Fischer welches alle Seiten zu SWF exportiert (eachPageAsSWF). Das funktioniert auch super. Nur wenn man gute 300 Seiten exportiert dauert das ja einen Moment. Und ich hätte gern, das während des Exportiervorgangs ein Fenster mit einer Fortschrittsanzeige erscheint.

Hat da einer einen Denkanstoß für mich? mit alert, prompt, etc. gehts ja logischerweise nicht.

beste Grüße

ivo


als Antwort auf: [#490384]

automatisiertes platzieren/importieren von word-files

WernerPerplies
Beiträge gesamt: 2762

23. Feb 2012, 10:01
Beitrag # 9 von 11
Beitrag ID: #490561
Bewertung:
(4460 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ivo,

Zitat Hat da einer einen Denkanstoß für mich? mit alert, prompt, etc. gehts ja logischerweise nicht.

-> GUI -> Progressbar

Ergänzung:

Ich mache das so:
Code
// progressbar 
/*void*/function updateProgressBar(/*progrssBar*/pBp, /*int*/value, /*string*/text, /*int*/maxValue)
{
if (value != null )
{
pBp.pB.value = value;
if (File.fs == "Macintosh") pBp.update();
}
if (text != null )
{
pBp.text = text;
}
if (maxValue != null ) pBp.pB.maxvalue = maxValue;
}
/*progressBarPanel*/function showProgressBar(/*string*/progressBarTitle, /*string*/text,
/*int*/maxValue, /*array*/location, /*boolean*/show)
{
var pBp = new Window("palette", progressBarTitle,undefined, {closeButton:false});
pBp.location = [location[0]+30,location[1]+100];
pBp.pB = pBp.add("progressbar");
pBp.pB.size = [400,20];
pBp.pB.maxvalue = maxValue;
if (show==null) pBp.show(maxValue);
else if (show) pBp.show(maxValue);
return pBp;
}


Einrichtung in etwa so:
var progressBar = showProgressBar("mache etwas", "",
1000, [10,10], true);

// innerhalb der Schleife aktualisieren:
updateProgressBar(progressBar, i (Schleifencounter));

// am Ende:
if (progressBar!=null) {progressBar.close(); progressBar=null; }

HTH


als Antwort auf: [#490560]
(Dieser Beitrag wurde von WernerPerplies am 23. Feb 2012, 10:12 geändert)

automatisiertes platzieren/importieren von word-files

itseasy
Beiträge gesamt: 8

23. Feb 2012, 21:58
Beitrag # 10 von 11
Beitrag ID: #490672
Bewertung:
(4412 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Werner,

vielen Dank für dein Scriptbeispiel! Musste ein wenig grübeln und fummeln, aber nun klappt es wunderbar! :)

Das fertige Script folgt unten (für alle die ggf. ähnliche Schwierigkeiten haben und diesen Post finden)

Eine Frage ist allerdings erst jetzt entstanden:
Ist es überhaupt möglich in ID ein PDF zu importieren/platzieren und dabei den "echten Text" des PDF´s beizubehalten? Denn in meinen Versuchen wird der Text des PDF´s, welcher dort definitiv eingebettet ist und somit suchbar, selektierbar usw. ist innerhalb des ID-Dokumentes gerastert angezeigt. Bedeutet "Platzieren" etwa in jedem Fall, dass was-auch-immer-man-platziert unweigerlich zu einem Grafikobjekt wird?

Das wäre ein großes Problem für mich, denn Ziel aller Anstrengungen ist ja, in den am Ende erzeugten SWF´s (welche in einem FlippingBook dargestellt werden) Text auch suchen und vor allem heran zommen zu können.

Die Option im Exportdialog "InDesign-Text zu Flashtext" wird es wohl nicht sein, da diese sich ja gleichlautend auf InDesign-Text bezieht.

Wisst ihr was ich meine? Gibt es da einen Lösungsansatz?

--------------

Hier nun das Script "ExportEachPageAsSWF"
Code
function updateProgressBar(pBp,  value, text, maxValue)  
{
if (value != null ) pBp.pB.value = value;
if (text != null ) pBp.text = text;
if (maxValue != null ) pBp.pB.maxvalue = maxValue;
}

function showProgressBar(progressBarTitle, text, maxValue, location, show)
{
var pBp = new Window("palette", progressBarTitle,undefined, {closeButton:false});
pBp.location = [location[0]+30,location[1]+100];
pBp.pB = pBp.add("progressbar");
pBp.pB.size = [400,20];
pBp.pB.maxvalue = maxValue;
if (show==null) pBp.show(maxValue);
else if (show) pBp.show(maxValue);
return pBp;
}


if ( Number((app.version +"").substr(0,1)) < 6)
{
alert('Das Skript erfordert InDesign CS4 oder höher.');
exit();
}


var d = app.documents.firstItem();

var f = Folder.selectDialog( "Bitte Speicherort für SWF-Einzelseiten auswählen:" );

if (f != null)

{

app.swfExportPreferences.dynamicDocumentExportReaderSpreads = false;
var base_name = f.fullName + '/seite_';

var flash_file = new File(base_name + d.pages.firstItem().name + '.swf');
app.swfExportPreferences.pageRange = d.pages.firstItem().name;
d.exportFile(ExportFormat.SWF, flash_file, true);

var progressBar = showProgressBar("Fortschritt", "Exportiere Einzelseiten zu SWF",d.pages.length, [10,10], true);

for (var i = 1; i < d.pages.length; i++)
{
var flash_file = new File( base_name + d.pages.item(i).name + '.swf');
app.swfExportPreferences.pageRange = d.pages.item(i).name;
d.exportFile(ExportFormat.SWF, flash_file, false);
updateProgressBar(progressBar, i,"Exportiere Seite "+i);
}
if (progressBar!=null) {progressBar.close(); progressBar=null; }
alert('Export erfolgreich!\n\nEs wurden ' + i + ' SWF-Einzelseiten unter ' + f.fullName + '/ abgelegt.');
} else {
if (f == null) {
alert('Kein gültiges Verzeichnis ausgewählt!\n\nVorgang abgebrochen.');
}

}



als Antwort auf: [#490561]

automatisiertes platzieren/importieren von word-files

WernerPerplies
Beiträge gesamt: 2762

24. Feb 2012, 06:00
Beitrag # 11 von 11
Beitrag ID: #490675
Bewertung:
(4384 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ivo,

freut mich, dass ich helfen konnte.
Zitat Ist es überhaupt möglich in ID ein PDF zu importieren/platzieren und dabei den "echten Text" des PDF´s beizubehalten?

Diese Frage muss Dir jemand anders beantworten, da kann ich Dir keine verbindliche Antwort geben.

Es würde mich aber überraschen, wenn es möglich wäre.

Warum verwendest Du eigentlich keinen der vielen Word2SWF-Konverter?


als Antwort auf: [#490672]
X