Welcome to WSL!

Make yourself at home, but before posting, please may I ask you to read the following topics.


Posting 101
Server space, screenshots, and you

Thank you!

PS. please pretty please:


Image

Text columns

Moderator: SecondMan

User avatar
Burst!
Posts: 6
Joined: Mon Feb 09, 2015 3:25 pm

Text columns

#1

Post by Burst! » Mon Aug 13, 2018 9:14 am

Hi !

I've got content of around 200+ lines of variable length (names of people) that needs to be spread out in multiple identical columns a bit in the fashion of InDesign's (and illustrator?) text box overflow.

I've tried things out using a Text+ and Duplicate2D offsetting each one, but it's pretty tedious and not the best in terms of tweaking and reusability (more names will be added in the future). I also can't really change the size or it just screws up the entire alignment, which is far from perfect.

I've also tried the same with a Duplicate 3D since the Duplicate2D tends to crop the image (which ends up being very narrow and tall)

My next avenue would be to try it with particles or a replicate3D on a grid. The challenge would be to emit/iterate a single text object/particle for every lines of text.

I just wanted to know if anyone tried this out in the past and might share some knowledge.

Thanks !

Tags:

User avatar
SirEdric
Fusionator
Posts: 2343
Joined: Tue Aug 05, 2014 10:04 am
Answers: 12
Real name: Eric Westphal
Been thanked: 47 times
Contact:

Re: Text columns

#2

Post by SirEdric » Mon Aug 13, 2018 9:17 am

Hi Burst.

What about the LineSpacing in the TextTool's Transform tab?
At least in terms of vertical distance between lines this should work quite nice....

User avatar
Burst!
Posts: 6
Joined: Mon Feb 09, 2015 3:25 pm

Re: Text columns

#3

Post by Burst! » Mon Aug 13, 2018 10:28 am

Hi !

The vertical distance works great, but unfortunately I'm looking for ways to iterate columns horizontally, so, say 8 columns each with a an equal distance of X with 30 (or Y) lines of text. All of this with a single text field.

Apologies if I wasn't clear the first time.

User avatar
ShadowMaker SdR
Fusionista
Posts: 951
Joined: Sun Sep 21, 2014 6:17 am
Answers: 8
Been thanked: 48 times

Re: Text columns

#4

Post by ShadowMaker SdR » Mon Aug 13, 2018 10:47 am

Use tabs. Just insert a tab and you will be able to make - I think - 8 columns of text that you can set arbitrarily. (and even animate)

User avatar
Burst!
Posts: 6
Joined: Mon Feb 09, 2015 3:25 pm

Re: Text columns

#5

Post by Burst! » Mon Aug 13, 2018 12:08 pm

I've thought of that but having to either manually insert tabs every x amount of lines is very tedious and not very flexible even if I manage to script something I'll be limited to 8 columns and they will all be offset in Y position due to line height.

Here's an example of what I would like to acheive:
Image

User avatar
SirEdric
Fusionator
Posts: 2343
Joined: Tue Aug 05, 2014 10:04 am
Answers: 12
Real name: Eric Westphal
Been thanked: 47 times
Contact:

Re: Text columns

#6

Post by SirEdric » Mon Aug 13, 2018 12:13 pm

In terms of your example, I see seven columns, so the available eight should be sufficient to start with...:-)

Added in 30 minutes 30 seconds:
So, if you have a text-file like the attached (aka "tab-separated", just make sure to have a leading tab as well!)
and paste that into your Text+ (I added "TabSpacing" and "TabStart" to the Tabs-Tab for convenience),

Code: Select all

{
	Tools = ordered() {
		Text1_1 = TextPlus {
			CtrlWZoom = false,
			Inputs = {
				Width = Input { Value = 1920, },
				Height = Input { Value = 1080, },
				["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
				Size = Input { Value = 0.02008, },
				Font = Input { Value = "Open Sans", },
				StyledText = Input { Value = "	Lorem ipsum	dolor sit	amet consectetuer	adipiscing elit	Aenean commodo	ligula eget	dolor Aenean\n	massa Cum	sociis natoque	penatibus et	magnis dis	parturient montes	nascetur ridiculus	mus Donec\n	quam felis	ultricies nec	pellentesque eu	pretium quis	sem Nulla	consequat massa	quis enim\n	Donec pede	justo fringilla	vel aliquet	nec vulputate	eget arcu	In enim justo	rhoncus ut\n	imperdiet venenatis	vitae justo	Nullam dictum	felis eu pede	mollis pretium	Integer tincidunt	Cras dapibus\n	Vivamus elementum	semper nisi	Aenean vulputate	eleifend tellus	Aenean leo ligula	porttitor eu	consequat vitae\n	eleifend acenim	Aliquam lorem	ante dapibus	in viverra quis	feugiat a tellus	Phasellus viverra	nulla ut metus\n	varius laoree	Quisque rutrum	Aenean imperdiet	Etiam ultricies	nisi vel augue	Curabitur ullamcorper	ultricies nisi\n	Nam eget dui	Etiam rhoncus	Maecenas tempus	tellus eget	condimentum rhoncus	sem quam semper libero	sit amet adipiscing\n	sem neque sed	ipsum Nam quam	nunc blandit vel	luctus pulvinar	hendrerit id	lorem Maecenas	nec odio\n	et ante	tincidunt tempus	Donec vitae sapien	ut libero	venenatis faucibus	Nullam quis ante	Etiam sit amet\n	orci eget	eros faucibus	tincidunt Duis	leo Sed fringilla	mauris sit	amet nibh	Donec sodales\n	sagittis magna	Sed consequat	leo eget	bibendum sodales	augue velit	cursus nunc", },
				Style = Input { Value = "Regular", },
				ManualFontKerningPlacement = Input {
					Value = StyledText {
						Array = {
						},
						Value = ""
					},
				},
				Tab1Position = Input {
					Value = -0.4145,
					Expression = "TabStart+TabSpacing",
				},
				Tab2Position = Input {
					Value = -0.2753,
					Expression = "TabStart+TabSpacing*2",
				},
				Tab3Position = Input {
					Value = -0.1361,
					Expression = "TabStart+TabSpacing*3",
				},
				Tab4Position = Input {
					Value = 0.00309999999999999,
					Expression = "TabStart+TabSpacing*4",
				},
				Tab5Position = Input {
					Value = 0.1423,
					Expression = "TabStart+TabSpacing*5",
				},
				Tab6Position = Input {
					Value = 0.2815,
					Expression = "TabStart+TabSpacing*6",
				},
				Tab7Position = Input {
					Value = 0.4207,
					Expression = "TabStart+TabSpacing*7",
				},
				Tab8Position = Input {
					Value = 0.5599,
					Expression = "TabStart+TabSpacing*8",
				},
				TabSpacing = Input { Value = 0.1392, },
				TabStart = Input { Value = -0.5537, },
			},
			ViewInfo = OperatorInfo { Pos = { 55, 115.5 } },
			UserControls = ordered() {
				TabSpacing = {
					LINKS_Name = "TabSpacing",
					LINKID_DataType = "Number",
					INPID_InputControl = "SliderControl",
					INP_Default = 0.125,
					INP_Integer = false,
					ICS_ControlPage = "Tabs"
				},
				TabStart = {
					LINKS_Name = "TabStart",
					LINKID_DataType = "Number",
					INPID_InputControl = "SliderControl",
					INP_Default = 0.100000001490116,
					INP_Integer = false,
					ICS_ControlPage = "Tabs"
				}
			}
		}
	},
	ActiveTool = "Text1_1"
}
where is there a vertical offset?...:-)
CreditList.png
You do not have the required permissions to view the files attached to this post.

User avatar
Burst!
Posts: 6
Joined: Mon Feb 09, 2015 3:25 pm

Re: Text columns

#7

Post by Burst! » Mon Aug 13, 2018 1:40 pm

SirEdric wrote:
Mon Aug 13, 2018 12:44 pm
In terms of your example, I see seven columns, so the available eight should be sufficient to start with...:-)

where is there a vertical offset?...:-)
CreditList.png
Thanks a bunch !

The example I have was just an example, there are a lot more names being added, and more are being added each month, which is why I wanted a method where I could have many more columns that are populated automatically if needed.

The vertical offset was because I'm using the Krokodove "From File" modifier which points to a generated text file where are the names are separated line by line.

While you definitely provided a good solution and I will definitely use it in the future, I don't think it would be the best solution for this project in the long run.

Cheers !