[GastForen Programme Print/Bildbearbeitung Adobe InDesign Absätze mit bestimmtem Einzug finden

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

Absätze mit bestimmtem Einzug finden

jean matua bustamant
Beiträge gesamt: 185

11. Jun 2012, 20:07
Beitrag # 1 von 15
Bewertung:
(6280 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo

Ich würde in einem aus Wordimport entstandenen Text gerne alle Absätze, denen ein bestimmter Einzug zugewiesen ist, finden (um sie mit einem Absatzformat zu belegen). Tatsächlich ist diesen Absätzen bereits ein Absatzformat zugewiesen, dessen Bestimmungen aber von Hand überschrieben worden sind.

Ich suche also – mit einer Textsuche – entweder nach
Paragraph Style: Body Text 2 + left indent 5,009 mm
oder nach
+ left indent 5,009 mm

In beiden Fällen erhalte ich keine Suchergebnisse. Ich verstehe nicht, warum, und was zu tun ist. Ihr?
X

Absätze mit bestimmtem Einzug finden

Martin Fischer
  
Beiträge gesamt: 12783

11. Jun 2012, 20:52
Beitrag # 2 von 15
Beitrag ID: #496369
Bewertung:
(6266 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jean,

Antwort auf: Ich verstehe nicht, warum, und was zu tun ist. Ihr?


Vermutlich handelt es sich um Rundungsfehler.
Die 5,009 mm sind vermutlich nicht genau 5,009 mm sondern 5,00899999 o.ä.

Zwei Vorschläge:
1. Stell die Maßeinheiten kurzfristig auf Punkt um und suche den entsprechenden Einzug in Punkten.
2. Markiere einen Absatz mit dem AF Body Text 2, in dem der Einzug auf 5,009 mm steht, klicke im Flyout der Absatzformatpalette "Format neu definieren", um dem AF diesen krummen Wert zuzuweisen und definiere hinterher das AF mit dem gewünschten Wert um.


als Antwort auf: [#496363]

Absätze mit bestimmtem Einzug finden

jean matua bustamant
Beiträge gesamt: 185

12. Jun 2012, 17:07
Beitrag # 3 von 15
Beitrag ID: #496400
Bewertung:
(6192 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

vielen Dank. 1 führt leider zu demselben Ergebnis, und zwar gleichgültig, was ich als Punktgröße festlegen (in den Voreinstellungen ist zwischen traditioneller, post-script-, und noch zwei andern Größen zu wählen); 2 ist leider untunlich, weil nicht nur eingerückte, sondern auch alle anderen Absätze von diesem Format bestimmt werden, dessen Änderung also fast den gesamten Text umstellt.


als Antwort auf: [#496369]

Absätze mit bestimmtem Einzug finden

Martin Fischer
  
Beiträge gesamt: 12783

12. Jun 2012, 18:34
Beitrag # 4 von 15
Beitrag ID: #496404
Bewertung:
(6170 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jean,

dann kannst Du's mal mit dem folgenden Skript versuchen:

Code
if ( app.selection.length > 0 && app.selection[0].hasOwnProperty('leftIndent') ) 
{
app.findTextPreferences = NothingEnum.nothing;
app.findTextPreferences.leftIndent = app.selection[0].insertionPoints.firstItem().leftIndent;
}


Das Skript übernimmt den Wert für den linken Einzug des Absatzes, in dem der Cursor steht, in das Suchformat.


Vorgehen:

1. Platziere den Cursor in dem Absatz, dessen Einzug Du in die Suche aufnehmen möchtest;
2. führe das Skript aus;
3. führe nun die Suche aus.

Werden damit die Absätze mit dem ermittelten Einzug gefunden?


als Antwort auf: [#496400]
(Dieser Beitrag wurde von Martin Fischer am 12. Jun 2012, 18:37 geändert)

Absätze mit bestimmtem Einzug finden

jean matua bustamant
Beiträge gesamt: 185

12. Jun 2012, 21:08
Beitrag # 5 von 15
Beitrag ID: #496411
Bewertung:
(6142 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo

Das Script funktioniert, setzt in die Suche aber den nämlichen Wert ein, den die Absatzpalette auch ausweist. Entsprechend ist auch hier das Suchergebnis dasselbe (Cannot find match).

Jean


als Antwort auf: [#496404]

Absätze mit bestimmtem Einzug finden

Martin Fischer
  
Beiträge gesamt: 12783

12. Jun 2012, 21:35
Beitrag # 6 von 15
Beitrag ID: #496412
Bewertung:
(6127 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Schade.
Bei mir hat's mit ziemlich krummen Werten, die gerundet dargestellt wurden, funktioniert.


als Antwort auf: [#496411]

Absätze mit bestimmtem Einzug finden

Hans Haesler
Beiträge gesamt: 5826

12. Jun 2012, 22:44
Beitrag # 7 von 15
Beitrag ID: #496413
Bewertung:
(6104 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jean,

da muss doch etwas zu machen sein ...

Würdest Du bitte eine Kopie des Dokuments auf eine Seite reduzieren und mir zustellen? Mit der Angabe, welcher Einzug zu finden ist.

Besten Dank im voraus.

Gruss, Hans


als Antwort auf: [#496411]

Absätze mit bestimmtem Einzug finden

Hans Haesler
Beiträge gesamt: 5826

13. Jun 2012, 14:30
Beitrag # 8 von 15
Beitrag ID: #496448
Bewertung:
(6023 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jean,

ich bedanke mich für das Dokument.

Der Einzug links wird im Absatzbedienfeld mit 5.009 angegeben.
Verlangt man ihn per Script, dann wird das zu 5.00944444444444.

Folgende Idee: Ein Script macht eine Schleife durch die Stories und in jeder Story durch die Absätze.
Bei jedem Absatz speichert es den Einzugswert. Ist dieser grösser als 4.9 und kleiner als 5.1, dann wird er auf 5 begradigt:

Code
var allStories = app.documents[0].stories; 

for (var s=0; s<allStories.length; s++) {
var allParas = allStories[s].paragraphs;
for (var p=0; p<allParas.length; p++) {
var leftInd = allParas[p].leftIndent;
if (leftInd > 4.9 && leftInd < 5.1) {
allParas[p].leftIndent = 5;
}
}
}

alert ("Fertig.", "");

Und jetzt werden die Absätze gefunden, wenn man für den Einzug links 5 mm eingibt.

Gruss, Hans


als Antwort auf: [#496413]

Absätze mit bestimmtem Einzug finden

Martin Fischer
  
Beiträge gesamt: 12783

13. Jun 2012, 15:02
Beitrag # 9 von 15
Beitrag ID: #496452
Bewertung:
(6008 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

gute Idee.

Hier ein alternativer Ansatz, der etwas offener ist.

Code
//round_leftIndent_paragraphs.jsx 

var nachkomma_stellen = 2;

var d = app.activeDocument;
for (var i = 0; i < d.stories.length; i++)
{
for (var x = 0; x < d.stories.item(i).paragraphs.length; x++)
{
var li = d.stories.item(i).paragraphs.item(x).leftIndent;
var li_rounded = _round(li,nachkomma_stellen);
if ( li != li_rounded)
{
d.stories.item(i).paragraphs.item(x).leftIndent = li_rounded;
}
}
}

function _round(x, dig)
{
var fac = Math.pow(10,dig);
return Math.round(x*fac)/fac;
}


In diesem Skript werden alle linken Einzüge geprüft, ob sie mehr Nachkommastellen haben als in der Variable nachkomma_stellen (hier 2) angegeben. Ist dies der Fall, dann wird auf die angegeben Nachkommastellen gerundet.


als Antwort auf: [#496448]
(Dieser Beitrag wurde von Martin Fischer am 13. Jun 2012, 15:08 geändert)

Absätze mit bestimmtem Einzug finden

Hans Haesler
Beiträge gesamt: 5826

13. Jun 2012, 15:13
Beitrag # 10 von 15
Beitrag ID: #496453
Bewertung:
(5995 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

ja, klar, meine Idee ist nur eine ausbaubedürftige Skizze.

Dein Vorschlag funktioniert: Nach dem Ausführen des Scripts kann Jean 5.01 eingeben und die enstprechenden Absätze werden gefunden.

Gruss, Hans


als Antwort auf: [#496452]

Absätze mit bestimmtem Einzug finden

jean matua bustamant
Beiträge gesamt: 185

13. Jun 2012, 15:42
Beitrag # 11 von 15
Beitrag ID: #496458
Bewertung:
(5973 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Magnifico. Vielen Dank euch beiden. So, auf beiden Wegen, funktioniert es tatsächlich.
(Mich würde ja allenfalls noch interessieren, warum bei Dir – Hans – im selben Dokument dasselbe Script 5.00944444444444 in die Suche einsetzt, bei mir aber 5,009. Programmversion vielleicht? Meine ist 7.0.)

Vielen Dank, großartig, große Arbeitsersparnis!

Grüße

Jean


als Antwort auf: [#496453]

Absätze mit bestimmtem Einzug finden

Hans Haesler
Beiträge gesamt: 5826

13. Jun 2012, 17:01
Beitrag # 12 von 15
Beitrag ID: #496465
Bewertung:
(5929 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jean,

bitteschön.

Nun, den Wert des Einzugs habe ich nicht in das Suchen/Ersetzen-Bedienfeld setzen lassen, sondern Martins Script so verbogen ...

Code
if (app.selection.length > 0 && app.selection[0].hasOwnProperty('leftIndent')) { 
alert (app.selection[0].insertionPoints.firstItem().leftIndent);
}

... dass ein Dialog den wirklichen Wert anzeigt.

Ursprünglich waren das wohl 14.2 pt, welche nach dem Umrechnen in Millimeter im Bedienfeld auf drei Nachkommastellen gerundet werden.

Gruss, Hans


als Antwort auf: [#496458]

Absätze mit bestimmtem Einzug finden

jean matua bustamant
Beiträge gesamt: 185

13. Jun 2012, 17:53
Beitrag # 13 von 15
Beitrag ID: #496467
Bewertung:
(5907 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Stimmt. Geht.

Ich hoffe, das hilft gelegentlich auch anderen. Wordimport ist ja nicht selten.

Nochmal vielen Dank euch beiden.

Grüße

Jean


als Antwort auf: [#496465]

Absätze mit bestimmtem Einzug finden

Hans Haesler
Beiträge gesamt: 5826

13. Jun 2012, 18:31
Beitrag # 14 von 15
Beitrag ID: #496469
Bewertung:
(5883 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jean,

noch zum besseren Verständnis: Wenn Du im Original-Dokument die Einfügemarke in den Absatz mit Einzug setzest und dann im Bedienfeld den Wert "Einzug links" auswählst, enfernst und neu eintippst, dann klappt die Suche mit 5.009.

Und wenn Du in Martins Script in der ersten Zeile die rote 2 (der Wert für die Variable nachkomma_stellen) durch eine 3 ersetzest, dann werden die Einzugswerte auf drei Stellen gerundet. Und auch in diesem Fall funktioniert die Suche mit 5.009.

Gruss, Hans


als Antwort auf: [#496467]

Absätze mit bestimmtem Einzug finden

jean matua bustamant
Beiträge gesamt: 185

21. Jun 2012, 12:59
Beitrag # 15 von 15
Beitrag ID: #496824
Bewertung:
(5562 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Sehr verständlich, und zeigt sich im Versuch als richtig. Vielen Dank.


als Antwort auf: [#496469]
X