Copy link to clipboard
Copied
Hello sir
i want to print red zigzag line (show wrong spelling or word) in my hard copy (print out). I am using indsign cs6. Please help. How is it possilble. For more understand i am share one screenshot for you.
Copy link to clipboard
Copied
Hi,
This is not a built in way to do this. You could script it.
1, collect all the spelling errors.
2, apply a text condition to the found spelling errors.
There was a thread about finding the spelling errors.
edited, here is a link.
P.
Copy link to clipboard
Copied
If this is possible by any script. please suggest me. script
Copy link to clipboard
Copied
Pleae help me anybody . Pleae provide me any script or method to red zigzag line print in my printout. Please help me.
Copy link to clipboard
Copied
Here is the script that Pickory mentioned, with a small addition to add a text condition, as he suggested, to the found words rather than listing them.
First add a text condition to your document. Use the name Typo and set its appearance. Then run the script.
(function () {
const props = app.spellPreferences.properties;
const spellWindow = app.menuActions.item ('$ID/Check Spelling...');
var typos = [];
var knownTypo = {};
function record (typo) {
if (!knownTypo[typo]) {
knownTypo[typo] = true;
typos.push (typo);
}
}
// Begin ----------------------------------------------
const condition = app.activeDocument.conditions.item('Typo');
if (!condition.isValid) {
alert ('Create a condition "Typo"');
exit();
}
// Hide the layout window to speed things up
app.windows[0].minimize();
app.spellPreferences.properties = {
checkCapitalizedSentences: false,
checkCapitalizedWords: false,
checkRepeatedWords: false,
checkMisspelledWords: true
}
spellWindow.invoke();
if (!app.selection.length) { // No spelling errors, nothing to do
exit();
}
// If there's a typo, it's now selected
record (app.selection[0].contents);
var i = app.selection[0].index; // The location of the typo
spellWindow.invoke();
while (app.selection[0].index !== i) { // Stop when we catch the same word
i = app.selection[0].index;
record (app.selection[0].contents);
spellWindow.invoke(); // Go to the next typo
}
app.selection = null;
// Restore the layout window and the spell preferences
app.activate();
app.spellPreferences.properties = props;
// Create a new document and add the typos.
//app.documents.add().textFrames.add ({
// geometricBounds: app.documents[0].pages[0].bounds,
// contents: typos.sort().join('\r'),
//});
app.findTextPreferences = app.findChangeTextOptions = null;
app.changeTextPreferences.appliedConditions = [condition];
app.findChangeTextOptions.wholeWord = true;
for (var i = typos.length-1; i >= 0; i--) {
app.findTextPreferences.findWhat = typos[i];
app.activeDocument.changeText();
}
}());
Copy link to clipboard
Copied
Hello Peter
Thank you for my help and share script. but i am not understand that meaning of 'First add a text condition to your document' how can i do. Please suggest me.
Copy link to clipboard
Copied
You need to create a Conditional Text item. Go to Window > Type & Tables > Conditional Text. In the panel, create a new condition and name it Type:
Copy link to clipboard
Copied
Copy link to clipboard
Copied
As I mentioned above, create a Conditional Text item (see earlier post), then run the script. To learn more about conditional text, consult InDesign's help or an InDesign primer.
Copy link to clipboard
Copied
The script from Peter works very well for me. seep my pdf.
You need a text condition called 'Typo', set its appearance to wavy line, red and to print.
P.