Есть знатоки по скриптам?

Статус
Закрыто для дальнейших ответов.

Flash_PR

Участник
Топикстартер
Сообщения
1
Реакции
0
Сам уже обыскался в хелпе, не нашел. Может кто подскажет функцию.
Есть глава с фреймами и загружеными картинками. Нужно по имени картинки выделять фрейм в котором загружена картинка с указаным именем. Т.е. например есть 5 загруженых Tiff
1.tif
2.tif
3.tif
4.tif
5.tif
как можно реализовать в скрипте выделение фрейма с загруженым в нем 3.tif.....?
 

Yurii_Suhnaoff

Участник
Сообщения
111
Реакции
0
Ответ: Есть знатоки по скриптам?

Гулять по всем фреймам начиная с первого и глядеть то в нем.
если что надо остановится.
Глядеть как звать картинку во фрейме:
PicName$ = .CurrentPictureFile()
Гулять например так:
.FrameFirst
.FrameNext
в цикле
 

Shira

Участник
Сообщения
3
Реакции
0
Ответ: Есть знатоки по скриптам?

А вот обратная задача - написать скрипт, который бы перед словом "рис." вставлял бы фрейм и импортил бы в него картинку определенного имени.
То есть у меня-то проблема номер раз - создать фрейм, а главное, его привязку к фрейму страницы.
.FormatCreateFrame 1050558, 1580010, 560001, 403953 - вот эти числа же не вычислишь, что вместо этого можно придумать?
Ну и аналогично с .InsertFrameAnchor к ним.
 

Yurii_Suhnaoff

Участник
Сообщения
111
Реакции
0
Ответ: Есть знатоки по скриптам?

Можно попробовать искать так - В цикле:
.EditInitFindText "Рис."
.EditFindText
Потом когда нашел вставлять так и привязку к тексту Рис:
.TextFileSelectGet TXTfile$, Paragraf&
.FormatCreateFrame 0, 0, 100000, 100000
.InsertFrameAnchorBegin
.TextFileSelect TXTfile$, Paragraf&
.InsertFrameAnchor
Картинку грузить:
.FileImportPicture
.FormatAttachPicture
Размеры фрейма по идее можно брать по размерам картинки
.FormatFramePictureGet Width&, Height&
 

Shira

Участник
Сообщения
3
Реакции
0
Ответ: Есть знатоки по скриптам?

Спасибо за участие. Но осталось непонятным.
.FormatCreateFrame 0, 0, 100000, 100000 - создаем фрейм указанного размера в левом верхнем углу страницы.
.InsertFrameAnchor - привязываем созданный фрейм к выделенному тексту, но не понятно, на каком расстоянии.
.FormatFramePictureGet Width&, Height& - узнаем размеры картинки (или все же фрейма, куда картинку запихали?) И что теперь делать с этими размерами?
И к какой позиции страницы оказалоась картинка привязана?
 

Yurii_Suhnaoff

Участник
Сообщения
111
Реакции
0
Ответ: Есть знатоки по скриптам?

Shira сказал(а):
Спасибо за участие. Но осталось непонятным.
.FormatCreateFrame 0, 0, 100000, 100000 - создаем фрейм указанного размера в левом верхнем углу страницы.
Ну можно и не в самом верху. Так просто удобнее

Shira сказал(а):
.InsertFrameAnchor - привязываем созданный фрейм к выделенному тексту, но не понятно, на каком расстоянии.
Привязываем как нам надо

Shira сказал(а):
.FormatFramePictureGet Width&, Height& - узнаем размеры картинки (или все же фрейма, куда картинку запихали?) И что теперь делать с этими размерами?
И к какой позиции страницы оказалоась картинка привязана?
Вообщем что гадать?
Вот открыл новый документ, запихал туда текст от балды, в одном из параграфов есть текст "рис." (без кавычек)
Пример скрипта:
+++++++++++
REM Created On Wednesday, October, 31, 2007 by Yurii

WITHOBJECT "CorelVentura.Automation.8"
.EditInitFindText "рис.", .CurrentChapter = FALSE, .Backward = FALSE, .FromBegin = FALSE, .MatchCase = FALSE, .WholeWord = FALSE, .MaintainCase = FALSE, .Reset = FALSE
.EditInitFindText .Reset = TRUE
.EditFindText
.EditFindText
Message "1"
.TextCharLeft
.TextLineInfoGet , , , LP&, TP&
MyMe$=LP&
MyMe2$=TP&
Message MyMe$+" "+MyMe2$
.FormatCreateFrame 0, -0, 10000, 10000
Message "2"
.InsertFrameAnchorBegin
.InsertFrameAnchor 2, LP&, TP&
Message "3"
.FormatObjectBegin 2
.FormatFrameGeneral .FitTextVertical = FALSE, .FrameFlow = 1
.FormatFrameAnchor .Position = 2, .Alignment = 4
.FormatFrameMarginsInside 1, .FlowInFrame = 1
.GraphicPosition
.FormatObjectEnd
Message "4"
.FileImportPicture "C:\tiff\1.tif", 0, FALSE, TRUE
Message "5"
.FormatFramePictureGet WP&, HP&
.FormatFrameGeneral , , WP&, HP&

END WITHOBJECT
+++++++++++
Запусти, погляди.
 
Статус
Закрыто для дальнейших ответов.