Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Corba";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];

Вниз

Word OleContainer   Найти похожие ветки 

 
Programmer Andrey ©   (2005-04-07 14:35) [0]

Пишу диплом по теме: "Программа контроля знаний студентов". Требования преподавателя следующие: Загрузка вопросов из Word"a и сохранение в БД для дальнейшего тестирования; количество пользователей более 30; установка минимального количества дополнительного ПО; сервер тестирования и клиенты; вопросы могут содержать формулы, рисунки, диаграммы и др.
Я реализовал это следующим образом: из Word"a загружаю вопросы и варианты ответа в blob поле через OLEContainer. Затем при тестировании читаю вопросы и ответы из blob поля и вывожу на экран их также через OLEContainer. Меня волнует вопрос быстродействия. Все это получается с низким быстродейсвием даже на локальной машине (Celeron 900).
Подскажите технологию хранения и выдачи информации в соответствии с поставленной задачей с оптимальным


 
YurikGL ©   (2005-04-07 14:59) [1]

отказаться от ворда...


 
Programmer Andrey ©   (2005-04-07 16:27) [2]

А в каком формате тогда хранить в базе, чтобы потом была возможность выдать это на экран?


 
YurikGL ©   (2005-04-07 16:55) [3]

Programmer Andrey ©


> А в каком формате тогда хранить в базе, чтобы потом была
> возможность выдать это на экран?

На мой взгляд нужно разработать что-то типа единой формы вопроса и хранить отдельно рисунки, отдельно формулы.
Но это зависит от количества формул и рисунков в вопросе.
Можно еще делать скриншоты всех вопросов и хранить только рисунки.


 
Programmer Andrey ©   (2005-04-07 17:33) [4]

А как сделать скриншот, определенной части документа? Вопросы и ответы хранятся в таблицах. Каждая таблица - отдельный вопрос с ответами. Первая строка - вопрос, последняя - номера правильных ответов, все что посередине - варианты ответов. В файле столько таблиц, сколько вопросов по данному предмету или теме.


 
YurikGL ©   (2005-04-07 17:47) [5]

>А как сделать скриншот, определенной части документа?

Автоматизированно? Если только печатать выделенную область в файл-рисунок...

А так, ИМХО любым грабером... я PrintKey2000 использую...


 
Programmer Andrey ©   (2005-04-07 17:54) [6]

А есть примерчик печати выделенной области в файл-рисунок?


 
YurikGL ©   (2005-04-07 18:47) [7]


> Programmer Andrey ©   (07.04.05 17:54) [6]
> А есть примерчик печати выделенной области в файл-рисунок?

У меня, к сожалению нету.
Но подозреваю, что существует виртуальный принтер, который позволит выводить в файл рисунка. Есть же PDFWriter, который позволяет печатать в PDF документ. Нужно что-то подобное.


 
Programmer Andrey ©   (2005-04-08 08:31) [8]

Попробую поискать


 
AloneAli ©   (2005-04-08 09:35) [9]

А что если каждый рисунок, или диаграмму, или формулу хранить в jpg... Пути к ним хранить в ini-файле и потом в программе загружать в зависимости от выбранного вопроса.


 
Programmer Andrey ©   (2005-04-08 10:38) [10]

Я подумал, может все преобразовывать в gif и сохранять в базе, а затем показывать все это на экране (например с помощью TWebBrowser)? Но столкнулся с такой проблемой: если в буфере текст, то я его могу получить через clipboard.AsText если только формула, то через
var handle_ : thandle;
...
Handle_:=Clipboard.GetAsHandle(2);
Image1.Picture.LoadFromClipBoardFormat(2, Handle_, 0);
А вот если и текст и формула, то не могу получить содержимое буфера обмена. Хотя в Paint оно вставляется без проблем как текст с формулой, только шрифт становиться почему-то мельче.


 
AloneAli ©   (2005-04-08 10:49) [11]


> Programmer Andrey ©   (08.04.05 10:38) [10]

Можно использовать следующее:
Image1.Picture.LoadFromFile("имя файла");


 
Programmer Andrey ©   (2005-04-08 11:11) [12]

Для этого нужно сохранить информацию каким-либо образом в графический файл


 
AloneAli ©   (2005-04-08 11:44) [13]


> Programmer Andrey ©   (08.04.05 11:11) [12]

Сделай скрин-шоты.
Продумай логику загрузки файлов.
Тогда у тебя единая форма вопроса.


 
AloneAli ©   (2005-04-08 11:47) [14]

Если у тебя число рисунков (диаграмм, формул) в каждом вопросе разное, то можно динамически создавать соответствующее количество TImage.
Я не думаю, что у тебя рисунки (диаграммы, формулы) будут весить много.


 
YurikGL ©   (2005-04-08 13:45) [15]


> Programmer Andrey ©   (08.04.05 08:31) [8]

Задай вопрос в Потрепацца, типа "Как распечатать документ ворд в растровый рисунок?"


 
Programmer Andrey ©   (2005-04-08 14:13) [16]

Воспользуюсь наверное RxRichEdit и blob полями.


 
YurikGL ©   (2005-04-08 22:37) [17]

>Programmer Andrey ©   (08.04.05 14:13) [16]

Тогда уж просто печатай в PDF и отображай PDF на форме. Компоненты должны быть. PDF-к можно хранить в отдельном файле *.pdf а в базе хранить только путь к нему.


 
Programmer Andrey ©   (2005-04-09 08:55) [18]

Отдельные файлы не подходят. Все должно храниться в БД. Файлы можно засунуть в blob поля



Страницы: 1 вся ветка

Форум: "Corba";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.013 c
2-1137652551
dera
2006-01-19 09:35
2006.02.05
Как уберечь программу от незаконного копирования?


1-1135694937
hgd
2005-12-27 17:48
2006.02.05
Скачать картинку и вывести в Image


2-1137447397
Compton's G
2006-01-17 00:36
2006.02.05
StringList


15-1136978114
syte_ser78
2006-01-11 14:15
2006.02.05
винт с 16Мб кеша


4-1132580583
clickmaker
2005-11-21 16:43
2006.02.05
MSI (Windows Installer) + AddMonitor() = Access denied





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский