LoadPicture.ts< / div >
EngineHelper.ts< / div >
LoadPicture.js< / div >
188金宝搏的网址客服|支持|联系我们|知识产权公告
©1991 - 2021领先科技有限公司版权所有。< !--END Copyright notice-->
EngineHelper.js< / div >
LoadPicture.html< / div >< / div >< div id ="GenericContainerEntry3482" class="GenericContainerEntry">
进口{EngineHelper} from“. . /工具/ EngineHelper”;
出口类AnnRenderingEngine_LoadPicture {
构造函数() {
常量辅助=新EngineHelper ();
helper.run (这.loadPicture);
}
loadPicture =(自动化:lt.Annotations.Automation.AnnAutomation) => {
//获取当前渲染引擎
let renderingEngine: lt.Annotations.Engine.AnnRenderingEngine = automation.automationControl.renderingEngine;
//将默认的加载对象占位符设置为绿色边框和半透明背景
常量lt.Annotations.Engine.AnnStroke = lt.Annotations.Engine.AnnStroke.create(
lt.Annotations.Engine.AnnSolidColorBrush.create (“绿色”),
lt.LeadLengthD.create (1));
常量fill: lt.Annotations.Engine.AnnBrush = lt.Annotations.Engine.AnnSolidColorBrush.create("rgba(0,0,0,0.5)");
renderingEngine。loadingPictureStroke =笔画;
renderingEngine。loadingpictufill = fill;
//挂钩到LoadPicture事件
renderingEngine。add_loadPicture((sender, e) => {
//是AnnLoadPictureEventArgs
//检查是否发生错误
如果(e.error ! =零) {
//显示错误信息
让STR = e.error.message;
str + =“\ nSource:“+ e.picture.source;
str + ="\所有者对象:"+ e.annObject.friendlyName;
警报(str);
}
//图片加载后重新渲染容器
automation.invalidate (lt.LeadRectD.empty);
});
//使用来自远程服务器的图片创建新的AnnHotspotObject
常量英寸:数量= 720;
常量热点:lt.Annotations.Engine.AnnHotspotObject =新lt.Annotations.Engine.AnnHotspotObject ();
//添加位置为1,1英寸,尺寸为4,2英寸的对象
热点。rect = lt.LeadRectD。创建(1 *英寸,1 *英寸,4 *英寸,2 *英寸);
//设置图片
常量图片:lt.Annotations.Engine.AnnPicture =新lt.Annotations.Engine.AnnPicture (”“);
图片。源=“//m.ahtuanjie.com/images/page_graphics/leadlogo.png”;
//注意:CORS会导致toDataUrl失败
//或者使用本地资源
/ /图片。源="Resources/leadlogo.png";
热点。图片=图片;
//添加到容器中
常量容器:lt.Annotations.Engine.AnnContainer = automation.container;
container.children.add(热点);
//渲染容器
automation.invalidate (lt.LeadRectD.empty);
}
}
出口类EngineHelper {
//自动化对象
受保护的_automation: lt.Annotations.Automation.AnnAutomation =零;
//图像查看器
受保护的lt.Controls.ImageViewer =零;
构造函数() {
//设置LEADTOOLS license。将其替换为实际的许可文件
lt.RasterSupport.setLicenseUri (“https://demo.leadtools.com/licenses/v200/LEADTOOLSEVAL.txt”,“EVAL”,零);
}
公共运行(回调?:(自动化:lt.注释自动化。AnnAutomation,查看器:lt.Controls.ImageViewer) =>无效):无效{
//创建查看器
常量imageviewdiv = document.getElementById(“imageViewerDiv”);
常量创建选项:lt.Controls.ImageViewerCreateOptions =新lt.Controls.ImageViewerCreateOptions (imageViewerDiv);
常量查看器:lt.Controls.ImageViewer =新lt.Controls.ImageViewer (createOptions);
查看器。autoCreateCanvas =真正的;
这._viewer =查看器;
// PanZoom交互模式
常量panZoom: lt.Controls.ImageViewerPanZoomInteractiveMode =新lt.Controls.ImageViewerPanZoomInteractiveMode ();
//创建一个与LEADTOOLS ImageViewer一起工作的自动化控件对象的实例
常量imageViewerAutomationControl: lt.188金宝搏beat体育官网Demos.Annotations.ImageViewerAutomationControl =新lt.188金宝搏beat体育官网Demos.Annotations.ImageViewerAutomationControl ();
//附加图像查看器
imageViewerAutomationControl。imageViewer =查看器;
//设置图像查看器的交互模式
常量automationInteractiveMode: lt.188金宝搏beat体育官网Demos.Annotations.AutomationInteractiveMode =新lt.188金宝搏beat体育官网Demos.Annotations.AutomationInteractiveMode ();
automationInteractiveMode。automationControl = imageViewerAutomationControl;
//设置图片的URL
查看器。imageUrl =“http://demo.leadtools.com/images/png/pngimage.png”;
//使用HTML5渲染引擎创建和设置自动化管理器
常量renderingEngine: lt.Annotations.Rendering。AnnHtml5RenderingEngine =新lt.Annotations.Rendering.AnnHtml5RenderingEngine ();
常量manager: lt.Annotations.Automation.AnnAutomationManager = lt.Annotations.Automation.AnnAutomationManager.create(renderingEngine);
//创建默认的自动化对象
manager.createDefaultObjects ();
//将对象添加到objectsselect元素
常量currentobjecdselect = document.getElementById(“currentObjectIdSelect”)作为HTMLSelectElement;
//添加PanZoom选项
currentObjectIdSelect.options [currentObjectIdSelect.options。长度]=新选项(“锅/缩放”lt.Annotations.Engine.AnnObject.none.toString ());
常量automationObjCount:数量= manager.objects.count;
为(设I = 0;i < automationObjCount;我+ +){
//获取对象
常量automationobject: lt.Annotations.Automation.AnnAutomationObject = manager.objects.item(i);
//将其名称添加到select元素中
常量名称:字符串= automationObj.name;
常量id:字符串= automationObj.id.toString ();
currentObjectIdSelect.options [currentObjectIdSelect.options。长度]=新选项(名称、id);
}
//钩子到它的change事件
currentObjectIdSelect.addEventListener (“改变”, () = bb0 {
//获取对象ID
常量id:数量=方法(currentObjectIdSelect.options [currentObjectIdSelect.selectedIndex] value);
//设置为管理器中的当前对象
经理。currentobjid = id;
//如果这是“平移/缩放”选项,则返回到平移缩放,否则,设置我们的自动化控制
如果(id == lt.Annotations.Engine.AnnObject.none) {
viewer.defaultInteractiveMode = panZoom;
}
其他的{
viewer.defaultInteractiveMode = automationInteractiveMode;
}
});
//当当前对象ID改变时,我们需要更新select
经理。add_currentobjecdchanged ((sender, e) => {
常量currentObjectId:数量= manager.currentObjectId;
为(设I = 0;i < currentobjecdselect .options.length;我+ +){
常量id:数量[我]=方法(currentObjectIdSelect.options value);
如果(id === currentObjectId) {
currentObjectIdSelect。selecteindex = 1;
打破;
}
}
});
//默认为平移缩放
viewer.defaultInteractiveMode = panZoom;
//设置自动化(也会创建容器)
常量自动化:lt. annotation . automation . annautomation =新lt.Annotations.Automation。AnnAutomation(经理,imageViewerAutomationControl);
这._automation =自动化;
//添加处理程序,当图像大小改变时更新容器大小
viewer.itemChanged。Add ((sender, e) => {
常量容器:lt.Annotations.Engine.AnnContainer = automation.container;
容器。size = container.mapper.sizeToContainerCoordinates(viewer.imageSize);
//为新图像创建新的画布数据提供者
常量canvasDataProvider: lt.188金宝搏beat体育官网Demos.Annotations.CanvasDataProvider =新lt.188金宝搏beat体育官网Demos.Annotations.CanvasDataProvider (viewer.activeItem.canvas);
imageViewerAutomationControl。automationDataProvider = canvasDataProvider;
});
//将此自动化设置为活动自动化
这._automation。活跃的=真正的;
常量exampleButton = document.getElementById(“exampleButton”);
exampleButton。Onclick = () => {
如果(回调)
回调(这._automation,这._viewer);
}
}
}
进口{EngineHelper} from“. . /工具/ EngineHelper”;
出口类AnnRenderingEngine_LoadPicture {
构造函数(){
常量辅助=新EngineHelper ();
helper.run (这.loadPicture);
}
loadPicture =(自动化)=> {
//获取当前渲染引擎
let renderingEngine = automation.automationControl.renderingEngine;
//将默认的加载对象占位符设置为绿色边框和半透明背景
常量stroke = lt.Annotations.Engine.AnnStroke.create(
lt.Annotations.Engine.AnnSolidColorBrush.create (“绿色”),
lt.LeadLengthD.create (1));
常量fill = lt.Annotations.Engine.AnnSolidColorBrush.create("rgba(0,0,0,0.5)");
renderingEngine。loadingPictureStroke =笔画;
renderingEngine。loadingpictufill = fill;
//挂钩到LoadPicture事件
renderingEngine。add_loadPicture((sender, e) => {
//是AnnLoadPictureEventArgs
//检查是否发生错误
如果(e.error ! =零) {
//显示错误信息
让STR = e.error.message;
str + =“\ nSource:“+ e.picture.source;
str + ="\所有者对象:"+ e.annObject.friendlyName;
警报(str);
}
//图片加载后重新渲染容器
automation.invalidate (lt.LeadRectD.empty);
});
//使用来自远程服务器的图片创建新的AnnHotspotObject
常量英寸= 720;
常量热点=新lt.Annotations.Engine.AnnHotspotObject ();
//添加位置为1,1英寸,尺寸为4,2英寸的对象
热点。rect = lt.LeadRectD。创建(1 *英寸,1 *英寸,4 *英寸,2 *英寸);
//设置图片
常量照片=新lt.Annotations.Engine.AnnPicture (”“);
图片。源=“//m.ahtuanjie.com/images/page_graphics/leadlogo.png”;
//注意:CORS会导致toDataUrl失败
//或者使用本地资源
/ /图片。源="Resources/leadlogo.png";
热点。图片=图片;
//添加到容器中
常量Container = automation.container;
container.children.add(热点);
//渲染容器
automation.invalidate (lt.LeadRectD.empty);
}
}
出口类EngineHelper {
//自动化对象
_automation =零;
//图像查看器
_view =零;
构造函数(){
//设置LEADTOOLS license。将其替换为实际的许可文件
lt.RasterSupport.setLicenseUri (“https://demo.leadtools.com/licenses/v200/LEADTOOLSEVAL.txt”,“EVAL”,零);
}
运行(回调){
//创建查看器
常量imageviewdiv = document.getElementById(“imageViewerDiv”);
常量createOptions =新lt.Controls.ImageViewerCreateOptions (imageViewerDiv);
常量观众=新lt.Controls.ImageViewer (createOptions);
查看器。autoCreateCanvas =真正的;
这._viewer =查看器;
// PanZoom交互模式
常量panZoom =新lt.Controls.ImageViewerPanZoomInteractiveMode ();
//创建一个与LEADTOOLS ImageViewer一起工作的自动化控件对象的实例
常量imageViewerAutomationControl =新lt.188金宝搏beat体育官网Demos.Annotations.ImageViewerAutomationControl ();
//附加图像查看器
imageViewerAutomationControl。imageViewer =查看器;
//设置图像查看器的交互模式
常量automationInteractiveMode =新lt.188金宝搏beat体育官网Demos.Annotations.AutomationInteractiveMode ();
automationInteractiveMode。automationControl = imageViewerAutomationControl;
//设置图片的URL
查看器。imageUrl =“http://demo.leadtools.com/images/png/pngimage.png”;
//使用HTML5渲染引擎创建和设置自动化管理器
常量renderingEngine =新lt.Annotations.Rendering.AnnHtml5RenderingEngine ();
常量manager = lt.Annotations.Automation.AnnAutomationManager.create(renderingEngine);
//创建默认的自动化对象
manager.createDefaultObjects ();
//将对象添加到objectsselect元素
常量currentobjecdselect = document.getElementById(“currentObjectIdSelect”);
//添加PanZoom选项
currentObjectIdSelect.options [currentObjectIdSelect.options。长度]=新选项(“锅/缩放”lt.Annotations.Engine.AnnObject.none.toString ());
常量automationObjCount = manager.objects.count;
为(设I = 0;i < automationObjCount;我+ +){
//获取对象
常量automationObj = manager.objects.item(i);
//将其名称添加到select元素中
常量name = automationObj.name;
常量id = automationObj.id.toString();
currentObjectIdSelect.options [currentObjectIdSelect.options。长度]=新选项(名称、id);
}
//钩子到它的change事件
currentObjectIdSelect.addEventListener (“改变”, () = bb0 {
//获取对象ID
常量id = parseInt(currentObjectIdSelect.options[currentObjectIdSelect.selectedIndex].value);
//设置为管理器中的当前对象
经理。currentobjid = id;
//如果这是“平移/缩放”选项,则返回到平移缩放,否则,设置我们的自动化控制
如果(id == lt.Annotations.Engine.AnnObject.none) {
viewer.defaultInteractiveMode = panZoom;
}
其他的{
viewer.defaultInteractiveMode = automationInteractiveMode;
}
});
//当当前对象ID改变时,我们需要更新select
经理。add_currentobjecdchanged ((sender, e) => {
常量currentObjectId = manager.currentObjectId;
为(设I = 0;i < currentobjecdselect .options.length;我+ +){
常量id = parseInt(currentobjecdselect .options[i].value);
如果(id === currentObjectId) {
currentObjectIdSelect。selecteindex = 1;
打破;
}
}
});
//默认为平移缩放
viewer.defaultInteractiveMode = panZoom;
//设置自动化(也会创建容器)
常量自动化=新lt.Annotations.Automation。AnnAutomation(经理,imageViewerAutomationControl);
这._automation =自动化;
//添加处理程序,当图像大小改变时更新容器大小
viewer.itemChanged。Add ((sender, e) => {
常量Container = automation.container;
容器。size = container.mapper.sizeToContainerCoordinates(viewer.imageSize);
//为新图像创建新的画布数据提供者
常量canvasDataProvider =新lt.188金宝搏beat体育官网Demos.Annotations.CanvasDataProvider (viewer.activeItem.canvas);
imageViewerAutomationControl。automationDataProvider = canvasDataProvider;
});
//将此自动化设置为活动自动化
这._automation。活跃的=真正的;
常量exampleButton = document.getElementById(“exampleButton”);
exampleButton。Onclick = () => {
如果(回调)
回调(这._automation,这._viewer);
}
}
}
< !doctype html >
< html lang =“en”>
AnnRenderingEngine示例| LoadPicture < >头
< script src =“https://code.jquery.com/jquery-2.2.4.min.js”
诚信=“sha256-BbhdlvQf / xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44 = "crossorigin =“匿名”> < /脚本>
< script src =“. . / LT / Leadtools.js”> < /脚本>
< script src =“. . / LT / Leadtools.Controls.js”> < /脚本>
< script src =“. . / LT / Leadtools.Annotations.Engine.js”> < /脚本>
< script src =“. . / LT / Leadtools.Annotations.Designers.js”> < /脚本>
< script src =“. . / LT / Leadtools.Annotations.Rendering.Javascript.js”> < /脚本>
< script src =“. . / LT / Leadtools.Annotations.Automation.js”> < /脚本>
< script src =“. . / LT / Leadtools.Annotations.BatesStamp.js”> < /脚本>
< script src =“. . / LT / Leadt188金宝搏beat体育官网ools.Demos.js”> < /脚本>
< script src =“. . / LT / Leadt188金宝搏beat体育官网ools.Demos.Annotations.js”> < /脚本>
<时尚>
# imageViewerDiv {
边框:1px实线#000000;
宽度:800 px;
身高:800 px;
background - color: # 7 f7f7f;
}
> < /风格
< !——所有演示文件被捆绑并附加到窗口——>
< script src =“. . / . . / bundle.js”类型=“text / javascript”> < /脚本>
> < /头
身体< >
平移/缩放或注释模式。在注释模式下,绘制新对象或编辑它们。
< div >
<选择id =“currentObjectIdSelect”> < /选择>
< / div >
< div >
< input type =“按钮”id =“exampleButton”值=“例子”/>
<标签id =“exampleLabel”/>
< / div >
< div id =“imageViewerDiv”/>
身体< / >
< >脚本
窗口。Onload = () =>新window.examples.AnnRenderingEngine.LoadPicture ();
> < /脚本
< / html >
事件数据< / div >
参数 | 类型 | 描述 |
---|---|---|
发送方 | var | 事件的来源。 |
e | AnnLoadPictureEventArgs | 事件数据。 |
需求< / div >目标平台
帮助版本21.0.2021.6.30< / div >< !--BEGIN Copyright notice-->
188金宝搏的网址客服|支持|联系我们|知识产权公告
©1991 - 2021领先科技有限公司版权所有。< !--END Copyright notice-->
©1991 - 2021领先科技有限公司版权所有。< !--END Copyright notice-->
Leadtools.Annotations.Engine组装< / div >
188金宝搏的网址客服|支持|介绍|< / div >< div id ="HeaderHelpVersion">
帮助版本21.0.2021.6.30< / div >< div id ="MobileTOC">
免费下载评估< / div >< div id ="searchBoxForm">
引用▼< / div >
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网页查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
LEADTOOLS聊天< / div >< div >
加载……< / div >< / div >< div id ="email-sent-container" class="hidden-group">
您的邮件已经发送到支持!应该有人保持联系!如果你有急事,请回来再谈。
聊天时间:
周一至周五,上午8:30至下午6点
感谢您的反馈!
请重新填写表格以开始新的聊天。
所有代理当前都处于离线状态。
聊天时间:
星期一至星期五
上午8:30 -下午6点
要联系我们,请填写此表格,我们将通过电子邮件与您联系。
姓名是必需的。
需要填写姓氏。
需要有效的电子邮件(e。g example@example.com)。
问题不能是空的。
支持销售许可< / div >
上传…
感谢您的反馈!祝你今天愉快!
谈话结束了。请填写下面的调查!
我的问题解决了。
必填字段。
代理商的技术知识< / div >
必填字段。
座席沟通技巧< / div ><标签id ="communication-rating" class="rating-group">
必填字段。
©1991 - 2021领先科技有限公司版权所有。< !--END Copyright notice-->