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