Экспорт графики через макрос можно ли сделать ?

Программа Владимира Неуймина RastrWin и ее клоны: ActOpus, Барс. Статическая устойчивость.

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеИван » 18 апр 2008, 21:48

Цитата:

Если кто раст подкинет, студенческую или демку, готов убить вечер.


гхм. а он что дефицит ?

http://www.rastrwin.ru/rastr/index.php

пароль на дистриб - Astra-03

правда сомневаюсь что лицензия вам придет раньше понедельника Sad

Цитата:

Имхо перхватывать окно с графикой и то что туда рисуется - экспортировать в EMF и на диск - всеж вектор получаем.


вот не знаю как у вас вектор получится. мне бы растровую Smile графику получить - уже буду счастлив.

Цитата:

Посмотрите в MS Spy я думаю можно определить характерные для этого окна параметры.


смотрел Inqsoft Window Scanner. нет у этого окна харак. параметров Sad
Иван
 
Сообщения: 0
Зарегистрирован: 12 апр 2008, 21:12

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеИван » 19 апр 2008, 15:18

http://wiki.regimov.net/index.php/Предложения_по_доработке_п рограммы_РАСТР

Цитата:



Описание Комментарий разработчика

Экспорт графики в формат bmp, jpg Экспорт есть в wmf


??? Это где в растре такое счастье то ?

вот это что ли? так всем нужно совсем другое Smile

Цитата:

Копировать - копирует предварительно выделенный прямоугольный участок (Графика -

Выделить) в буфер обмена Windows (формат WMF), этот участок можно вставить в виде

картинки в большинство Windows приложений.
Иван
 
Сообщения: 0
Зарегистрирован: 12 апр 2008, 21:12

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеGar » 21 апр 2008, 19:35

Еще актуально?

На работе глянул в Spy на Rastr (демку)

Вообщем два варианта работы по сути.

Либо нужен перехват отрисовки, либо использование стандартного функционала RASTR



1) перехват

- родительское окно - кнтейнер имеетм имя "графика" отсюда:

-Ищем окно...

-Проходим по его детям, или по всем окнам и находим в списке родительского хендл окна "графика".

-Берем его хендл.

- пишем перехват и посылаем ему сообщение для перерисовки. пишем в файл WMF.



2)ипсользование RASTR

Судя повсему можно все сделать без внешней тулзины.

Посылаем месагу в меню - открыть окно графики (если не открыто) далее - месагу чтобы "выделить"

Далее серию месаг в окно графики для выделения ректангла.

И в завершении - копировать в встроенное меню окна - "графика"

(возможно все это можно сделать через сам растр - т.е. его объектную модель) (все месаги - имеют уникальные номера- их параметры тоже - изучается в Spy)

Все что скопировалось - лежит в буфере - это можно прямо из растра вставлять стандартными средствами поочереди в ворд (через его объектную модель), тудаже можно писать все таблицы. - готовый отчет:) все картинки в векторе.. WMF

Тоесть.

1) Расчет

2) В ворд пишестя пишется характерная инфа

3) Таблицы

4) вставляется картинка

и по новой.



PS Выше в сообщении ошибся назвав WMF - EMF

Gar
 
Сообщения: 0
Зарегистрирован: 19 мар 2007, 00:00

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеИван » 21 апр 2008, 22:08

Цитата:

Еще актуально?


да более чем...хорошего решения ведь до сих пор нет. я сейчас хватаю весь рабочий стол с одновременным обрезанием нужной части экрана и сохранением в png. но это ж как-то... не элегантно чтоли Smile

Цитата:

Вообщем два варианта работы по сути.

Либо нужен перехват отрисовки, либо использование стандартного функционала RASTR


отлично. а реализовать к примеру второй метод можно ? функция сохраняющая окно графики в wmf файл более чем устроит... Smile
Иван
 
Сообщения: 0
Зарегистрирован: 12 апр 2008, 21:12

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеGar » 22 апр 2008, 08:19

Драфт сделан:) посталю проверки, причешу код - выложу в Wiki...

Основная проблема дествительно в окнах... ну не имеют они классов:) - даже сам Rastr...

Пока ищу окно "Графика", но ведь оно может быть закрыто...

Если нужен готовая dll - то надо определиться - что она будет делать...

Можно пойти дальше- сделать dll c определенным функционалом и обренуть в COM.:):)Smile только вот автор не будет рад явно:)

В VBScript - к сожалению не нашел средств чтобы вызывать функции WINAPI не через то самое место.
Gar
 
Сообщения: 0
Зарегистрирован: 19 мар 2007, 00:00

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеGar » 24 апр 2008, 14:32

Жду коментария ВГ... не будет ли это нарушением?
Gar
 
Сообщения: 0
Зарегистрирован: 19 мар 2007, 00:00

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеИван » 24 апр 2008, 21:32

Цитата:

Жду коментария ВГ... не будет ли это нарушением?


ок. ждем. может в новой версии вообще в стандартре дождемся...

дайте потестить пока Wink
Иван
 
Сообщения: 0
Зарегистрирован: 12 апр 2008, 21:12

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеGar » 25 апр 2008, 08:30

Потсараюсь на выходных довести до ума

Думаю сделать в итоге так: DLL ULRastr – COM

ULRastrObject

.AttachRastrObject(...)

.Detach

ULRastrObject.ResultWindow(«Графика»)

.Open

.Close

.Expand

.ReDraw

.SetScale

.UseSelect

.ClearSelect

.SelectAll

.SelectRect(...)

.CopyWMF2Clipboard

.SaveWMF2File(...)



Все свойства и методы должны быть доступны из VBScript - Rastr и других программ
Gar
 
Сообщения: 0
Зарегистрирован: 19 мар 2007, 00:00

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеИван » 25 апр 2008, 11:39

впечатляет Smile жду релиза. хотя бы закрытого на бета-тест Smile
Иван
 
Сообщения: 0
Зарегистрирован: 12 апр 2008, 21:12

Re: Экспорт графики через макрос можно ли сделать ?

СообщениеИван » 04 фев 2009, 19:19

подниму тему. воды немало утекло, а решения от разработчиков все нет. и ощущение что не будет ((

Gar

может рассмотрите возможность вернутся к доработке кода ?
Иван
 
Сообщения: 0
Зарегистрирован: 12 апр 2008, 21:12


Вернуться в Rastr