|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.11.2015, 18:36 | #1 |
Новичок
Джуниор
Регистрация: 18.07.2013
Сообщений: 2
|
как зделать screenshot/thumbnail документа?
никак не получается сделать preview/screenshot/thumbnail документов не открывая самого файла в отдельной программе
процедура OLE -> BMP procedure TForm1.DrawOleOnBmp(Ole: IOleObject; Bmp: TBitmap); var ViewObject2: IViewObject2; ViewSize: TPoint; AdjustedSize: TPoint; DC: HDC; R: TRect; begin if Succeeded(Ole.QueryInterface(IViewO bject2, ViewObject2)) then begin ViewObject2.GetExtent(DVASPECT_CONT ENT, -1, nil, ViewSize); DC := GetDC(0); AdjustedSize.X := MulDiv(ViewSize.X, GetDeviceCaps(DC, LOGPIXELSX), 2540); AdjustedSize.Y := MulDiv(ViewSize.Y, GetDeviceCaps(DC, LOGPIXELSY), 2540); ReleaseDC(0, DC); Bmp.Height := AdjustedSize.Y; Bmp.Width := AdjustedSize.X; SetRect(R, 0, 0, Bmp.Width, Bmp.Height); OleDraw(Ole, DVASPECT_CONTENT, Bmp.Canvas.Handle, R); end end; процедура получение OLEObject: procedure TForm1.Button4Click(Sender: TObject); var pdfapp : OleVariant; begin pdfapp := CreateOleObject('AcroPDF.PDF'); /// <--- Word.Application Paint.Picture ... pdfapp.Documents // pdfapp.openfile //pdfapp.loadfile... /// <--- не ясно как получить все методы OLE объекта ('C:\pdf.pdf'); pdfapp.GotoFirstPage; DrawOleOnBmp(IDispatch(pdfapp) As iOleObject, Image1.Picture.Bitmap); /// <--- как я могу получить только документ или только первую страницу? end; спасибо за любые идеи! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ListView,CheckBox,Thumbnail | vanya1992ua | Общие вопросы Delphi | 1 | 11.03.2010 19:37 |
ListView,CheckBox,Thumbnail | vanya1992ua | Помощь студентам | 0 | 11.03.2010 18:48 |
Создание списка как зделать??? | DEZuv | Microsoft Office Access | 0 | 04.04.2009 12:02 |
Как зделать icq флудер? | }{oт@бь)ч | Работа с сетью в Delphi | 4 | 28.10.2008 09:43 |