Forenindex » Programme » Print/Bildbearbeitung » Adobe InDesign Skriptwerkstatt » Bilder einbetten, HTML export

Bilder einbetten, HTML export

WhiteRabbit
Beiträge gesamt: 23

3. Mär 2020, 15:22
Bewertung:

gelesen: 6976

Beitrag als Lesezeichen
Hallo allerseits,
bin noch ein absoluter Neuling was Scripts betrifft, aber es ist echt ne super Sache wenn es funzt.
Ich habe hier ein Script zusammengeschrieben....

Es ist in Indesign ein Tastenkürzel für dieses Script hinterlegt welches dann vor dem Schließen des Dokumentes ausgelöst wird. Es bettet die verbauten Bilder ein und exportiert eine HTML-Datei an den Speicherort des Indd.-Dokumentes. Soweit alles gut.

Nun habe ich in Indesign ausserhalb des Dokuments ein Textfeld dort war zufällig Text markiert. Jetzt hat das Script nur diesen markierten Text in HTML exportiert. Obwohl bei den Export-Einstellungen HTML unter Allgemein - Exportieren Dokument ausgewählt ist. Wo liegt hier jetzt der Fehler ?

Wenn ich im Script false gegen true ersetze erfolgt eine Abfrage der Export-Einstellungen welche ich unverändert bestätige dann funzt. Ich möchte aber diese Abfrage nicht.

das Script:

// Bilder einbetten
app.activeDocument.links.everyItem().unlink();

// das Dokument im Vordergrund
var curDoc = app.documents[0];

// den Suffix vom Dokumentnamen abtrennen
var curName = curDoc.name.split(".")[0];

// der Pfad zum Ordner, in welchem sich das Dokument befindet
try {
// wenn das Dok nicht gespeichert wurde, wirft diese Zeile einen Fehler
var fPath = curDoc.filePath;
}
catch (e) {
alert ("Achtung:\rDas Dokument wurde noch nicht gespeichert!");
exit();
}

// Verweis auf die neue Datei
var theFile = (File(fPath + "/" + curName + ".html"));

// der eigentliche Export
curDoc.exportFile(ExportFormat.html , theFile , false);

// Dokument schliessen
curDoc.save().close()

Bilder einbetten, HTML export

Uwe Laubender
Beiträge gesamt: 5316

5. Mär 2020, 16:20
Bewertung:

gelesen: 6819

Beitrag als Lesezeichen
Hallo WhiteRabbit,
dann würde ich explizit die Exportvoreinstellungen im Skript setzen:

Code
curDoc.htmlExportPreferences.exportSelection = false; 


Siehe DOM-Doku InDesign 2020 hier:
https://www.indesignjs.de/...xportPreference.html

Falls das nicht klappt, hast Du vermutlich einen Bug entdeckt.
*****
Mit herzlichem Gruß,
Uwe Laubender

Bilder einbetten, HTML export

WhiteRabbit
Beiträge gesamt: 23

5. Mär 2020, 16:58
Bewertung:

gelesen: 6805

Beitrag als Lesezeichen
Vielen Dank für die Antwort.

Habe die Zeile im Script über dem Exportbefehl eingefügt.
Aber leider dasselbe Ergebnis.
Er exportiert den "versehentlich" markierten Text ausserhalb des Dokumentes. Habe nochmals überprüft es ist bei der Export-Einstellung HTML in Allgemein Exportieren Dokument ausgewählt.

Sollte es wirklich ein Bug sein ?

Bilder einbetten, HTML export

WernerPerplies
Beiträge gesamt: 2762

5. Mär 2020, 17:41
Bewertung:

gelesen: 6792

Beitrag als Lesezeichen
Hallo WhiteRabbit,

würde zwar nur das Symton behandeln, aber vielleicht hilft es:
Code
app.selection = NothingEnum.NOTHING 


Einen schönen Tag wünscht

Werner Perplies
Praxisnahe Skript-Lösungen und Skript-Programmierung für Adobe InDesign
Aktuelles (Stand: 14.02.2024)
Kundenstimmen

Bilder einbetten, HTML export

WhiteRabbit
Beiträge gesamt: 23

5. Mär 2020, 18:52
Bewertung:

gelesen: 6780

Beitrag als Lesezeichen
Hallo Werner,
super vielen Dank - habe es in mein Script eingebaut und es funzt.

Hier nochmal das Script mit der Zeile von Uwe Laubender und deiner Zeile eingebaut.


Code
// Bilder einbetten  
app.activeDocument.links.everyItem().unlink();

// das Dokument im Vordergrund
var curDoc = app.documents[0];

// den Suffix vom Dokumentnamen abtrennen
var curName = curDoc.name.split(".")[0];

// der Pfad zum Ordner, in welchem sich das Dokument befindet
try {
// wenn das Dok nicht gespeichert wurde, wirft diese Zeile einen Fehler
var fPath = curDoc.filePath;
}
catch (e) {
alert ("Achtung:\rDas Dokument wurde noch nicht gespeichert!");
exit();
}

// Verweis auf die neue Datei
var theFile = (File(fPath + "/" + curName + ".html"));

// der eigentliche Export
app.selection = NothingEnum.NOTHING
curDoc.htmlExportPreferences.exportSelection = false;
curDoc.exportFile(ExportFormat.html , theFile , false);

// Dokument schliessen
curDoc.save().close()


Schönen Abend!