フレームを表示

L_HighQualityRotateBitmap

フレームを表示

#include "l_bitmap.h"

L_LTIMGCOR_API L_INT EXT_FUNCTION L_HighQualityRotateBitmap(pBitmap、nAngle、uFlags、crFill)

pBITMAPHANDLE pBitmap;

/* ビットマップハンドルへのポインター*/

L_INT nAngle;

/* 回転程度*/

L_UINT uFlags;

/* 回転動作*/

L_COLORREF crFill;

/* 背景塗りつぶしカラー*/

高品質による回転1-ビット(2値画像)イメージ。

パラメーター

説明

pBitmap

回転にビットマップを参照文に引用するビットマップハンドルへのポインター。

nAngle

回転量は1/100°(+/-)。数の範囲は0から36,000になります。負の数が逆時計回り方向にimageを回転させる間、正の値は時計回り方向にimageを回転させます。

uFlags

オリジナルのimageとしての、または、回転方向によるリサイズへの同じサイズが指定した結果として生じるimageを保持するべきかどうかについて指定するフラグ。設定可能な値は、以下の通りです。

 

意味

 

ROTATE_RESIZE

[0x0001]、結果として生じるimageのサイズ設定をします。

 

HIGHQUALITYROTATE_HIGH

[0x0000]、高いquality.(これは最上品より高速です)で、imageを回転させます

 

HIGHQUALITYROTATE_BEST

[0x0010]、imageを回転させます最上品によるimage。

 

HIGHQUALITYROTATE_CROP

[0x0000]、imageの大きさを変更しません。それをクロップします。

crFill

背景のカラーを表しているCOLORREF値。Windows RGBマクロの戻り値などの、値を指定することができるか、パレットカラーを指定するために、PALETTEINDEXマクロを使用することができます。

戻り値

SUCCESS

関数は成功しました。

<1

エラーが発生しました。リターンコードを参照してください

コメント

この関数は、以下の機能を持っています:

ROTATE_RESIZEが設定されていると、画像はリサイズされます。さもなければ、imageはクロップされます。

状況表示バーを更新するか、この関数の実行の間、ユーザー割り込みを検出するために、L_SetStatusCallback関数を参照します。

必須のDLLとライブラリ

LTIMGCOR

ツールキットバージョンに基づいた正確なDLLとライブラリのリストについては、「アプリケーションとともに配布するファイル」を参照してください

プラットホーム

Win32、x64、Linux

参照

関数:

L_RotateBitmap, L_DeskewBitmap

トピック:

ラスター画像は機能します:幾何学変形の実行

 

ラスター画像は機能します:リージョンとビットマップを変換する関数

 

ラスター画像は機能します:画像の処理

 

1ビット画像のクリーンアップ

 

考慮点の大きさを変更すること

 

登録商標の検出

 

LEADTOOLSにおけるカラー値の使用

サンプル

#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName


L_LTIMGTEX_API L_INT HighQualityRotateBitmapExample(L_VOID)
{
   L_INT nRet;
   BITMAPHANDLE LeadBitmap;   /* Bitmap handle to hold the loaded image. */

   /* Load the bitmap, keeping the bits per pixel of the file */
   nRet = L_LoadBitmap (MAKE_IMAGE_PATH(TEXT("OCR1.TIF")), &LeadBitmap, sizeof(BITMAPHANDLE), 0, ORDER_BGR, NULL, NULL);
   if(nRet !=SUCCESS)
      return nRet;

   nRet = L_HighQualityRotateBitmap(&LeadBitmap, 2500,HIGHQUALITYROTATE_RESIZE | HIGHQUALITYROTATE_HIGH,RGB(255,255,255));
   if(nRet !=SUCCESS)
      return nRet;

   nRet = L_SaveBitmap(MAKE_IMAGE_PATH(TEXT("Result.BMP")), &LeadBitmap, FILE_BMP, 24, 0, NULL);
   if(nRet !=SUCCESS)
      return nRet;
   //free bitmap 
   if(LeadBitmap.Flags.Allocated)  
      L_FreeBitmap(&LeadBitmap);  
   return SUCCESS;
}