L_AnnCalibrateRulerSuccessive

# include“l_bitmap.h”

L_LTANN_APIL_INTL_AnnCalibrateRulerSuccessive (hObject dCalibrateLength uCalibrateUnit)

校准一个ANNOBJECT_RULER注释对象。

参数

HANNOBJECThObject

一个ANNOBJECT_RULER对象的句柄。

L_DOUBLEdCalibrateLength

长度是分配给统治者。

L_UINTuCalibrateUnit

长度的单位。可能的值是:

价值 意义
ANNUNIT_INCHES [0]英寸。
ANNUNIT_FEET [1]。
ANNUNIT_YARDS [2]码。
ANNUNIT_MICROMETERS [3]微米。
ANNUNIT_MILLIMETERS [4]毫米。
ANNUNIT_CENTIMETERS [5]厘米。
ANNUNIT_METERS [6]米。

返回

价值 意义
成功 函数是成功的。
< 1 一个错误发生。指返回代码

评论

在结合使用这个函数L_AnnCalibrateRuler校准一个ANNOBJECT_RULER对象。这个函数是用来将任何现有ANNOBJECT_RULER对象分配给一个特定的长度。

注意,这个函数只适用于ANNOBJECT_RULER对象,但可以用来间接校正其他对象。

校准ANNOBJECT_RULER注释对象可以用两种不同的方式完成:

  1. 指定一个统治者长度和DPI比率。这是通过调用来完成L_AnnCalibrateRuler。更多DPI比率,请参阅L_AnnCalibrateRuler

  2. 指定两个尺子的长度。这是第一次通过调用来完成L_AnnCalibrateRuler(1.0指定的dDpiRatioXtoY参数),改变统治者的方向,然后调用L_AnnCalibrateRulerSuccessive。通常,当用户想要使用这个方法校准水平校准的统治者,紧随其后的是垂直校准。注意,当使用这种方法时,两个统治者校准可以任何角度的统治者(s)。唯一的要求两个校准必须统治者没有相同的取向(统治者和轴之间的角度)。

虽然这个函数只适用于ANNOBJECT_RULER对象,它可以间接地用于校准任何或所有统治者对象,包括ANNOBJECT_POLYRULER ANNOBJECT_CROSSPRODUCT, ANNOBJECT_POLYRULER。为此,调整一个ANNOBJECT_RULER对象,得到最终的决议,这项决议分配给所有对象的容器。这个例子演示了如何做到这一点。

必需的dll和库

平台

x64 Win32。

另请参阅

功能

主题

例子

这个例子校准所有注释统治者对象没有指定DPI比率。
这是通过校准尺子两次。第一个校准是水平的,
200像素的长度和宽度设置为2英寸。
第二个校准是垂直的,200像素的长度,宽度设置为1英寸的长度。
由此产生的统治者已经水平分辨率为100,和200年的垂直分辨率。

L_INT AnnCalibrateRulerSuccessiveExample (HANNOBJECT hContainer,HANNOBJECT hAutomation){L_INT nRet =成功;HANNOBJECT hRuler = 0;/ /创建统治者——设置水平,200像素的长度L_AnnCreate (ANNOBJECT_RULER &hRuler);ANNPOINT aptH [2] = {100100、300、100};L_AnnSetPoints (hRuler aptH 2);L_AnnInsert (hContainer hRuler,假);/ /校准水平统治者对于一个两英寸的长度L_AnnCalibrateRuler (hRuler 2 ANNUNIT_INCHES, 1.0);/ /什么都无所谓是最后一个参数传递/ /移动标尺,它是垂直的ANNPOINT aptV [2] = {100100100300};L_AnnSetPoints (hRuler aptV 2);/ /校准的垂直尺一寸的长度L_AnnCalibrateRulerSuccessive (hRuler 1 ANNUNIT_INCHES);/ /什么都无所谓是最后一个参数传递L_DOUBLE dDpiX = 0;L_DOUBLE dDpiY = 0;nRet = L_AnnGetBitmapDpiX (hRuler &dDpiX);如果(nRet ! =成功)返回nRet;nRet = L_AnnGetBitmapDpiY (hRuler &dDpiY);如果(nRet ! =成功)返回nRet;对话框(NULL,文本(“现在所有现有的和新建的统治者对象将匹配校准。”),文本(“通知”),MB_OK);/ /匹配校准现有对象的容器nRet = L_AnnSetBitmapDpiX (hContainer dDpiX ANNFLAG_RECURSE);如果(nRet ! =成功)返回nRet;nRet = L_AnnSetBitmapDpiY (hContainer dDpiY ANNFLAG_RECURSE);如果(nRet ! =成功)返回nRet;/ /设置自动化违约,以便所有新创建的对象有校准nRet = L_AnnSetBitmapDpiX (hAutomation dDpiX ANNFLAG_RECURSE);如果(nRet ! =成功)返回nRet;nRet = L_AnnSetBitmapDpiY (hAutomation dDpiY ANNFLAG_RECURSE);如果(nRet ! =成功)返回nRet;返回成功;}

LEADTOOLS光栅成像C API的帮助