[GastForen Programme Print/Bildbearbeitung Adobe InDesign Zeichen zählen

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

Zeichen zählen

anfenger
Beiträge gesamt: 74

24. Jan 2008, 15:42
Beitrag # 1 von 8
Bewertung:
(49637 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Tag allerseits,
InDesign das Profiprogramm für Layouts. Kann mir Jemand sagen wo die Features «Zeichen zählen», «Wörter zählen» versteckt sind? Help helpt nicht, die Wordlösung...na ja. Etwa ein Plug-In vonnöten? Sollte doch zum Gugger zum Standard gehören...

Vielen Dank für Eure Hilfe

der Anfenger
X

Zeichen zählen

Sacha Heck
Beiträge gesamt: 3281

24. Jan 2008, 15:51
Beitrag # 2 von 8
Beitrag ID: #333112
Bewertung:
(49628 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

Zitat InDesign das Profiprogramm für Layouts.

Genau :-)

Zitat Kann mir Jemand sagen wo die Features «Zeichen zählen», «Wörter zählen» versteckt sind?

In der Infopalette.

Gruß,
Sacha


als Antwort auf: [#333106]

Zeichen zählen

anfenger
Beiträge gesamt: 74

24. Jan 2008, 15:54
Beitrag # 3 von 8
Beitrag ID: #333114
Bewertung:
(49626 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Uff, so einfach Sascha. Danke!

Wald und Bäume, blinder Anfänger.

Gruss


als Antwort auf: [#333112]
(Dieser Beitrag wurde von anfenger am 24. Jan 2008, 15:55 geändert)

Zeichen zählen

Martin Fischer
  
Beiträge gesamt: 12783

27. Feb 2008, 23:36
Beitrag # 4 von 8
Beitrag ID: #339281
Bewertung:
(49483 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
In http://www.adobeforums.com/webx?14@@.3c063846/5 hat Harbs heute ein erweitertes Skript zum Zählen von Zeichen, Wörtern, Zeilen und Absätzen in der Auswahl, dem ausgewählten Textabschnitt oder in allen Textabschnitten veröffentlicht:

Code
//TextCounter 
//An InDesign 3 JavaScript
//
//Counts text objects in the selection, in the selected story, or in all stories in a document.
//
//For more on InDesign scripting, go to http://www.adobe.com/products/indesign/scripting.html
//or visit the InDesign Scripting User to User forum at http://www.adobeforums.com
//
if(app.documents.length != 0){
if(app.activeDocument.stories.length > 0){
myDisplayDialog();
}
else{
alert("The current document does not contain any text.");
}
}
else{
alert("No documents are open. Please open a document and try again.");
}

function myDisplayDialog(){
var myCountButtons, myRangeButtons;
var myDialog = app.dialogs.add({name:"TextCounter"});
with(myDialog.dialogColumns.add()){ with(borderPanels.add()){
staticTexts.add({staticLabel:"Count:"});
with(myCountButtons = radiobuttonGroups.add()){
radiobuttonControls.add({staticLabel:"Characters"});
radiobuttonControls.add({staticLabel:"Words", checkedState:true});
radiobuttonControls.add({staticLabel:"Lines"});
radiobuttonControls.add({staticLabel:"Paragraphs"});
}
}
with(borderPanels.add()){
staticTexts.add({staticLabel:"Range:"});
with(myRangeButtons = radiobuttonGroups.add()){
radiobuttonControls.add({staticLabel:"Selection", checkedState:true});
radiobuttonControls.add({staticLabel:"Selected Story"});
radiobuttonControls.add({staticLabel:"All Stories"});
}
}
}
var myReturn = myDialog.show();
if (myReturn == true){
//Get the values from the dialog box.
var myRangeType = myRangeButtons.selectedButton;
var myCountType = myCountButtons.selectedButton;
myDialog.destroy();
myTextCounter(myRangeType, myCountType);
}
else{
myDialog.destroy();
}
}
function myTextCounter(myRangeType, myCountType){
var myDocument, myTextCount, mySelection, myCountingUnit;
with (myDocument = app.activeDocument){
//Set the AlreadyCounted key of any stories in the document to false.
for (var myStoryCounter = 0; myStoryCounter < myDocument.stories.length; myStoryCounter ++){
myDocument.stories.item(myStoryCounter).insertLabel("AlreadyCounted", "False")
}
switch (myRangeType){
case 0:
//Count the text in the selection.
//If multiple text frames are selected, all of the
//text in the frames will be counted.
mySelection = selection;
if (mySelection.length == 1){
myTextCount = mySelectionSorter(mySelection[0], myRangeType, myCountType); }
else{
myTextCount = 0;
for (var myCounter = 0; myCounter < mySelection.length; myCounter++){
myTextCount = myTextCount + mySelectionSorter(mySelection[myCounter], myRangeType, myCountType);
}
}
break;
case 1:
//Count the text in the parent story (or stories) of the selection)
mySelection = selection;
if (mySelection.length == 1){
myTextCount = mySelectionSorter(mySelection[0], myRangeType, myCountType);
}
else{
myTextCount = 0;
//Now iterate through the items and count the text.
for (var myCounter = 0; myCounter < mySelection.length; myCounter++){
myTextCount = myTextCount + mySelectionSorter(mySelection[myCounter], myRangeType, myCountType);
}
}
break;
case 2:
//Count the text in all stories of the active document.
myTextCount = 0;
for(var myStoryCounter = 0; myStoryCounter < myDocument.stories.length; myStoryCounter ++){
myTextCount = myTextCount + myCountText(myDocument.stories.item(myStoryCounter), myCountType);
}
break;
}
switch(myCountType){
case 0:
if (myTextCount == 1){
myCountingUnit = "character";
}
else {
myCountingUnit = "characters";
}
break;
case 1:
if (myTextCount == 1){
myCountingUnit = "word";
}
else {
myCountingUnit = "words";
}
break;
case 2:
if (myTextCount == 1){
myCountingUnit = "line";
}
else {
myCountingUnit = "lines";
}
break;
case 3:
if (myTextCount == 1){
myCountingUnit = "paragraph";
}
else {
myCountingUnit = "paragraphs";
}
break;
}
var myDialog = app.dialogs.add({name:"TextCounter", canCancel:false});
with(myDialog){
//Add a dialog column.
with(dialogColumns.add()){
with(borderPanels.add()){
staticTexts.add({staticLabel:"InDesign found "});
with(dialogColumns.add()){
textEditboxes.add({editContents:myTextCount+""});
}
with(dialogColumns.add()){
staticTexts.add({staticLabel:myCountingUnit});
}
}
}
}
myDialog.show();
myDialog.destroy();
}
}
function mySelectionSorter(myObject, myRangeType, myCountType){
var myTextCount;
switch (myObject.constructor.name){
case "Text":
case "InsertionPoint":
switch (myRangeType){
case 0:
myTextCount = myCountText(myObject, myCountType);
break;
case 1:
myTextCount = myCountText(myObject.parentStory, myCountType);
break;
}
break;
case "TextFrame":
switch (myRangeType){
case 0:
myTextCount = myCountText(myObject.texts.item(0), myCountType);
break;
case 1:
//Has the parent story already been counted?
myStory = myObject.parentStory;
myCountedState = myStory.extractLabel("AlreadyCounted");
if (myCountedState != "True"){
myTextCount = myCountText(myStory, myCountType);
myStory.insertLabel("AlreadyCounted", "True");
}
else {
myTextCount = 0;
}
break;
}
break;
default:
//Selection is a not a text object.
//There's still a chance it could be a textPath object.
if (myObject.textPaths.length !=0){
myTextCount = 0;
if (myRangeType == 1){
for (myTextPathCounter = 0; myTextPathCounter < myObject.textPaths.length; myTextPathCounter ++){
myStory = myObject.textPaths.item(myTextPathCounter).parentStory;
myCountedState = myStory.extractLabel("AlreadyCounted");
if (myCountedState != "True"){
myTextCount = myTextCount + myCountText(myObject.textPaths.item(myTextPathCounter).parentStory, myCountType);
myObject.textPaths.item(myTextPathCounter).parentStory.insertLabel("AlreadyCounted","True");
}
else{
myTextCount = 0;
}
}
}
else {
for (myTextPathCounter = 0; myTextPathCounter < myObject.textPaths.length; myTextPathCounter ++){
myTextCount = myTextCount + myCountText(myObject.textPaths.item(myTextPathCounter).texts.item(0), myCountType);
}
}
}
else {
myTextCount = 0;
}
break; }
return myTextCount;
}
function myCountText(myTextObject, myCountType){
var myTextCount;
switch(myCountType){
case 0:
//count characters
myTextCount = myTextObject.characters.length;
break;
case 1:
//count words
myTextCount = myTextObject.words.length;
break;
case 2:
//count lines
myTextCount = myTextObject.lines.length;
break;
case 3:
//count paragraphs
myTextCount = myTextObject.paragraphs.length;
break;
}
return myTextCount;
}



als Antwort auf: [#333106]

Zeichen zählen

Wolf Larsen
Beiträge gesamt:

17. Jan 2011, 12:55
Beitrag # 5 von 8
Beitrag ID: #461891
Bewertung:
(46375 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Das Script ist nicht schlecht, aber es scheint keine Wörter in Tabellen zu zählen. Das ist bei einem Geschäftsbericht vielleicht eher schlecht :-) Hat jemand eine Ahnung, ob es was Erweitertes gibt?

Danke,
Wolf


als Antwort auf: [#339281]

Zeichen zählen

Ralf Hobirk
Beiträge gesamt: 5961

17. Jan 2011, 14:21
Beitrag # 6 von 8
Beitrag ID: #461916
Bewertung:
(46334 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: ob es was Erweitertes gibt?

Die Basisfunktion von InDesign (Infopalette) zählt auch Zeichen und Wörter in Tabellen.


als Antwort auf: [#461891]

Zeichen zählen

Wolf Larsen
Beiträge gesamt:

17. Jan 2011, 14:24
Beitrag # 7 von 8
Beitrag ID: #461917
Bewertung:
(46334 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Das ist sehr richtig! Aber 300 Tabellen anklicken und dann zusammenzählen ist keine richtige Lösung. Das Script ist eh schon super, es müsste noch Tabellen können. Es geht ja hier eher nicht um das Anklicken einzelner Rahmen sondern um die Erstellung einer Gesamtzählung.

Schönen Gruß,
Wolf


als Antwort auf: [#461916]

Zeichen zählen

Martin Fischer
  
Beiträge gesamt: 12783

17. Jan 2011, 14:41
Beitrag # 8 von 8
Beitrag ID: #461922
Bewertung:
(46322 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Wolf,

das geht auch ohne JavaScript über eine GREP-Suche.

Um die Anzahl der Wörter zu ermitteln, gehe wie folgt vor.

Code
Suche nach:     \w+  (eventuell feiner mit \<\w+\>) 
Ersetzen durch: $0



Das Dialogfenster nach Ausführung des Ersetzenbefehls gibt Dir an, wie häufig ersetzt wurde. Das sollte die Zahl der Wörter sein.

Um alle Zeichen zu ermitteln (ohne Leerzeichen) suche nach \w (ohne +).


Verfeinern kannst Du die Suche mit entsprechenden Formateinstellungen.
Hast Du z.B. ein Absatzformat für Tabellentext, so könntest Du die Suche darauf beschränken.

Teste das auf jeden Fall nicht im Original-Dokument, sondern in einer Kopie!


als Antwort auf: [#461917]
(Dieser Beitrag wurde von Martin Fischer am 17. Jan 2011, 14:45 geändert)
X