[CDR X5-X8] Как изменить размер документа?

  • Автор темы Автор темы protec99999
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

protec99999

Участник
Топикстартер
Сообщения
10
Реакции
0
Возможно ли в Кореле привести размер документа к размеру выделенного объекта ( В Иллюстраторе это: Object/Artboards/Fit to Selected Art)?
 
То есть, автоматом подогнать размер страницы под размер выделенного объекта? Одной кнопкой нельзя, да и не пойму, для чего такое странное надо вообще, если в кореле (в отличие от иллюстратора) можно выделенные объекты в отдельный файл записать.
 
Наверно это вопрос привычки. А можно узнать как записать выделенные объекты в отдельный файл?
 
Но учтите, что при таком сохранении размер страницы остается прежний.
В принципе, если сохранять выделенные объекты не в CDR, а например в PDF, то можно добиться того, что и артбоард будет подгоняться под размер объектов. В крайнем случае, макросом в четыре строки можно и на одну кнопку масштабирование страницы повесить, но особого практического смысла в этом не вижу.
 
макросом в четыре строки можно и на одну кнопку масштабирование страницы повесить, но особого практического смысла в этом не вижу.
У меня 80% работ - всяческие развёртки, поэтому скриптом приведения размера страницы к выделению пользуюсь по нескольку раз на дню.
 
Скриптом. Мой основной рабочий инструмент - CorelDRAW 9.
Код:
REM set page size to the size of an object.script for CorelDRAW 9

#define DRAWOBJECT "CorelDRAW.Automation.9"

ON ERROR GOTO ErrHandler
WITHOBJECT DRAWOBJECT
.setreferencepoint 3
  .ApplyOutline 0, 0, 0, 0, 0, 0, 0, 0, 0, FALSE, 0, 0, FALSE
 .GetSize sx&,sy&
 .undo
 .SetCurrentPageSize sx,sy
 .SetPageSize sx,sy
 if .getobjectcount (true, true) > 1 then
 .group
 .AlignToCenterOfPage 3, 3
 .ungroup
 else
 .AlignToCenterOfPage 3, 3
 end if
END WITHOBJECT
STOP

ErrHandler:
IF ErrNum=1000 THEN
 MessageBox "You should select an object first to redimension a page","Error",16
ELSE
 MessageBox "Error " & Errnum & " occured in script","Error",16
ENDIF
STOP
 
А вот так если
Код:
Sub Pagesize()
ActiveDocument.Unit = cdrMillimeter
    Dim sel100 As Shape, pa As Currency

ActivePage.Shapes.All.CreateSelection

    Set sel100 = ActiveSelection.Group
    SendKeys "p"
dl = ActiveShape.SizeWidth
sh = ActiveShape.SizeHeight
With ActiveDocument.MasterPage
        .SetSize dl, sh
           
    End With
 
End Sub
 
А зачем, извиняюсь, за глупый вопрос, SendKeys "p" ? '%)'
 
Ну хотя бы ActiveSelection.Move
 
Сдвиг по горизонтали и вертикали
 
Хотя чуть не забыл есть же прямой метод AlignToPageCenter
 
Ну так у него ж тоже параметры есть!
При правильном вызове не выдает ;)
Код:
ActiveSelection.AlignToPageCenter (cdrAlignHCenter)
ActiveSelection.AlignToPageCenter (cdrAlignVCenter)
 
Статус
Закрыто для дальнейших ответов.