|
int miLANG_CHINESE_SIMPLIFIED = 2052;
IDocument *pDoc = new IDocument;
pDoc->CreateDispatch( _T("MODI.Document") );
pDoc->Create(GetAppPath() + _T("out.bmp"));
pDoc->OCR( miLANG_CHINESE_SIMPLIFIED, 0, 0 );
IImages images = pDoc->GetImages();
long num =images.GetCount();
for( int i = 0; i < num; i++ )
![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) {
IImage image = images.GetItem(i);
ILayout layout = image.GetLayout();
strTemp.Append( layout.GetText());
}
pDoc->Close(0);
pDoc->ReleaseDispatch();
delete pDoc;
还需要导入Office2003的Dispatch接口包装类
![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) mdivwctl.h 1 // Machine generated IDispatch wrapper class(es) created with ClassWizard 2 ///////////////////////////////////////////////////////////////////////////// 3 // IMiFont wrapper class 4![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 5 class IMiFont : public COleDispatchDriver 6![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 7 public: 8![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiFont() {} // Calls COleDispatchDriver default constructor 9![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiFont(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 10![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiFont(const IMiFont& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 11![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 12 // Attributes 13 public: 14![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 15 // Operations 16 public: 17 long GetFamily(); 18 long GetFaceStyle(); 19 long GetSerifStyle(); 20 short GetFontSize(); 21 }; 22 ///////////////////////////////////////////////////////////////////////////// 23 // IMiRect wrapper class 24![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 25 class IMiRect : public COleDispatchDriver 26![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 27 public: 28![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiRect() {} // Calls COleDispatchDriver default constructor 29![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiRect(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 30![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiRect(const IMiRect& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 31![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 32 // Attributes 33 public: 34![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 35 // Operations 36 public: 37 long GetTop(); 38 long GetLeft(); 39 long GetRight(); 40 long GetBottom(); 41 }; 42 ///////////////////////////////////////////////////////////////////////////// 43 // IMiRects wrapper class 44![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 45 class IMiRects : public COleDispatchDriver 46![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 47 public: 48![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiRects() {} // Calls COleDispatchDriver default constructor 49![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiRects(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 50![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiRects(const IMiRects& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 51![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 52 // Attributes 53 public: 54![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 55 // Operations 56 public: 57 long GetCount(); 58 LPUNKNOWN Get_NewEnum(); 59 LPDISPATCH GetItem(long Index); 60 }; 61 ///////////////////////////////////////////////////////////////////////////// 62 // IWord wrapper class 63![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 64 class IWord : public COleDispatchDriver 65![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 66 public: 67![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IWord() {} // Calls COleDispatchDriver default constructor 68![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IWord(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 69![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IWord(const IWord& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 70![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 71 // Attributes 72 public: 73![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 74 // Operations 75 public: 76 short GetRecognitionConfidence(); 77 long GetFontId(); 78 long GetLineId(); 79 long GetRegionId(); 80 CString GetText(); 81 LPDISPATCH GetFont(); 82 long GetId(); 83 LPDISPATCH GetRects(); 84 }; 85 ///////////////////////////////////////////////////////////////////////////// 86 // IWords wrapper class 87![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 88 class IWords : public COleDispatchDriver 89![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 90 public: 91![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IWords() {} // Calls COleDispatchDriver default constructor 92![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IWords(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 93![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IWords(const IWords& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 94![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 95 // Attributes 96 public: 97![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 98 // Operations 99 public: 100 long GetCount(); 101 LPUNKNOWN Get_NewEnum(); 102 LPDISPATCH GetItem(long Index); 103 }; 104 ///////////////////////////////////////////////////////////////////////////// 105 // ILayout wrapper class 106![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 107 class ILayout : public COleDispatchDriver 108![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 109 public: 110![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) ILayout() {} // Calls COleDispatchDriver default constructor 111![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) ILayout(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 112![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) ILayout(const ILayout& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 113![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 114 // Attributes 115 public: 116![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 117 // Operations 118 public: 119 long GetLanguage();//获得OCR处理时的使用的语言设置 120 long GetNumChars();//获得已经辨认文本的字符数目 121 long GetNumWords(); 122 long GetNumFonts();//获得字体 123 CString GetText();//以单CString方式获得辨认文本 124 LPDISPATCH GetWords(); 125 }; 126 ///////////////////////////////////////////////////////////////////////////// 127 // IImage wrapper class 128![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 129 class IImage : public COleDispatchDriver 130![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 131 public: 132![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IImage() {} // Calls COleDispatchDriver default constructor 133![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IImage(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 134![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IImage(const IImage& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 135![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 136 // Attributes 137 public: 138![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 139 // Operations 140 public: 141 LPDISPATCH GetLayout(); //获得OCR页面结果 142 long GetPixelWidth(); //获取像素的宽 143 long GetPixelHeight(); //获取像素的高 144 long GetXdpi(); //获取每英寸X轴像素 145 long GetYdpi(); //获取每英寸Y轴像素 146 long GetBitsPerPixel(); //获取每像素的位数 147 LPDISPATCH GetThumbnail(long ThumbSize);//返回IPictureDisp,获取图象指图 148 LPDISPATCH GetPicture();//获取图象返回IPictureDisp 149 long GetCompression(); //获取图片压缩程度 150 void OCR(long LangId, BOOL OCROrientImage, BOOL OCRStraightenImage);//对页面执行OCR 151 void Rotate(long Angle);//转动页面增加90度 152 }; 153 ///////////////////////////////////////////////////////////////////////////// 154 // IImages wrapper class 155![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 156 class IImages : public COleDispatchDriver 157![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 158 public: 159![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IImages() {} // Calls COleDispatchDriver default constructor 160![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IImages(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 161![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IImages(const IImages& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 162![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 163 // Attributes 164 public: 165![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 166 // Operations 167 public: 168 long GetCount(); 169 void Add(LPDISPATCH Page, LPDISPATCH BeforePage); 170 LPUNKNOWN Get_NewEnum(); 171 LPDISPATCH GetItem(long Index); 172 void Remove(LPDISPATCH Page); 173 }; 174 ///////////////////////////////////////////////////////////////////////////// 175 // IDocument wrapper class 176![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 177 class IDocument : public COleDispatchDriver 178![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 179 public: 180![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IDocument() {} // Calls COleDispatchDriver default constructor 181![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IDocument(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 182![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IDocument(const IDocument& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 183![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 184 // Attributes 185 public: 186![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 187 // Operations 188 public: 189 void Save(); //保存文挡 190 void Close(BOOL SaveChanges); //关闭文挡 191 void SaveAs(LPCTSTR FileName, long FileFormat, long CompLevel);//以指定文件名,图片格式,压缩程度来保存文挡 192 LPDISPATCH GetImages(); //获取文挡页面收集 193 LPDISPATCH GetBuiltInDocumentProperties();//获取Office 文挡属性 194 LPDISPATCH GetCustomDocumentProperties();//获取Office 文挡属性 195 void Create(LPCTSTR FileOpen); //创建新的文挡 196 BOOL GetDirty(); //获得一个值,看是否不保存所修改过的文挡 197 void OCR(long LangId, BOOL OCROrientImage, BOOL OCRStraightenImage);//对整个文挡执行OCR 198 void PrintOut(long From, long To, long Copies, LPCTSTR PrinterName, LPCTSTR PrintToFileName, BOOL PrintAnnotation, long FitMode);//打印文挡到打印机或者文件 199 }; 200 ///////////////////////////////////////////////////////////////////////////// 201 // _IDocumentEvents wrapper class 202![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 203 class _IDocumentEvents : public COleDispatchDriver 204![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 205 public: 206![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IDocumentEvents() {} // Calls COleDispatchDriver default constructor 207![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IDocumentEvents(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 208![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IDocumentEvents(const _IDocumentEvents& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 209![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 210 // Attributes 211 public: 212![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 213 // Operations 214 public: 215 // method 'OnOCRProgress' not emitted because of invalid return type or parameter type 216 }; 217 ///////////////////////////////////////////////////////////////////////////// 218 // _IImageEvents wrapper class 219![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 220 class _IImageEvents : public COleDispatchDriver 221![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 222 public: 223![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IImageEvents() {} // Calls COleDispatchDriver default constructor 224![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IImageEvents(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 225![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IImageEvents(const _IImageEvents& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 226![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 227 // Attributes 228 public: 229![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 230 // Operations 231 public: 232 }; 233 ///////////////////////////////////////////////////////////////////////////// 234 // IMiSelectRect wrapper class 235![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 236 class IMiSelectRect : public COleDispatchDriver 237![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 238 public: 239![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectRect() {} // Calls COleDispatchDriver default constructor 240![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectRect(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 241![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectRect(const IMiSelectRect& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 242![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 243 // Attributes 244 public: 245![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 246 // Operations 247 public: 248 long GetPageNumber();//获取当前所显示页面 249 long GetLeft(); 250 long GetTop(); 251 long GetRight(); 252 long GetBottom(); 253 }; 254 ///////////////////////////////////////////////////////////////////////////// 255 // IMiSelectRects wrapper class 256![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 257 class IMiSelectRects : public COleDispatchDriver 258![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 259 public: 260![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectRects() {} // Calls COleDispatchDriver default constructor 261![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectRects(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 262![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectRects(const IMiSelectRects& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 263![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 264 // Attributes 265 public: 266![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 267 // Operations 268 public: 269 long GetCount(); 270 LPUNKNOWN Get_NewEnum(); 271 LPDISPATCH GetItem(long Index); 272 }; 273 ///////////////////////////////////////////////////////////////////////////// 274 // IMiSelectableItem wrapper class 275![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 276 class IMiSelectableItem : public COleDispatchDriver 277![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 278 public: 279![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectableItem() {} // Calls COleDispatchDriver default constructor 280![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectableItem(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 281![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectableItem(const IMiSelectableItem& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 282![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 283 // Attributes 284 public: 285![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 286 // Operations 287 public: 288 void CopyToClipboard(); //拷贝所选择文本到剪贴板 289 CString GetText(); //获取选择区域所辨认出的文本 290 LPDISPATCH GetWords(); //获得所辨认出的文本的字符集合 291 LPDISPATCH GetSelectRects();//返回一个选择区域 292 }; 293 ///////////////////////////////////////////////////////////////////////////// 294 // IMiSelectableImage wrapper class 295![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 296 class IMiSelectableImage : public COleDispatchDriver 297![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 298 public: 299![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectableImage() {} // Calls COleDispatchDriver default constructor 300![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectableImage(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 301![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiSelectableImage(const IMiSelectableImage& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 302![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 303 // Attributes 304 public: 305![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 306 // Operations 307 public: 308 void CopyToClipboard(long CopyAnnotation, long AlwaysKeepAnnotationColor);//拷贝所选择文本到剪贴板 309 LPDISPATCH ExportToPicture(long CopyAnnotation, long AlwaysKeepAnnotationColor);//返回一个IPictureDisp图形选择 310 void GetBoundingRect(long* plPageNum, long* Left, long* Top, long* Right, long* Bottom);//返回一个矩形区域 311 }; 312 ///////////////////////////////////////////////////////////////////////////// 313 // IMiDocView wrapper class 314![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 315 class IMiDocView : public COleDispatchDriver 316![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 317 public: 318![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiDocView() {} // Calls COleDispatchDriver default constructor 319![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiDocView(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 320![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiDocView(const IMiDocView& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 321![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 322 // Attributes 323 public: 324![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 325 // Operations 326 public: 327 LPUNKNOWN GetDocument(); //获取文挡 328 void SetDocument(LPUNKNOWN newValue); //设置文挡 329 CString GetFileName(); //获取文件名 330 void SetFileName(LPCTSTR lpszNewValue); //设置文件名 331 long GetNumPages(); //获取文挡的页数 332 void ClientToDocument(long* plX, long* plY);//转换视图坐标到文挡坐标 333 void DocumentToClient(long* plX, long* plY);//转换文挡坐标到视图坐标 334 void ClientToImage(long lSX, long lSY, long* pnPage, long* plX, long* plY);//转换视图坐标到页面坐标 335 void ImageToClient(long nPage, long lX, long lY, long* plSX, long* plSY); //页面坐标转换为视图坐标 336 void GetVisibleRect(long* Left, long* Top, long* Right, long* Bottom);//返回可视矩形坐标 337 void MoveRectIntoView(long Left, long Top, long Right, long Bottom); //移动指定的矩形区域到视图 338 long GetDocViewMode(); //获得决定显示页面的方式 339 void SetDocViewMode(long nNewValue); //设置决定以什么的方式去显示页面 340 long GetPageNum(); //获取当前所显示页面 341 void SetPageNum(long nNewValue); //设置当前所显示页面 342 void GetScale(double* pdScaleX, double* pdScaleY);//获取被使用坐标因素 343 void SetScale(double dScaleX, double dScaleY);//设置被使用坐标因素 344 long GetFitMode(); //设置确定怎么适合页面到视图窗口值 345 void SetFitMode(long nNewValue); //获取确定怎么适合页面到视图窗口值 346 long GetActionState(); //获取运行操作状态 347 void SetActionState(long nNewValue); //设置允许操作状态 348 LPDISPATCH GetTextSelection(); //获取用户选择区域 349 void SetTextSelection(LPDISPATCH newValue);//设置用户选择区域 350 LPDISPATCH GetImageSelection(); //获取用户选择,并以Image返回 351 void SetImageSelection(LPDISPATCH newValue);//设置用户选择,并以Image返回 352 void SelectAll(long nPage); //在页面上选择所有东西 353 void MoveSelectionToView(LPDISPATCH pdispSelection); //移动用户所选对象到视图 354 void SetLayerVisible(long Index, BOOL bNewValue);//设置文挡可视图层 355 BOOL GetLayerVisible(long Index); //获取文挡可视图层 356 }; 357 ///////////////////////////////////////////////////////////////////////////// 358 // _IMiDocViewEvents wrapper class 359![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 360 class _IMiDocViewEvents : public COleDispatchDriver 361![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 362 public: 363![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IMiDocViewEvents() {} // Calls COleDispatchDriver default constructor 364![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IMiDocViewEvents(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 365![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) _IMiDocViewEvents(const _IMiDocViewEvents& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 366![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 367 // Attributes 368 public: 369![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 370 // Operations 371 public: 372 // method 'FitmodeChanged' not emitted because of invalid return type or parameter type 373 // method 'ScaleChanged' not emitted because of invalid return type or parameter type 374 // method 'SelectionChanged' not emitted because of invalid return type or parameter type 375 // method 'PageChanged' not emitted because of invalid return type or parameter type 376 // method 'PageCountChanged' not emitted because of invalid return type or parameter type 377 // method 'CurPageNumChanged' not emitted because of invalid return type or parameter type 378 // method 'VisibleRectChanged' not emitted because of invalid return type or parameter type 379 }; 380 ///////////////////////////////////////////////////////////////////////////// 381 // IMiDocSearch wrapper class 382![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 383 class IMiDocSearch : public COleDispatchDriver 384![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 385 public: 386![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiDocSearch() {} // Calls COleDispatchDriver default constructor 387![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiDocSearch(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {} 388![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif) IMiDocSearch(const IMiDocSearch& dispatchSrc) : COleDispatchDriver(dispatchSrc) {} 389![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 390 // Attributes 391 public: 392![](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif) 393 // Operations 394 public: 395 void Initialize(LPUNKNOWN piDoc, LPCTSTR strPattern, VARIANT* PageNum, VARIANT* WordIndex, VARIANT* StartAfterIndex, VARIANT* Backward, BOOL MatchMinus, BOOL MatchFullHalfWidthForm, BOOL MatchHiraganaKatakana, BOOL IgnoreSpace); 396 void Search(LPUNKNOWN pSearchCallback, LPDISPATCH* ppiSearchResult); 397 }; 398![](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) mdivwctl.cpp 1 // Machine generated IDispatch wrapper class(es) created with ClassWizard 2![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 3 #include "stdafx.h" 4 #include "mdivwctl.h" 5![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 6 #ifdef _DEBUG 7 #define new DEBUG_NEW 8 #undef THIS_FILE 9 static char THIS_FILE[] = __FILE__; 10 #endif 11![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 12![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 13![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 14 ///////////////////////////////////////////////////////////////////////////// 15 // IMiFont properties 16![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 17 ///////////////////////////////////////////////////////////////////////////// 18 // IMiFont operations 19![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 20 long IMiFont::GetFamily() 21![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 22 long result; 23 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 24 return result; 25 } 26![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 27 long IMiFont::GetFaceStyle() 28![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 29 long result; 30 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 31 return result; 32 } 33![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 34 long IMiFont::GetSerifStyle() 35![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 36 long result; 37 InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 38 return result; 39 } 40![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 41 short IMiFont::GetFontSize() 42![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 43 short result; 44 InvokeHelper(0x5, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, NULL); 45 return result; 46 } 47![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 48![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 49 ///////////////////////////////////////////////////////////////////////////// 50 // IMiRect properties 51![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 52 ///////////////////////////////////////////////////////////////////////////// 53 // IMiRect operations 54![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 55 long IMiRect::GetTop() 56![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 57 long result; 58 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 59 return result; 60 } 61![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 62 long IMiRect::GetLeft() 63![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 64 long result; 65 InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 66 return result; 67 } 68![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 69 long IMiRect::GetRight() 70![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 71 long result; 72 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 73 return result; 74 } 75![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 76 long IMiRect::GetBottom() 77![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 78 long result; 79 InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 80 return result; 81 } 82![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 83![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 84 ///////////////////////////////////////////////////////////////////////////// 85 // IMiRects properties 86![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 87 ///////////////////////////////////////////////////////////////////////////// 88 // IMiRects operations 89![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 90 long IMiRects::GetCount() 91![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 92 long result; 93 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 94 return result; 95 } 96![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 97 LPUNKNOWN IMiRects::Get_NewEnum() 98![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 99 LPUNKNOWN result; 100 InvokeHelper(0xfffffffc, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL); 101 return result; 102 } 103![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 104 LPDISPATCH IMiRects::GetItem(long Index) 105![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 106 LPDISPATCH result; 107 static BYTE parms[] = 108 VTS_I4; 109 InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms, 110 Index); 111 return result; 112 } 113![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 114![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 115 ///////////////////////////////////////////////////////////////////////////// 116 // IWord properties 117![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 118 ///////////////////////////////////////////////////////////////////////////// 119 // IWord operations 120![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 121 short IWord::GetRecognitionConfidence() 122![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 123 short result; 124 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, NULL); 125 return result; 126 } 127![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 128 long IWord::GetFontId() 129![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 130 long result; 131 InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 132 return result; 133 } 134![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 135 long IWord::GetLineId() 136![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 137 long result; 138 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 139 return result; 140 } 141![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 142 long IWord::GetRegionId() 143![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 144 long result; 145 InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 146 return result; 147 } 148![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 149 CString IWord::GetText() 150![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 151 CString result; 152 InvokeHelper(0x6, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, NULL); 153 return result; 154 } 155![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 156 LPDISPATCH IWord::GetFont() 157![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 158 LPDISPATCH result; 159 InvokeHelper(0x7, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 160 return result; 161 } 162![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 163 long IWord::GetId() 164![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 165 long result; 166 InvokeHelper(0x8, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 167 return result; 168 } 169![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 170 LPDISPATCH IWord::GetRects() 171![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 172 LPDISPATCH result; 173 InvokeHelper(0x9, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 174 return result; 175 } 176![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 177![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 178 ///////////////////////////////////////////////////////////////////////////// 179 // IWords properties 180![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 181 ///////////////////////////////////////////////////////////////////////////// 182 // IWords operations 183![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 184 long IWords::GetCount() 185![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 186 long result; 187 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 188 return result; 189 } 190![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 191 LPUNKNOWN IWords::Get_NewEnum() 192![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 193 LPUNKNOWN result; 194 InvokeHelper(0xfffffffc, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL); 195 return result; 196 } 197![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 198 LPDISPATCH IWords::GetItem(long Index) 199![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 200 LPDISPATCH result; 201 static BYTE parms[] = 202 VTS_I4; 203 InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms, 204 Index); 205 return result; 206 } 207![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 208![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 209 ///////////////////////////////////////////////////////////////////////////// 210 // ILayout properties 211![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 212 ///////////////////////////////////////////////////////////////////////////// 213 // ILayout operations 214![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 215 long ILayout::GetLanguage() 216![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 217 long result; 218 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 219 return result; 220 } 221![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 222 long ILayout::GetNumChars() 223![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 224 long result; 225 InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 226 return result; 227 } 228![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 229 long ILayout::GetNumWords() 230![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 231 long result; 232 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 233 return result; 234 } 235![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 236 long ILayout::GetNumFonts() 237![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 238 long result; 239 InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 240 return result; 241 } 242![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 243 CString ILayout::GetText() 244![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 245 CString result; 246 InvokeHelper(0x5, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, NULL); 247 return result; 248 } 249![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 250 LPDISPATCH ILayout::GetWords() 251![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 252 LPDISPATCH result; 253 InvokeHelper(0x6, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 254 return result; 255 } 256![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 257![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 258 ///////////////////////////////////////////////////////////////////////////// 259 // IImage properties 260![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 261 ///////////////////////////////////////////////////////////////////////////// 262 // IImage operations 263![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 264 LPDISPATCH IImage::GetLayout() 265![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 266 LPDISPATCH result; 267 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 268 return result; 269 } 270![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 271 long IImage::GetPixelWidth() 272![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 273 long result; 274 InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 275 return result; 276 } 277![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 278 long IImage::GetPixelHeight() 279![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 280 long result; 281 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 282 return result; 283 } 284![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 285 long IImage::GetXdpi() 286![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 287 long result; 288 InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 289 return result; 290 } 291![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 292 long IImage::GetYdpi() 293![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 294 long result; 295 InvokeHelper(0x5, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 296 return result; 297 } 298![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 299 long IImage::GetBitsPerPixel() 300![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 301 long result; 302 InvokeHelper(0x6, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 303 return result; 304 } 305![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 306 LPDISPATCH IImage::GetThumbnail(long ThumbSize) 307![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 308 LPDISPATCH result; 309 static BYTE parms[] = 310 VTS_I4; 311 InvokeHelper(0x7, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms, 312 ThumbSize); 313 return result; 314 } 315![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 316 LPDISPATCH IImage::GetPicture() 317![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 318 LPDISPATCH result; 319 InvokeHelper(0x8, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 320 return result; 321 } 322![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 323 long IImage::GetCompression() 324![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 325 long result; 326 InvokeHelper(0x9, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 327 return result; 328 } 329![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 330 void IImage::OCR(long LangId, BOOL OCROrientImage, BOOL OCRStraightenImage) 331![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 332 static BYTE parms[] = 333 VTS_I4 VTS_BOOL VTS_BOOL; 334 InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 335 LangId, OCROrientImage, OCRStraightenImage); 336 } 337![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 338 void IImage::Rotate(long Angle) 339![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 340 static BYTE parms[] = 341 VTS_I4; 342 InvokeHelper(0xb, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 343 Angle); 344 } 345![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 346![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 347 ///////////////////////////////////////////////////////////////////////////// 348 // IImages properties 349![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 350 ///////////////////////////////////////////////////////////////////////////// 351 // IImages operations 352![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 353 long IImages::GetCount() 354![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 355 long result; 356 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 357 return result; 358 } 359![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 360 void IImages::Add(LPDISPATCH Page, LPDISPATCH BeforePage) 361![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 362 static BYTE parms[] = 363 VTS_DISPATCH VTS_DISPATCH; 364 InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 365 Page, BeforePage); 366 } 367![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 368 LPUNKNOWN IImages::Get_NewEnum() 369![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 370 LPUNKNOWN result; 371 InvokeHelper(0xfffffffc, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL); 372 return result; 373 } 374![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 375 LPDISPATCH IImages::GetItem(long Index) 376![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 377 LPDISPATCH result; 378 static BYTE parms[] = 379 VTS_I4; 380 InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms, 381 Index); 382 return result; 383 } 384![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 385 void IImages::Remove(LPDISPATCH Page) 386![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 387 static BYTE parms[] = 388 VTS_DISPATCH; 389 InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 390 Page); 391 } 392![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 393![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 394 ///////////////////////////////////////////////////////////////////////////// 395 // IDocument properties 396![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 397 ///////////////////////////////////////////////////////////////////////////// 398 // IDocument operations 399![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 400 void IDocument::Save() 401![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 402 InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL); 403 } 404![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 405 void IDocument::Close(BOOL SaveChanges) 406![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 407 static BYTE parms[] = 408 VTS_BOOL; 409 InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 410 SaveChanges); 411 } 412![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 413 void IDocument::SaveAs(LPCTSTR FileName, long FileFormat, long CompLevel) 414![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 415 static BYTE parms[] = 416 VTS_BSTR VTS_I4 VTS_I4; 417 InvokeHelper(0x4, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 418 FileName, FileFormat, CompLevel); 419 } 420![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 421 LPDISPATCH IDocument::GetImages() 422![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 423 LPDISPATCH result; 424 InvokeHelper(0x5, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 425 return result; 426 } 427![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 428 LPDISPATCH IDocument::GetBuiltInDocumentProperties() 429![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 430 LPDISPATCH result; 431 InvokeHelper(0x6, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 432 return result; 433 } 434![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 435 LPDISPATCH IDocument::GetCustomDocumentProperties() 436![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 437 LPDISPATCH result; 438 InvokeHelper(0x7, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 439 return result; 440 } 441![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 442 void IDocument::Create(LPCTSTR FileOpen) 443![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 444 static BYTE parms[] = 445 VTS_BSTR; 446 InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 447 FileOpen); 448 } 449![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 450 BOOL IDocument::GetDirty() 451![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 452 BOOL result; 453 InvokeHelper(0x9, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, NULL); 454 return result; 455 } 456![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 457 void IDocument::OCR(long LangId, BOOL OCROrientImage, BOOL OCRStraightenImage) 458![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 459 static BYTE parms[] = 460 VTS_I4 VTS_BOOL VTS_BOOL; 461 InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 462 LangId, OCROrientImage, OCRStraightenImage); 463 } 464![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 465 void IDocument::PrintOut(long From, long To, long Copies, LPCTSTR PrinterName, LPCTSTR PrintToFileName, BOOL PrintAnnotation, long FitMode) 466![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 467 static BYTE parms[] = 468 VTS_I4 VTS_I4 VTS_I4 VTS_BSTR VTS_BSTR VTS_BOOL VTS_I4; 469 InvokeHelper(0xb, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 470 From, To, Copies, PrinterName, PrintToFileName, PrintAnnotation, FitMode); 471 } 472![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 473![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 474 ///////////////////////////////////////////////////////////////////////////// 475 // _IDocumentEvents properties 476![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 477 ///////////////////////////////////////////////////////////////////////////// 478 // _IDocumentEvents operations 479![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 480![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 481 ///////////////////////////////////////////////////////////////////////////// 482 // _IImageEvents properties 483![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 484 ///////////////////////////////////////////////////////////////////////////// 485 // _IImageEvents operations 486![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 487![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 488 ///////////////////////////////////////////////////////////////////////////// 489 // IMiSelectRect properties 490![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 491 ///////////////////////////////////////////////////////////////////////////// 492 // IMiSelectRect operations 493![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 494 long IMiSelectRect::GetPageNumber() 495![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 496 long result; 497 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 498 return result; 499 } 500![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 501 long IMiSelectRect::GetLeft() 502![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 503 long result; 504 InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 505 return result; 506 } 507![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 508 long IMiSelectRect::GetTop() 509![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 510 long result; 511 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 512 return result; 513 } 514![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 515 long IMiSelectRect::GetRight() 516![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 517 long result; 518 InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 519 return result; 520 } 521![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 522 long IMiSelectRect::GetBottom() 523![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 524 long result; 525 InvokeHelper(0x5, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 526 return result; 527 } 528![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 529![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 530 ///////////////////////////////////////////////////////////////////////////// 531 // IMiSelectRects properties 532![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 533 ///////////////////////////////////////////////////////////////////////////// 534 // IMiSelectRects operations 535![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 536 long IMiSelectRects::GetCount() 537![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 538 long result; 539 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 540 return result; 541 } 542![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 543 LPUNKNOWN IMiSelectRects::Get_NewEnum() 544![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 545 LPUNKNOWN result; 546 InvokeHelper(0xfffffffc, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL); 547 return result; 548 } 549![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 550 LPDISPATCH IMiSelectRects::GetItem(long Index) 551![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 552 LPDISPATCH result; 553 static BYTE parms[] = 554 VTS_I4; 555 InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms, 556 Index); 557 return result; 558 } 559![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 560![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 561 ///////////////////////////////////////////////////////////////////////////// 562 // IMiSelectableItem properties 563![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 564 ///////////////////////////////////////////////////////////////////////////// 565 // IMiSelectableItem operations 566![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 567 void IMiSelectableItem::CopyToClipboard() 568![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 569 InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL); 570 } 571![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 572 CString IMiSelectableItem::GetText() 573![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 574 CString result; 575 InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, NULL); 576 return result; 577 } 578![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 579 LPDISPATCH IMiSelectableItem::GetWords() 580![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 581 LPDISPATCH result; 582 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 583 return result; 584 } 585![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 586 LPDISPATCH IMiSelectableItem::GetSelectRects() 587![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 588 LPDISPATCH result; 589 InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL); 590 return result; 591 } 592![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 593![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 594 ///////////////////////////////////////////////////////////////////////////// 595 // IMiSelectableImage properties 596![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 597 ///////////////////////////////////////////////////////////////////////////// 598 // IMiSelectableImage operations 599![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 600 void IMiSelectableImage::CopyToClipboard(long CopyAnnotation, long AlwaysKeepAnnotationColor) 601![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 602 static BYTE parms[] = 603 VTS_I4 VTS_I4; 604 InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 605 CopyAnnotation, AlwaysKeepAnnotationColor); 606 } 607![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 608 LPDISPATCH IMiSelectableImage::ExportToPicture(long CopyAnnotation, long AlwaysKeepAnnotationColor) 609![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 610 LPDISPATCH result; 611 static BYTE parms[] = 612 VTS_I4 VTS_I4; 613 InvokeHelper(0x2, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms, 614 CopyAnnotation, AlwaysKeepAnnotationColor); 615 return result; 616 } 617![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 618 void IMiSelectableImage::GetBoundingRect(long* plPageNum, long* Left, long* Top, long* Right, long* Bottom) 619![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 620 static BYTE parms[] = 621 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4; 622 InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 623 plPageNum, Left, Top, Right, Bottom); 624 } 625![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 626![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 627 ///////////////////////////////////////////////////////////////////////////// 628 // IMiDocView properties 629![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 630 ///////////////////////////////////////////////////////////////////////////// 631 // IMiDocView operations 632![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 633 LPUNKNOWN IMiDocView::GetDocument() 634![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 635 LPUNKNOWN result; 636 InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_UNKNOWN, (void*)&result, NULL); 637 return result; 638 } 639![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 640 void IMiDocView::SetDocument(LPUNKNOWN newValue) 641![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 642 static BYTE parms[] = 643 VTS_UNKNOWN; 644 InvokeHelper(0x1, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 645 newValue); 646 } 647![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 648 CString IMiDocView::GetFileName() 649![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 650 CString result; 651 InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, NULL); 652 return result; 653 } 654![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 655 void IMiDocView::SetFileName(LPCTSTR lpszNewValue) 656![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 657 static BYTE parms[] = 658 VTS_BSTR; 659 InvokeHelper(0x2, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 660 lpszNewValue); 661 } 662![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 663 long IMiDocView::GetNumPages() 664![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 665 long result; 666 InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 667 return result; 668 } 669![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 670 void IMiDocView::ClientToDocument(long* plX, long* plY) 671![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 672 static BYTE parms[] = 673 VTS_PI4 VTS_PI4; 674 InvokeHelper(0x30, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 675 plX, plY); 676 } 677![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 678 void IMiDocView::DocumentToClient(long* plX, long* plY) 679![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 680 static BYTE parms[] = 681 VTS_PI4 VTS_PI4; 682 InvokeHelper(0x31, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 683 plX, plY); 684 } 685![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 686 void IMiDocView::ClientToImage(long lSX, long lSY, long* pnPage, long* plX, long* plY) 687![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 688 static BYTE parms[] = 689 VTS_I4 VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4; 690 InvokeHelper(0x34, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 691 lSX, lSY, pnPage, plX, plY); 692 } 693![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 694 void IMiDocView::ImageToClient(long nPage, long lX, long lY, long* plSX, long* plSY) 695![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 696 static BYTE parms[] = 697 VTS_I4 VTS_I4 VTS_I4 VTS_PI4 VTS_PI4; 698 InvokeHelper(0x35, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 699 nPage, lX, lY, plSX, plSY); 700 } 701![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 702 void IMiDocView::GetVisibleRect(long* Left, long* Top, long* Right, long* Bottom) 703![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 704 static BYTE parms[] = 705 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4; 706 InvokeHelper(0x32, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 707 Left, Top, Right, Bottom); 708 } 709![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 710 void IMiDocView::MoveRectIntoView(long Left, long Top, long Right, long Bottom) 711![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 712 static BYTE parms[] = 713 VTS_I4 VTS_I4 VTS_I4 VTS_I4; 714 InvokeHelper(0x33, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 715 Left, Top, Right, Bottom); 716 } 717![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 718 long IMiDocView::GetDocViewMode() 719![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 720 long result; 721 InvokeHelper(0x17, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 722 return result; 723 } 724![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 725 void IMiDocView::SetDocViewMode(long nNewValue) 726![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 727 static BYTE parms[] = 728 VTS_I4; 729 InvokeHelper(0x17, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 730 nNewValue); 731 } 732![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 733 long IMiDocView::GetPageNum() 734![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 735 long result; 736 InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 737 return result; 738 } 739![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 740 void IMiDocView::SetPageNum(long nNewValue) 741![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 742 static BYTE parms[] = 743 VTS_I4; 744 InvokeHelper(0x3, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 745 nNewValue); 746 } 747![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 748 void IMiDocView::GetScale(double* pdScaleX, double* pdScaleY) 749![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 750 static BYTE parms[] = 751 VTS_PR8 VTS_PR8; 752 InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 753 pdScaleX, pdScaleY); 754 } 755![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 756 void IMiDocView::SetScale(double dScaleX, double dScaleY) 757![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 758 static BYTE parms[] = 759 VTS_R8 VTS_R8; 760 InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 761 dScaleX, dScaleY); 762 } 763![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 764 long IMiDocView::GetFitMode() 765![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 766 long result; 767 InvokeHelper(0xa, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 768 return result; 769 } 770![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 771 void IMiDocView::SetFitMode(long nNewValue) 772![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 773 static BYTE parms[] = 774 VTS_I4; 775 InvokeHelper(0xa, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 776 nNewValue); 777 } 778![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 779 long IMiDocView::GetActionState() 780![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 781 long result; 782 InvokeHelper(0xb, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL); 783 return result; 784 } 785![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 786 void IMiDocView::SetActionState(long nNewValue) 787![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 788 static BYTE parms[] = 789 VTS_I4; 790 InvokeHelper(0xb, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 791 nNewValue); 792 } 793![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 794 LPDISPATCH IMiDocView::GetTextSelection() 795![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 796 LPDISPATCH result; 797 InvokeHelper(0xc, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 798 return result; 799 } 800![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 801 void IMiDocView::SetTextSelection(LPDISPATCH newValue) 802![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 803 static BYTE parms[] = 804 VTS_DISPATCH; 805 InvokeHelper(0xc, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 806 newValue); 807 } 808![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 809 LPDISPATCH IMiDocView::GetImageSelection() 810![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 811 LPDISPATCH result; 812 InvokeHelper(0x2f, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL); 813 return result; 814 } 815![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 816 void IMiDocView::SetImageSelection(LPDISPATCH newValue) 817![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 818 static BYTE parms[] = 819 VTS_DISPATCH; 820 InvokeHelper(0x2f, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 821 newValue); 822 } 823![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 824 void IMiDocView::SelectAll(long nPage) 825![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 826 static BYTE parms[] = 827 VTS_I4; 828 InvokeHelper(0x21, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 829 nPage); 830 } 831![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 832 void IMiDocView::MoveSelectionToView(LPDISPATCH pdispSelection) 833![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 834 static BYTE parms[] = 835 VTS_DISPATCH; 836 InvokeHelper(0xd, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 837 pdispSelection); 838 } 839![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 840 void IMiDocView::SetLayerVisible(long Index, BOOL bNewValue) 841![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 842 static BYTE parms[] = 843 VTS_I4 VTS_BOOL; 844 InvokeHelper(0x1d, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms, 845 Index, bNewValue); 846 } 847![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 848 BOOL IMiDocView::GetLayerVisible(long Index) 849![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 850 BOOL result; 851 static BYTE parms[] = 852 VTS_I4; 853 InvokeHelper(0x1d, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms, 854 Index); 855 return result; 856 } 857![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 858![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 859 ///////////////////////////////////////////////////////////////////////////// 860 // _IMiDocViewEvents properties 861![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 862 ///////////////////////////////////////////////////////////////////////////// 863 // _IMiDocViewEvents operations 864![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 865![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 866 ///////////////////////////////////////////////////////////////////////////// 867 // IMiDocSearch properties 868![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 869 ///////////////////////////////////////////////////////////////////////////// 870 // IMiDocSearch operations 871![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 872 void IMiDocSearch::Initialize(LPUNKNOWN piDoc, LPCTSTR strPattern, VARIANT* PageNum, VARIANT* WordIndex, VARIANT* StartAfterIndex, VARIANT* Backward, BOOL MatchMinus, BOOL MatchFullHalfWidthForm, BOOL MatchHiraganaKatakana, BOOL IgnoreSpace) 873![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 874 static BYTE parms[] = 875 VTS_UNKNOWN VTS_BSTR VTS_PVARIANT VTS_PVARIANT VTS_PVARIANT VTS_PVARIANT VTS_BOOL VTS_BOOL VTS_BOOL VTS_BOOL; 876 InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 877 piDoc, strPattern, PageNum, WordIndex, StartAfterIndex, Backward, MatchMinus, MatchFullHalfWidthForm, MatchHiraganaKatakana, IgnoreSpace); 878 } 879![](http://www.cppblog.com/Images/OutliningIndicators/None.gif) 880 void IMiDocSearch::Search(LPUNKNOWN pSearchCallback, LPDISPATCH* ppiSearchResult) 881![](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif) ![](http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif) { 882 static BYTE parms[] = 883 VTS_UNKNOWN VTS_PDISPATCH; 884 InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, parms, 885 pSearchCallback, ppiSearchResult); 886 } 887![](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
|