indexOf with text
Posted: May 26th, 2008, 1:33 pm
me again. I'm trying to use a single text layer to create subtitles. The sourceText property has this code (there's a null object called Controller with a slider to control which title shows):
I now want to change the position of the text layer based on whether the text is wrapping to two lines or not. The obvious thing seems to be to use something like
- if v isn't -1, it's on two lines. However, this doesn't seem to work: it comes out as 1 whether the text is on two lines or not. Any ideas?
EDIT: ...sourceText.indexOf("longer") seems to work for those examples (-1 for n=0 or n=1, 16 for n=2), so it's something to do with the \r\n part. I've tried enclosing that bit in single quotes - ' - and escaping the backslashes with another backslash, but that doesn't work...
Cheers
Nick
Code: Select all
a = ["Title1", "Title2", "Title3 is a bit longer\r\nso it needs to wrap around"];
n = Math.floor(thisComp.layer("Controller").effect("TextNo")("Slider"));
a[n]
Code: Select all
v = thisComp.layer("TitleText").text.sourceText.indexOf("\r\n");
EDIT: ...sourceText.indexOf("longer") seems to work for those examples (-1 for n=0 or n=1, 16 for n=2), so it's something to do with the \r\n part. I've tried enclosing that bit in single quotes - ' - and escaping the backslashes with another backslash, but that doesn't work...
Cheers
Nick