Форум: "WinAPI";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];
ВнизНарод как на WinAPI сделать скриншот желательно в jpeg? Найти похожие ветки
← →
SVM (2002-09-29 08:05) [0]Помогите, может есть в WinApi функции конвертирования Bitmap -> JPEG. Если есть подскажите, если нет может кто-то писал ее...
Заранее всем спасибо
← →
Ich Hasse (2002-09-29 12:25) [1]посмотри на www.xatka.vov.ru там в приколах находится такой как переворачивание экрана, почитай, он как раз считывает с экрана содержимое и переворачивает его...
← →
KaPaT (2002-09-29 12:59) [2]В FAQ поискать не дано, нет?
← →
Manulo (2002-09-29 16:44) [3]Ich Hasse: А ты давно то по хатке прохаживался?
← →
Александр Подбрезский (2002-10-03 12:20) [4]unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls,jpeg;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Image1: TImage;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
DC: HDC;
Canva: TCanvas;
B: TBitmap;
JPEG: TJPEGImage;
Bitmap: TBitmap;
begin
Canva := TCanvas.Create;
B := TBitmap.Create;
DC := GetDC(0);
try
Canva.Handle := DC;
with Screen do
begin
B.Width := Width;
B.Height := Height;
B.Canvas.CopyRect(Rect(0, 0, Width, Height), Canva,Rect(0, 0, Width, Height));
B.SaveToFile("C:\Documents and Settings\Alexander.PENTIUM-200-MMX\Desktop\1.jpg");
end
finally
ReleaseDC(0, DC);
B.Free;
Canva.Free;
end;
JPEG := TJPEGImage.Create;
Bitmap := TBitmap.Create;
try
Bitmap.LoadFromFile("C:\Documents and Settings\Alexander.PENTIUM-200-MMX\Desktop\1.jpg");;
JPEG.Assign(Bitmap);
Image1.Picture.Assign(JPEG);
image1.Picture.SaveToFile("C:\Documents and Settings\Alexander.PENTIUM-200-MMX\Desktop\1.jpg");;
finally
JPEG.Free;
Bitmap.Free;
end;
end;
end.
У меня работает. Делает скриншот с десктопа и в jpeg загоняет
← →
k (2002-10-03 12:32) [5]скачай FastLIB библиотеку (ссылка есть на DelphiGFX). она использует intel jpeg library на чистом WinApi
← →
sancho (2002-10-04 21:54) [6]Руками
printscreen - копироние содержимого экрана в клипборд
alt + printscreen - копирование активного окна
Ну а потом тащи в рисовалку!!!!
← →
SVM (2002-10-04 22:20) [7]Мне надо скриншот сделать программно на чистом WinAPI, можно в JPEG, можно в GIF.
← →
Rouse_ (2002-10-05 17:23) [8]Немного подправлю пример
procedure TForm1.Button1Click(Sender: TObject);
var
DC: HDC;
Canva: TCanvas;
B: TBitmap;
JPEG: TJPEGImage;
Bitmap: TBitmap;
begin
Canva := TCanvas.Create;
B := TBitmap.Create;
DC := GetDC(0);
try
Canva.Handle := DC;
with Screen do
begin
B.Width := Width;
B.Height := Height;
B.Canvas.CopyRect(Rect(0, 0, Width, Height), Canva,Rect(0, 0, Width, Height));
JPEG.Assign(B);
JPEG.SaveToFile("C:\Documents and Settings\Alexander.PENTIUM-200-MMX\Desktop\1.jpg");
end
finally
ReleaseDC(0, DC);
B.Free;
Canva.Free;
JPEG.Free;
end;
Так оно правильней будет
Желаю успехов
← →
SVM (2002-10-07 14:59) [9]Я же говорил, что на чистом API, можно в GIF
← →
k (2002-10-07 15:28) [10]ходят слухи, что чистый WinAPI понятия не имеет про jpeg или gif
Можно сделать как FastLIB c intel jpeg library
или через OLE исп. к.н. софт, например эксплорер.
либо почитать док и написать самому.
если я заблуждаюсь, поправьте меня
← →
SVM (2002-10-09 00:12) [11]Смотрел я этот FastLIB, дык там нужна dll-ка...
Народ ну помогите!!! Может у кого-нить есть исходники конвертирования BITMAP в GIF (я так думаю, что это проще чем в JPEG).
← →
Rouse_ (2002-10-09 00:28) [12]> (я так думаю, что это проще чем в JPEG
Проще чем JPEG.Assign(Bitmap)? Ну-ну.
Я так понимаю ты хочешь чтоб программа была маленькой, раз маленькой значит опять какаято пакость опять пишется (или я не прав?). Чем тебе этот то пример не подходит обьясни?
Кстати присулайся к совету > k (07.10.02 15:28)
Желаю успехов
← →
SVM (2002-10-09 12:14) [13]Вопрос остается в силе...
← →
SVM (2002-10-10 00:15) [14]Вопрос остается в силе...
← →
Rouse_ (2002-10-10 00:21) [15]Дык ЁПРСТ чем тебя код то не устраивает скажи? Все правильно дали
Желаю успехов
← →
SVM (2002-10-10 11:39) [16]Дык я говорю размер исполняего файла должен быть маленьким
← →
relict (2002-10-10 13:07) [17]это тебе батенька тогда С++ нужен
← →
Pumpkin (2002-10-10 13:16) [18]Маленький не получится. Любой код сжимающий в JPEG займет не намного меньше чем при uses Jpeg;
← →
bytebutcher (2002-10-12 03:26) [19]В WinAPI НЕТУ функций конвертации или записи в JPEG!!!!!!!!!!!
← →
Evgeny (2002-10-12 07:38) [20]Если хочешь сохранять в JPEG, то действительно маленький размер получить невозможно, а вот с GIF`ом можно сделать очень даже компактно
afro@sibovk.omskcity.com
subj: Bitmap -> GIF
иначе уйдет в помойку.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.012 c