![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() ![]() |
![]() |
Тимон |
![]()
Сообщение
#1
|
|||
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Превед Красавчеги!
Кто нибудь вообще знает как можно изображение, которое я вывел с помощью Graph сохранить в файле с разрешением BMP? Подскажите пожалуйста, только, если не трудно, объясните толком.А то я по другому ни хрена не понимаю?
Сообщение отредактировано: klem4 - 9.06.2007 20:59 -------------------- Лучше просить прощения, чем разрешения.
|
|||
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Качаешь отсюда: Модули для вывода графики. (bmp, Pcx ...)
модуль BMP_PLUS, подключаешь его к программе, и когда твоя картинка отрисована полностью - вызываешь Save_BMP... |
Тимон |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Понятно.
Но тогда другой вопрос у меня возникает? Можно ли в Паскале 7.0 вывести хотя бы 16-битное изображение на экран из bmp файла? Если нет, то какой компилятор посоветуете? -------------------- Лучше просить прощения, чем разрешения.
|
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Можно и больше 256 цветов... Когда-то были драйверы SVGA32K.BGI и SVGA64K.BGI, можешь попробовать Google, наверняка где-то сохранились и тестовые примеры...
|
Ozzя |
![]()
Сообщение
#5
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
Тимон |
![]()
Сообщение
#6
|
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Да но ведь если я беру больше 256 цветов, то процедуры, которые ты указал для вывода изображения не работают. Они пашут только под 8 битной графикой максимум. Что делать?
-------------------- Лучше просить прощения, чем разрешения.
|
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Цитата Что делать? Повторяю: Go To Google, ищи по тем словам, которые я привел выше примеры использования |
Ozzя |
![]()
Сообщение
#8
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
http://pascal.sources.ru/graph/psp23.htm
hicolor/truecolor режимы + bmp |
Тимон |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
что -то я не понял какую именно процедуру или функцию ты предлагаешь. Если функцию PutBmp из модуля
Images, так там изображение загружается из памяти. А мне то нужно из файла. Можешь мне тогда объяснить как изображение в память засунуть? -------------------- Лучше просить прощения, чем разрешения.
|
Ozzя |
![]()
Сообщение
#10
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
var BMPPtr: Pointer;
...
BMPPtr:=LoadFile('чё_нить.bmp');
PutBMP(0,0,BMPPtr,false);
|
Тимон |
![]()
Сообщение
#11
|
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Короче я сделал всё как ты сказал.
Вот у меня получился такой код:
Uses Graph,Images,Memplus;
var BMPPtr: Pointer;
gd,gm:integer;
begin
Gd:=instaluserdriver ('svga64k',nil);
gm:=3;
InitGraph (gd,gm,'');
BMPptr:= Loadfile ('1.bmp');
PutBmp (0,0,BMPptr,false);
readln;
closeGraph;
end.
Вот только почему то всё равно ни хрена не работает. Где Ошибка? [/quote] -------------------- Лучше просить прощения, чем разрешения.
|
Ozzя |
![]()
Сообщение
#12
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
В 1-й строке.
Должно быть uses MegaGraf,Images,MemPlus,Keyboard,Fonts,i80386;
Потому что, ты теперь работаешь не со стандарным Graph'ом, а с библиотекой PSP. Установка режима так if SetSVGAMode(640,480,grSVGA64k) then
// тут твоя графика
|
Тимон |
![]()
Сообщение
#13
|
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Вот почему то именно таким образом он выводит изображение 256 бит
на экран.Если я меняю режим 6 на 7 (grSVGA16M) (потому что мне нужно вывести 24 битный рисунок) все это пахать почему то перестает.Что за х.....? Uses MegaGraf,Images,Memplus,Keyboard,Fonts,i80386;
var BMPPtr:pointer;
begin
BMPPtr:=loadfile ('t-256.bmp');
InitVBE;
SetMCGAMode;
if SetSVGAMode (640,480,6) then begin
PutBmp (0,0,BMPPtr,false);
end;
readln;
end.
-------------------- Лучше просить прощения, чем разрешения.
|
Ozzя |
![]()
Сообщение
#14
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Если я меняю режим 6 на 7 (grSVGA16M) (потому что мне нужно вывести 24 битный рисунок)
Вот тут я помочь ничем не смогу. Ибо ни одна из моих видеокарт уже не держит vesa 1.2. И твою программу с твоими рисунками проверить не смогу. |
Тимон |
![]()
Сообщение
#15
|
Новичок ![]() Группа: Пользователи Сообщений: 20 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
наконец то! Удалось вывести 16 битное изображение. Черт с этим 24-битным... Спасибо тебе Ozzя за помощь огромное!!!
-------------------- Лучше просить прощения, чем разрешения.
|
![]() ![]() |
![]() |
Текстовая версия | 1.08.2025 19:28 |