Экспорт в файл макросом CorelDraw
Макросы в CorelDraw – это не только операции с фигурами, слоями, шейпами и прочими элементами файла, но и работа непосредственно самими файлами; файловой системой компьютера. Я уже писал о том, как можно прочитать из файла, а в этой небольшой заметке покажу, как создавать папки, экспортировать в разные форматы файлов и получать имя открытого документа с помощью макроса для CorelDraw на языке VBA.
Итак, для начала функция, которая создает папку
Sub CreateFolderUp(folderUp As String)
If Len(Dir(folderUp, vbDirectory)) = 0 Then
MkDir folderUp
End If
End Sub
На вход функция принимает строку (адрес) будущего каталога, проверяет, существует ли уже такая, и если существует, то создает директорию с указанным адресом.
Экспорт в формат JPEG
Dim expflt As ExportFilter, doc1 As Document, wid As Long, hey As Long, adr As String
Set doc1 = ActiveDocument
Set expflt = doc1.ExportBitmap(adr, cdrJPEG, cdrAllPages, cdrRGBColorImage, wid, hey, 150, 150, cdrNormalAntiAliasing, False, False, True, False, cdrCompressionNone)
With expflt
.Progressive = False
.Optimized = True
.SubFormat = 0
.Compression = 50
.Smoothing = 10
.Finish
End With
Размеры и настройки понятны должны быть из названий. А вот код для сохранения файла в формате CorelDraw (cdr):
Dim opt As New StructSaveAsOptions, upFile As String
If ActiveDocument.Dirty Then ActiveDocument.Save
opt.EmbedICCProfile = False
opt.EmbedVBAProject = True
opt.Filter = cdrCDR
opt.IncludeCMXData = False
opt.Overwrite = True
opt.Range = cdrAllPages
opt.ThumbnailSize = cdr10KColorThumbnail
opt.Version = cdrFileVersion.cdrVersion13
ActiveDocument.SaveAs upFile, opt
Часто для экспорта требуется знать адрес открытого документа, чтобы сохранить новый файл рядом. Текущая папка документа
ActiveDocument.FilePathИмя открытого документа:
ActiveDocument.FileNameОбратите внимание, что две команды выше вызовут ошибку, если вызывать их для еще ни разу не сохранённого документа.

Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Программы на заказ
Отзывы
Контакты