How do I vertically align text within a Scribus text frame?
Surprisingly for such a simple and common feature, there doesn't appear to be an option for this in Scribus as of version 1.4.5. Here are three workarounds (none of which are ideal solutions unfortunately), one of which is based on @W_Whalley's answer (which is out of date for Scribus' current UI):
Manually set the spacing within the text frame
Adapted from @W_Whalley's answer:
Align the text frame itself within another object
Based on the suggested solution on the Scribus Wiki:
Use a script
I have not personally tried this option so can't confirm how effective it is. From the description it would appear to solve most of the disadvantages of the other two methods leaving just one:
Select the text frame and hit F2 or right-click and choose properties. Then select the Shape section. There you can set a left margin offset from the edge of the text frame that will align the text in the frame. You can also set tabs and columns if that is more in line with your goal.
Using Scribus 1.4.6, the following script center (vertical) align the content of a text frame by Alessandro Rimoldi was able to vertically align the text within a text frame:
Here is the script (if needed, a brief instruction on how to use the script follows these lines of code):
Here is how to use the script:
The text inside the selected text frame will then be vertically centred.
I could experience at least two drawbacks with this script:
This script overcomes the fact that the script mentioned in Jon Bentley's answer did not work for me (in Scribus 1.4.6 at least), showing an error message with the following line:
which is maybe related more to the document than the script itself.