[GastForen Programme Print/Bildbearbeitung Adobe InDesign ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

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

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Jens Naumann
Beiträge gesamt: 5170

1. Jul 2014, 08:06
Beitrag # 1 von 12
Bewertung:
(10255 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen zusammen,

ich habe gerade ein großes Projekt am Laufen, wo ich ständig einzelne Textzeilen in vordefinierte Tabellenformate umwandle mit dem Befehl „Text in Tabelle umwandeln“. Das funktioniert auch wunderbar bis auf eine Kleinigkeit: Die Tabellen werden immer 4 mm breit angelegt, sodass ich sie noch einmal anklicken und auf Spaltenbreite (58 mm) umstellen muss.

Gibt es irgendwo eine Einstellung, wo bei der Umwandlung der Wert 58 mm zu hinterlegen ist, damit ich nicht hunderte von Tabellen jeweils in der Spaltenbreite manuell anpassen muss? Ich habe leider nichts gefunden.
X

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Uwe Laubender
Beiträge gesamt: 5316

1. Jul 2014, 09:41
Beitrag # 2 von 12
Beitrag ID: #529080
Bewertung:
(10226 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, Jens!
Sind denn die Textzeilen so kurz, dass der Text vollständig in eine 4mm breite Zelle reinpasst?

Eigentlich sollte beim Umwandeln von Text in Tabellen die Tabellenbreite der Breite des Textrahmens entsprechen, in der der Text steht. Zuzüglich der Breite der rechten Umrandung der ersten Zelle.

Hast Du mehrere Zellen in der Tabellenzeile?

Welche InDesign-Version auf welchem Betriebssystem?

Um die Spaltenbreite einer jeden Tabelle in einem Textabschnitt auf die Breite 58 zu bekommen, könntest Du folgendes ExtendScript (JavaScript)-Snippet benutzen:

Etwas Text im Textabschnitt anwählen, dann das Script ausführen:

Code
app.selection[0].parentStory.tables.everyItem().columns.everyItem().width = 58; 



als Antwort auf: [#529076]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Jens Naumann
Beiträge gesamt: 5170

1. Jul 2014, 10:21
Beitrag # 3 von 12
Beitrag ID: #529082
Bewertung:
(10202 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,

vielen Dank für Deine Antwort.

Antwort auf [ Uwe Laubender ] Sind denn die Textzeilen so kurz, dass der Text vollständig in eine 4mm breite Zelle reinpasst?

Nein. Zur Verdeutlichung des Ablaufs habe ich einen Screenshot angehängt.
1. Ursprungsformatierung
2. Text markieren und Tabellenformat auswählen
3. entstandene Tabelle (4 mm breit)
4. korrigierte Tabellenbreite (58 mm), Höhe passt sich automatisch an

Antwort auf [ Uwe Laubender ] Hast Du mehrere Zellen in der Tabellenzeile?

Nein. Ziel ist es, einen sich anpassenden Hintergrund zu haben. Daher haben die meisten Tabellen exakt eine Zelle.

Antwort auf [ Uwe Laubender ] Welche InDesign-Version auf welchem Betriebssystem?

InDesign CS6, Version 8.0.2, MacOS X 10.7.5

Antwort auf [ Uwe Laubender ] Um die Spaltenbreite einer jeden Tabelle in einem Textabschnitt auf die Breite 58 zu bekommen, könntest Du folgendes ExtendScript (JavaScript)-Snippet benutzen:

Etwas Text im Textabschnitt anwählen, dann das Script ausführen …

Das ist eine nette Idee, aber leider unpraktikabel. Da meine Tabellen so klein dargestellt werden, dass ich keinen Text per Doppelklick markieren kann, ist der Aufwand, die Zelle aufzuziehen, den Text zu markieren und dann das Script zu starten mindestens so aufwendig wie die Zelle anzuklicken und den Breitenwert von 4 auf 58 mm zu ändern.


als Antwort auf: [#529080]
Anhang:
text-in-tabelle.jpg (179 KB)

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Uwe Laubender
Beiträge gesamt: 5316

1. Jul 2014, 10:53
Beitrag # 4 von 12
Beitrag ID: #529084
Bewertung:
(10186 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, Jens!

Ich hab' mich vielleicht etwas unklar ausgedrückt.

Das Script wendest Du an, wenn Du etwas Text außerhalb der Tabelle auswählst. Dann werden in einem Rutsch alle Tabellen des Textabschnitts bearbeitet, in dem der Text angewählt ist.

Also: erst mal alle Tabellen erzeugen, dann das Script starten.


als Antwort auf: [#529082]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Quarz
Beiträge gesamt: 3555

1. Jul 2014, 11:03
Beitrag # 5 von 12
Beitrag ID: #529085
Bewertung:
(10175 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jens,

von dtp gibt es ein wunderbares PlugIn,
das Dein Problem über ein AF lösen würde.


Gruß
Quarz

-------------------------------------
Win7 | InDesign CS6 ver 8.02



als Antwort auf: [#529084]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Jens Naumann
Beiträge gesamt: 5170

1. Jul 2014, 11:07
Beitrag # 6 von 12
Beitrag ID: #529086
Bewertung:
(10164 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,

danke für den Hinweis, das macht es natürlich einfacher. Ein Problem bleibt, das ich beim Ausprobieren festgestellt habe. Ich habe ein paar Tabellen dabei, die auch mal aus zwei oder eventuell mehr Zellen nebeneinander (hauptsächlich zwei) bestehen. Und da der gesamte Text über 100 Seiten im Textabschnitt steht, werden hier alle Zellen jeweils auf 58 mm Breite gesetzt. Kann man die Breiteneinstellung auf einzellige Tabellen beschränken?


als Antwort auf: [#529084]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Uwe Laubender
Beiträge gesamt: 5316

1. Jul 2014, 11:48
Beitrag # 7 von 12
Beitrag ID: #529088
Bewertung:
(10128 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, Jens!

Aber ja doch. Das lässt sich beschränken:

Code
var allTablesOfStory = app.selection[0].parentStory.tables.everyItem().getElements(); 

for(var n=0;n<allTablesOfStory.length;n++){

if(allTablesOfStory[n].columns.length === 1){
allTablesOfStory[n].columns[0].width = 58;
};

};


Noch besser wäre natürlich ein Script zu schreiben, das alle Absätze, sofern sie ein eindeutig identifizierbares Merkmal aufweisen, gleich korrekt in eine Tabelle umwandeln. Auch möglich.


als Antwort auf: [#529086]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Jens Naumann
Beiträge gesamt: 5170

1. Jul 2014, 12:53
Beitrag # 8 von 12
Beitrag ID: #529091
Bewertung:
(10083 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,

Hammer – Danke! Ich hab’s mir auf ’nen Tastaturkürzel gelegt. Damit geht’s gleich viel schneller.

You saved my day – zumindest ein paar Minuten davon.


als Antwort auf: [#529088]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Karsten Lange
Beiträge gesamt: 203

2. Jul 2014, 13:42
Beitrag # 9 von 12
Beitrag ID: #529157
Bewertung:
(9953 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jens,

ich denke zumindest eine Erklärung für deine 4mm breiten Spalten liefern zu können: Wenn in dem Absatzformat mit welchem der Text formatiert ist Tabulatoren definiert sind, verwendet ID diese Tabulatorenwerte gleich für die Spaltenbreiten. Vermutlich steht also bei dir der erste Tabulator im AF auf 4mm.
Für die Breite der ersten Spalte zieht ID den Wert "Einzug links" vom Wert des ersten Tabulators übrigens ab. Der Tabulator könnte also auch auf 6mm stehen bei einem Einzug links von 2mm.

Gruß Karsten.


als Antwort auf: [#529076]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Uwe Laubender
Beiträge gesamt: 5316

2. Jul 2014, 14:51
Beitrag # 10 von 12
Beitrag ID: #529164
Bewertung:
(9931 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, Karsten!

Danke für die Erklärung.
Kann ich nachvollziehen!


als Antwort auf: [#529157]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Uwe Laubender
Beiträge gesamt: 5316

2. Jul 2014, 14:55
Beitrag # 11 von 12
Beitrag ID: #529166
Bewertung:
(9930 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Und: so lassen sich Spaltenbreiten für Tabelen auch vorbereiten.
Einfach die gewünschten Breiten im Absatzformat eintragen. Dann den Absatz, der die gewünschte Anzahl von Tabulatoren enthält in eine Tabelle wandeln.


als Antwort auf: [#529164]

ID CS6: Text in Tabelle, Tabellenbreite = Spaltenbreite

Ollymac
Beiträge gesamt: 235

19. Dez 2018, 18:59
Beitrag # 12 von 12
Beitrag ID: #568129
Bewertung:
(5667 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Und: so lassen sich Spaltenbreiten für Tabelen auch vorbereiten.
Einfach die gewünschten Breiten im Absatzformat eintragen. Dann den Absatz, der die gewünschte Anzahl von Tabulatoren enthält in eine Tabelle wandeln.


Cooly! Genau die Info, die mein Leben in den nächsten Tagen leichter machen wird.
Herzlichen Dank, Olly


als Antwort auf: [#529166]
X