Resize Text in relation to shape size

Started by u03d, September 22, 2015, 06:22:41 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

u03d

I'm a bit of a novice when it comes to visio.

I've been creating my own shapes, with some having various text boxes within this shape. If I stretch the shape (Height and Width) the shape stretches to scale but the text doesn't, it stays the same size. I've been trawling through the forum to try to find the formula to use in the ShapeSheet but not having much luck in finding what I'm looking for so that the text also scales (bigger or smaller) as the shape resizes. Do I need to put a formula in the 'Text Transform' section or the 'Character' section.

If you could explicitly state the actual formula I should insert it would be greatly appreciated.

wapperdude

The steps you need to modify the shapesheet are as follows:

create User row:

User.CharSizeSF = 2 in



Use the formula:

Char.Size = SETATREFEXPR(12 pt) * Width / SETATREF(User.CharSizeSF, SETATREFEVAL(Width))


Wapperdude
Visio 2019 Pro

Andreas011077

#2
Hello,
this doesn´t work.
Might it a problem because i´m using an german version of Visio2010?

I find this :

Character Zelle Size folgende Formel einfügt:
Fontsize*Height/aktueller Wert der Höhe

z. b. 12pt*Height/30mm

This works.

Regards
Andy

vojo

you can brute force this as well

user.scale = sqrt(width^2+height^2)/sqrt(<original width>^2+<original height>^2)

you may have to play with this some since "squares" of these might force you to have a constant in denominator aka "/C*sqrt()  "     

char size = <default size> * user.scale

for example for a shape that was originally 2mm X 2mm and orginal char size was 4pt

user.scale = sqrt(width^2+height^2)/sqrt((2mm)^2+(2mm)^2)

char size = 4pt * user.scale