View Issue Details

IDProjectCategoryView StatusLast Update
0001405ScribusStory Editor / Text Framespublic2016-04-19 13:16
ReporterringercAssigned To 
PrioritynormalSeverityfeatureReproducibilityalways
Status acknowledgedResolutionopen 
Platformx86 LinuxOSFedora CoreOS Version1
Product Version1.2.1cvs 
Summary0001405: Support frame fit adjustment for text
DescriptionIt doesn't appear to be possible to set text in a text frame to fit exactly within the frame. There is always a gap between the top of the frame and the top of even the highest strokes in the text.

For example, if I create a text frame, set all padding to zero, and put one line 48 point Utopia Regular text in it, I can shrink it vertically until it's 55.50 points high. Reducing it by another 0.10 points causes the text to be replaced with the usual 'text doesn't fit' box. The issue doesn't seem to be specific to any particular font or font size.

The expected behaviour would be to be able to reduce the text frame to exactly 48.0 points and still have the text fit in the frame.

.sla and .png attached
Steps To Reproduce- Create an empty text frame
- insert a line of text, including some glyphs with very high strokes like || characters
- set the font size on the frame to 48pt
- set the font to Utopia Regular
- set all four text padding variables to 0pt
- set the frame height to 55.50pt
- for illustration's sake, add a coloured border

the text should still display, and the bottom of the strokes on the l and | characters should touch the frame edge and border line. The tops should be MILES from the top edge of the frame. If you zoom in tightly on the bottoms of the | characters you should note that they in fact stick outside the frame and frame border. I've measured this at 0.5pt with Utopia Regular at 48pt.

- reduce the frame height by 0.10 pt

the text should stop displaying, despite the fact that there's plenty of room in the frame.

As explained by Franz, this is to leave room for accented glyphs. Unfortunately, it makes it impossible to fit frames closely to their contents and makes it difficult to do close text flow without editing the frame's contour line. It would be good to have more control over the top line, with negative padding and/or the ability to set the tops of un-accented caps to be the assumed max height.
Additional InformationThis poses significant difficulties with things like by-lines that need to have text flow around them, and also for accurate scripted layout.
TagsNo tags attached.
Patch

Relationships

related to 0002058 assignedavox Text and font metrics 
related to 0002708 closedcezaryece Autosizing of frames 
related to 0001069 closedjghali Auto-adjust size of text box to the text 
related to 0007217 new copy-fit feature 

Activities

2004-12-17 02:37

 

frame_example-1.png (11,041 bytes)   
frame_example-1.png (11,041 bytes)   

2004-12-17 02:37

 

frame_example.sla (36,808 bytes)

louisdesjardins

2004-12-17 17:40

developer   ~0003171

I was curious to see how Quark was doing in that area.
I used Times 48 pts instead of Utopia.
The box is as tight as can be at 3p7,231 before the text disappears.
I guess this is exactly what you'd expect Scribus to achieve isn't it? (see uploaded screenshot)
At 800%, we can see a gap that is 0p0,125 which happens to be the thickness of guides at that magnification. So, virtually, I guess we can state there is no gap at all there. At 100% it is impossible to see that on screen.
If that can help solve the issue. :-)

louisdesjardins

2004-12-17 17:49

developer   ~0003172

Sorry, can't upload file. I get this message:

APPLICATION ERROR 0000503
Invalid upload path. Directory either does not exist or not writable to webserver
Please use the "Back" button in your web browser to return to the previous page. There you can correct whatever problems were identified in this error or select another action. You can also click an option from the menu bar to go directly to a new section.

fschmid

2004-12-17 20:29

administrator   ~0003173

Craig, thats because the first line of text is alway positioned with room for the maximum height for the glyphs in a given Font, to ensure that even a Ü, Ä or Ö will be displayed fine. Of course this will leave always some space for letters like T or lowercase letters.

2004-12-17 21:57

 

3waydisplay.pdf (12,767 bytes)

louisdesjardins

2004-12-17 22:11

developer   ~0003174

Here is how Quark does it (this time the file uploaded without any error).
There are 3 options for displaying and positionning the caps with accented letters. I have written them underneath.
Look for the differences in how the accented cap is displayed, and the dot on the i and the top curve of the f in foxes.
Note the space change on top and also see that even if the accent is displayed better on top, the size of the cap is still not perfect on screen because the E with an accent shouldn't be smaller than a regular capital letter. The display is not wysiwyg but the print will be OK.

All this to say I think that how Scribus handles this makes more sense to me because the height of the cap is maintained no matter if there is a diacritic mark or not on top of it.

ringerc

2004-12-18 05:06

reporter   ~0003175

Franz: That makes sense. Frankly, I didn't think to test with accented characters - stupid given how much work I've been doing on Unicode support in the scripter.

It would be nice if frames could be set to fit the text tightly to the frame (using the actual border of the glyphs, not the max possible space needed) or had the option of drawing frames with the top at the top line of captial letters. If you think this makes sense, I'll file a feature req for it here.

It would also be very helpful to be able to have negative padding on text frames, especially negative top padding.

Nonetheless, it looks like this is not a bug - though I think conversion into a feature request is warranted, given that currently the only other option for tight text flow seems to be editing the frame's contour line.

cbradney

2004-12-18 07:12

administrator   ~0003176

Yeah, I think I agree with CR here, that is, the top, left, right, bottom distance measurements on the Properties Palette have a 0 value. If we had an option to "auto adjust based on highest letter of top line", with a 0 value in Top, it would then always adjust to fit the letter to reach the top of the frame.

ringerc

2004-12-20 05:33

reporter   ~0003184

Converted to type feature.

jo-hannes

2006-02-06 18:09

developer   ~0008621

ringerc: the gap at the top is no longer there on 1.3cvs, but at the bottom its still there. what do you recommend? solve or leave open?

Issue History

Date Modified Username Field Change
2004-12-17 02:36 ringerc New Issue
2004-12-17 02:37 ringerc File Added: frame_example-1.png
2004-12-17 02:37 ringerc File Added: frame_example.sla
2004-12-17 02:39 ringerc Steps to Reproduce Updated
2004-12-17 17:40 louisdesjardins Note Added: 0003171
2004-12-17 17:49 louisdesjardins Note Added: 0003172
2004-12-17 20:29 fschmid Note Added: 0003173
2004-12-17 21:57 louisdesjardins File Added: 3waydisplay.pdf
2004-12-17 22:11 louisdesjardins Note Added: 0003174
2004-12-18 05:06 ringerc Note Added: 0003175
2004-12-18 05:23 ringerc Category Default => Story Editor / Text Frames
2004-12-18 07:12 cbradney Note Added: 0003176
2004-12-20 05:33 ringerc Note Added: 0003184
2004-12-20 05:33 ringerc Severity minor => feature
2004-12-20 05:33 ringerc Summary text in text frames never touches top of frame => Support frame fit adjustment for text
2004-12-20 05:33 ringerc Steps to Reproduce Updated
2005-06-23 07:26 ringerc Relationship added related to 0002058
2005-06-23 07:26 ringerc Status new => acknowledged
2005-10-11 13:30 ringerc Relationship added has duplicate 0002708
2005-10-11 16:33 ringerc Relationship replaced related to 0002708
2006-02-06 18:09 jo-hannes Note Added: 0008621
2006-02-06 18:09 jo-hannes Relationship added related to 0001069
2015-09-17 20:08 Kunda Category Story Editor / Text Frames => Story Ed/Txt Frames
2015-09-17 20:12 Kunda Category Story Ed/Txt Frames => Story Editor / Text Frames
2016-04-19 13:16 Kunda Relationship added related to 0007217