Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Вниз

Картинку на принтер 


hunter   (2001-12-17 13:17) [0]

Как осуществить сабж, но так чтобы правильно ее поместить на А4 в независимости от размера картинки.
Картинка есть-лист формати А4, но в каком разрешении не известно.



Sergey_n   (2001-12-18 00:06) [1]

В Borland C++ Builder вроде так
if ( PrintDialog1->Execute() ){
unsigned int BitmapInfoSize, BitmapImageSize;
long DIBWidth, DIBHeight;
PChar BitmapImage;
Windows::PBitmapInfo BitmapInfo;
Graphics::TBitmap *Bitmap;

Printer()->BeginDoc();
Bitmap = new Graphics::TBitmap();
Bitmap->Assign(Image3->Picture->Bitmap);
GetDIBSizes(Bitmap->Handle, BitmapInfoSize, BitmapImageSize);
BitmapInfo = (PBitmapInfo) new char[BitmapInfoSize];
BitmapImage = (PChar) new char [BitmapImageSize];
GetDIB(Bitmap->Handle, 0, BitmapInfo, BitmapImage);
DIBWidth = BitmapInfo->bmiHeader.biWidth;
DIBHeight = BitmapInfo->bmiHeader.biHeight;
StretchDIBits(Printer()->Canvas->Handle,
0, 0, DIBWidth, DIBHeight,
0, 0, DIBWidth, DIBHeight,
BitmapImage, BitmapInfo,
DIB_RGB_COLORS, SRCCOPY);
delete [] BitmapImage;
delete [] BitmapInfo;
delete Bitmap;

Printer()->EndDoc();
}

переделать на Delph думаю труда не составит.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.049 c
3-21946           set                   2001-12-05 00:08  2002.01.08  
Ещё раз работа с базами


7-22452           fsp                   2001-09-23 18:24  2002.01.08  
Событие onclick для программно созданного компанента


1-22187           mitry                 2001-12-15 02:53  2002.01.08  
Thread: Suspend/Resume & Synchronize


1-22133           Sand Worm             2001-12-19 14:55  2002.01.08  
Frame


1-22195           LNix                  2001-12-15 20:00  2002.01.08  
string