- Сообщения
- 1
- Реакции
- 0
Приветствую всех!
Поставили задачу для Корела, где требуется правильно масштабировать объект на лист с определенным размером. Объекты по размеру могут быть разные. Например: вставить на лист 100x100 мм объект размером 600х200 мм с отступом от краев (хотелось бы сделать опционально) границы листа 2 мм.
На рисунке отображена схематичная формула, что и как должно быть. Также распишу, что пробовал сделать.
Что пробовал делать:
1. Нашел на этом же форуме формулу. Попытался ее применить под поставленную задачу.
Не со всеми объектами работает корректно. Под каждый выделенный объект подстраивать процент масштабирования - не комильфо.
2. Попытался сделать так:
Удалось вместить, но без нормальной пропорции - растянуто по ширине. Если убрать параметр H1, то фигура не всегда влезает на нужный лист.
Надеюсь, расписал понятно. Буду рад и очень признателен за помощь в решении задачи!
Поставили задачу для Корела, где требуется правильно масштабировать объект на лист с определенным размером. Объекты по размеру могут быть разные. Например: вставить на лист 100x100 мм объект размером 600х200 мм с отступом от краев (хотелось бы сделать опционально) границы листа 2 мм.
На рисунке отображена схематичная формула, что и как должно быть. Также распишу, что пробовал сделать.
Что пробовал делать:
1. Нашел на этом же форуме формулу. Попытался ее применить под поставленную задачу.
Код:
Dim MyLayout As ShapeRange
Set MyLayout = ActiveSelectionRange
MyLayout.SetSize ActivePage.SizeHeight * (Val(80) / 100)
Не со всеми объектами работает корректно. Под каждый выделенный объект подстраивать процент масштабирования - не комильфо.
2. Попытался сделать так:
Код:
ActiveDocument.Unit = cdrMillimeter
SizeObject = ActiveSelection.SizeWidth / ActiveSelection.SizeHeight
'SizePage = ActivePage.SizeWidth / ActivePage.SizeHeight
W1 = ActivePage.SizeWidth: ActiveSelection.SizeHeight = ActiveSelection.SizeWidth / SizeObject
H1 = ActivePage.SizeHeight: ActiveSelection.SizeWidth = ActiveSelection.SizeHeight * SizeObject
ActiveSelection.SetSize W1, H1
Удалось вместить, но без нормальной пропорции - растянуто по ширине. Если убрать параметр H1, то фигура не всегда влезает на нужный лист.
Надеюсь, расписал понятно. Буду рад и очень признателен за помощь в решении задачи!