本教程展示了如何创建一个与打印稿NodeJS Web应用程序,使用HTML5的LEADTOOLS SDK文档加载JavaScript文件查看器。
概述 | |
---|---|
总结 | 本教程介绍了如何使用LEADTOOLS SDK文档查看器技术与打印稿NodeJS Web应用程序。 |
完成时间 | 15分钟 |
Visual Studio项目 | 下载教程项目(30 KB) |
平台 | NodeJS NPM项目 |
IDE | Visual Studio代码——客户端 |
运行许可证 | 下载LEADTOOLS |
试试用另一种语言 |
|
熟悉基本的步骤创建一个项目的审查添加引用和设置许可证——NodeJS和打印稿教程在工作之前在文档中显示文件查看器——NodeJS和打印稿教程。
本教程使用一个文本编辑器,如Visual Studio代码来创建和修改必要的脚本文件。
执行命令在本教程中使用PowerShell / CommandPrompt(如果使用Windows)或一个终端窗口(如果使用基于unix的系统)。
从项目中创建的副本添加引用和设置许可证——NodeJS和打印稿教程。如果项目是不可用,按照这个教程中的步骤创建它。
确保所需的依赖关系是通过运行安装npm安装
命令。
重命名lt.MyModule
在。\ ts \ App \ SetLicense.ts
和\ ts \ Index.ts
脚本lt.DocumentViewer
。
的引用需要取决于项目的目的。可以通过添加引用. js
文件位于< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ JS
。
对于这个项目,还需要以下引用:
Leadtools.Annotations.Automation.js
Leadtools.Annotations.Designers.js
Leadtools.Annotations.Engine.js
Leadtools.Annotations.Rendering.JavaScript.js
Leadtools.js
Leadtools.Controls.js
Leadtools.Document.js
Leadtools.Document.Viewer.js
将这些文件复制到项目的网站。\ \常见
文件夹中。
对于一个完整的列表的JS应用程序所需文件,请参考文件包含在您的应用程序
此外,以下类型定义文件需要使用打字稿:
Leadtools.Annotations.Automation.d.ts
Leadtools.Annotations.Designers.d.ts
Leadtools.Annotations.Engine.d.ts
Leadtools.Controls.d.ts
Leadtools.d.ts
Leadtools.Document.d.ts
Leadtools.Document.Viewer.d.ts
这些可以在相同的文件夹中找到. js
文件在< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ JS
将这些文件复制到项目的\ leadtools_modules \ @types
文件夹中。
的Leadtools.Document.d.ts
类型定义脚本还需要jQuery类型定义,这些都是包含在工具包< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ JS \第三方\ jquery
。复制jquery.d.ts
项目的文件\ leadtools_modules \ @types
并将其放在一个文件夹第三方\ jquery
子文件夹。
复制类型定义脚本文件之后,编辑\ ts \ tsconfig.json
文件,并将文件添加到类型
值:
{
“compilerOptions”跨度>:{
“目标”跨度>:“es5”跨度>,
“模块”跨度>:“没有”跨度>,
“outDir”跨度>:“. . /网站”跨度>,
“类型”跨度>:【
“. . / leadtools_modules / @types / Leadtools.Annotations.Automation”跨度>,
“. . / leadtools_modules / @types / Leadtools.Annotations.Designers”跨度>,
“. . / leadtools_modules / @types / Leadtools.Annotations.Engine”跨度>,
“. . / leadtools_modules / @types / Leadtools.Controls”跨度>,
“. . / leadtools_modules / @types / Leadtools”跨度>,
“. . / leadtools_modules / @types / Leadtools.Document”跨度>,
“. . / leadtools_modules / @types / Leadtools.Document.Viewer”跨度>,
“. . / leadtools_modules / @types /第三方/ jquery / jquery”跨度>
]
}
}
许可解锁项目需要的特性。它必须设置工具箱函数被调用之前。细节包括教程不同的平台,请参考设置一个运行时许可。
有两种类型的运行时许可证:
复制粘贴的LEADTOOLS.lic.txt
许可证文件到\ \ LEADTOOLS网站
文件夹中。注意,许可证的结局. txt
JavaScript。许可文件,不会结束. txt
服务器和桌面应用程序。许可文件中可以找到以下目录:< INSTALL_DIR > \ LEADTOOLS22 \ \共同支持\许可证
取代的键值LEADTOOLS.lic.key.txt
文件。\ ts \ App \ SetLicense.ts
脚本。
与项目创建、依赖关系添加和许可,可以开始编码。
打开网站。\ \ index . html
文件在编辑器中。使用以下行导入JS文件和高度的依赖性index . html
页面。
<跨度>——外部. js文件>跨度>
<跨度>脚本src = " https://code.jquery.com/jquery-2.2.4.min.js "诚信= crossorigin“sha256-BbhdlvQf / xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44 =”=“匿名”>跨度><跨度>/脚本>跨度>
<跨度>——! Leadtools . js文件>跨度>
<跨度>脚本src = "常见/ Leadtools.js”>跨度><跨度>/脚本>跨度>
<跨度>脚本src = "常见/ Leadtools.Controls.js”>跨度><跨度>/脚本>跨度>
<跨度>脚本src = "常见/ Leadtools.Annotations.Engine.js”>跨度><跨度>/脚本>跨度>
<跨度>脚本src = "常见/ Leadtools.Annotations.Designers.js”>跨度><跨度>/脚本>跨度>
<跨度>脚本src = "常见/ Leadtools.Annotations.Rendering.JavaScript.js”>跨度><跨度>/脚本>跨度>
<跨度>脚本src = "常见/ Leadtools.Annotations.Automation.js”>跨度><跨度>/脚本>跨度>
<跨度>脚本src = "常见/ Leadtools.Document.js”>跨度><跨度>/脚本>跨度>
<跨度>脚本src = "常见/ Leadtools.Document.Viewer.js”>跨度><跨度>/脚本>跨度>
<跨度>!——. js主题是外商投资企业>跨度>
<跨度>脚本src = " App / SetLicense.js ">跨度><跨度>/脚本>跨度>
<跨度>脚本src = " App / DocumentViewerApp.js ">跨度><跨度>/脚本>跨度>
<跨度>脚本src = " Index.js ">跨度><跨度>/脚本>跨度>
添加HTML元素,将被用作容器以下组件的文档查看器:
thumbnailsControl
,缩略图文档查看器的一部分bookmarksControl
,书签文档查看器的一部分imageViewerContainer
,文档查看器视图的一部分此外,添加一个navigationbar
元素将包含按钮在缩略图和书签容器之间切换。
<跨度>div id = " navigationbar " class = " navigationbar”>跨度>
<跨度>按钮id = " showThumbnails " class = " navigationbarBtn”>跨度>
<跨度>跨类= "图标thumbnailsIcon ">跨度><跨度>/跨度>跨度>
<跨度>/按钮>跨度>
<跨度>按钮id = " showBookmarks " class = " navigationbarBtn”>跨度>
<跨度>跨类= "图标bookmarksIcon ">跨度><跨度>/跨度>跨度>
<跨度>/按钮>跨度>
<跨度>/ div>跨度>
<跨度>div id = " thumbnailsControl " class = " affectedContainers”>跨度>
<跨度>div类= " controlHeader ">跨度>
<跨度>标签>跨度>页面<跨度>/标签>跨度>
<跨度>/ div>跨度>
<跨度>div id =“缩略图”>跨度>
<跨度>/ div>跨度>
<跨度>/ div>跨度>
<跨度>div id = " bookmarksControl " class = " affectedContainers”>跨度>
<跨度>div类= " controlHeader ">跨度>
<跨度>标签>跨度>书签<跨度>/标签>跨度>
<跨度>/ div>跨度>
<跨度>div id =“书签”>跨度>
<跨度>/ div>跨度>
<跨度>/ div>跨度>
<跨度>div id = " imageViewerContainer " class = " affectedContainers”>跨度>
<跨度>!——观众将动态创建内部imageViewerDiv—>跨度>
<跨度>div id = " imageViewerDiv ">跨度>
<跨度>/ div>跨度>
<跨度>/ div>跨度>
的affectedContainers
类是用来选择元素,将调整显示根据浏览器窗口的大小。的navigationbar
类中使用类似的方式调整的显示imageViewerContainer
当书签或缩略图切换控制。
创建一个CSS
文件夹中网站
目录,并创建一个新的CSS样式表文件documentViewer.css。
使用这个文件来指定显示样式的HTML元素的文档查看器使用下面的代码:
/ *文件查看器风格
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * /
身体{
高度:100%;
背景:白色;
溢出:隐藏;
颜色:# 4 d5f82;
高度:100%;
保证金:0;
-webkit-text-size-adjust:没有;
字体类型:helvetica;
字体大小:10 pt;
margin-bottom: 60 px;
显示:块;
}
.navigationbar {
溢出:隐藏;
位置:固定;
background - color: # DFE1E5;
显示:块;
宽度:40像素;
左:0 px;
底部:0 px;
上图:0 px;
边境:1 px固体;
border-right-color: # D4D6DB;
-webkit-box-shadow: 2 px 0 px 7 px rgba (0, 0, 0, 0.3);
不必:2 px 0 px 7 px rgba (0, 0, 0, 0.3);
z - index: 1;
}
.navigationbar .icon {
宽度:34 px;
}
.navigationbarBtn {
填充:7 px 0 px 8 px 0 px;
宽度:100%;
背景颜色:透明;
边界:1 px固体透明;
边境:0;
大纲:没有;
宽度:39 px;
高度:45 px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.activeNavigationbarBtn {
background - color: # D4D6DB;
边框颜色:darkgray;
}
.icon {
位置:相对;
显示:inline-block;
平铺方式:不再重演;
背景位置:中心;
宽度:35 px;
高度:25 px;
上图:3 px;
}
.thumbnailsIcon {
背景图片:url(. . /资源/图像/图标/ Thumbnails.png”);
}
.bookmarksIcon {
背景图片:url(. . /资源/图像/图标/ Bookmarks.png”);
}
# imageViewerContainer {
溢出:隐藏;
位置:固定;
显示:块;
左:0 px;
右:0 px;
底部:0 px;
上图:0 px;
}
# imageViewerDiv {
位置:相对;
宽度:100%;
高度:100%;
background - color: # C2C2C2;
}
# thumbnailsControl, # bookmarksControl {
宽度:195 px;
background - color: # D4D6DB;
z - index: 1;
位置:固定;
左:39 px;
底部:0 px;
上图:0 px;
-webkit-box-shadow: 5 px 4 px 5 px 5 px # 333;
不必:5 px 4 px 5 px 5 px # 333;
边界:1 px固体darkgray;
显示:没有;
}
# thumbnailsControl>跨度>。controlHeader # bookmarksControl>跨度>.controlHeader {
填充:继承;
text-align:继承;
padding-top: 13 px;
padding-left: 5 px;
}
#缩略图,#{书签
溢出:隐藏;
上图:43 px;
左:5 px;
右:5 px;
底部:5 px;
位置:绝对!重要;
边界:1 px固体darkgray;
}
#{缩略图
background - color: # fafdff;
}
#{书签
背景颜色:白色;
溢出:汽车!重要;
字体:正常正常12 px / 20 px Helvetica, Arial,无衬线;
}
链接中使用这个CSS文件页面/ index.chtml
文件:
<跨度>——是样式表>跨度>
<跨度>链接rel = "样式表" href = " ~ / CSS /主题是。css " />跨度>
的navigationbar
元素为每个按钮使用图标图像包含的切换显示缩略图或书签容器。
创建一个资源
文件夹下的网站
然后创建目录的项目图片\图标
子文件夹。
添加Bookmarks.png
和Thumbnails.png
这个文件夹图标的图像。这些图像可以发现< INSTALL_DIR > \ LEADTOOLS22 \ \常见例子\ JS \ \ \图标图像资源
创建一个DocumentViewerApp.ts
文件\ ts \ App
文件夹中。
声明和导出一个新的DocumentViewerApp
类将包含属性和函数用于文档查看器web应用程序的配置和操作。
使用下面的代码来定义公共和私人的属性DocumentViewerApp
以及配置构造函数。
模块跨度>lt.DocumentViewer {
出口跨度>类跨度>DocumentViewerApp {
/ /文档查看器跨度>
私人跨度>_documentViewer: lt.Document.Viewer。是=零跨度>;
/ / HTML元素跨度>
公共跨度>navigationbarContainer: HTMLElement = . getelementbyid (“navigationbar”跨度>);
公共跨度>navigationbar = {
showThumbnailsBtn: < HTMLButtonElement > . getelementbyid (“showThumbnails”跨度>),
showBookmarksBtn: < HTMLButtonElement > . getelementbyid (“showBookmarks”跨度>)
};
公共跨度>imageViewerContainerDiv: HTMLElement = . getelementbyid (“imageViewerContainer”跨度>);
公共跨度>thumbnailsContainer: HTMLElement = . getelementbyid (“thumbnailsControl”跨度>);
公共跨度>bookmarksContainer: HTMLElement = . getelementbyid (“bookmarksControl”跨度>);
公共跨度>affectedContainers:NodeListOf HTMLElement > < = document.querySelectorAll (“.affectedContainers”跨度>);
构造函数跨度>(){
窗口。onunload = ((e:事件)= >这跨度>。onUnload (e));
窗口。onresize = ((e:事件)= >这跨度>。onResize (e));
}
私人跨度>onUnload (e:事件):无效跨度>{
如果跨度>(这跨度>。_documentViewer ! =零跨度>){
这跨度>._documentViewer。dispose ();
}
}
使用下面的代码来动态更新显示的文档查看器元素根据浏览器窗口大小的页眉和页脚在项目的元素。
这段代码还调整视图的显示容器如果缩略图或书签容器是可见的。
私人跨度>onResize (e:事件){
这跨度>。updateContainers ();
}
公共跨度>updateContainers ():无效跨度>{
/ /检查可见性跨度>
让visibleThumbnails:布尔跨度>=窗口。getComputedStyle (这跨度>。thumbnailsContainer)。显示! = =“没有”跨度>;
让visibleBookmarks:布尔跨度>=窗口。getComputedStyle (这跨度>。bookmarksContainer)。显示! = =“没有”跨度>;
让navigationbarContainerWidth:数量跨度>=这跨度>.navigationbarContainer.offsetWidth;
/ /缩略图、书签和附件容器有相同的宽度跨度>
/ /使用缩略图容器一样常见跨度>
让containerWidth:数量跨度>=方法(window.getComputedStyle (这跨度>。thumbnailsContainer) .width);
/ /现在更新浏览器容器跨度>
让imageViewerContainerDivLeft:数量跨度>= navigationbarContainerWidth;
如果跨度>(visibleThumbnails | | visibleBookmarks)
imageViewerContainerDivLeft + = containerWidth;
这跨度>。imageViewerContainerDiv.style。左= imageViewerContainerDivLeft.toString () +“像素”跨度>;
/ /查看器容器的大小可能会改变;叫onSizeChanged跨度>
这跨度>._documentViewer.view。imageViewer.onSizeChanged ();
如果跨度>(这跨度>。_documentViewer。缩略图! =零跨度>){
这跨度>._documentViewer.thumbnails。imageViewer.onSizeChanged ();
这跨度>._documentViewer.thumbnails。imageViewer.invalidate (lt.LeadRectD.empty);
}
}
使用下面的代码DocumentViewer.run ()
将初始化查看器,验证服务连接,加载一个PDF文档。
的PDF文档加载是一个示例Leadtools.pdf
文件,可在https://demo.leadtools.com/images/pdf/leadtools.pdf
公共跨度>run ():无效跨度>{
/ /初始化导航栏按钮跨度>
这跨度>.navigationbar.showThumbnailsBtn。addEventListener (“点击”跨度>()=>这跨度>。showContainer (这跨度>.thumbnailsContainer,真正的跨度>));
这跨度>.navigationbar.showBookmarksBtn。addEventListener (“点击”跨度>()=>这跨度>。showContainer (这跨度>.bookmarksContainer,真正的跨度>));
/ /初始化文档查看器跨度>
这跨度>。initDocumentViewer ();
/ /初始化UI跨度>
这跨度>。updateAppUIState ();
/ /验证服务连接跨度>
lt.Document.DocumentFactory。serviceHost =“http://localhost: 40000”跨度>;
lt.Document.DocumentFactory。servicePath =”“跨度>;
lt.Document.DocumentFactory。serviceApiPath =“api”跨度>;
lt.Document.DocumentFactory.verifyService ()
.done (() = > {
lt.LTHelper.log (“服务连接验证!”跨度>);
})
fail (() = > {
lt.LTHelper.log (“服务连接不可用。”跨度>);
});
/ /加载文档跨度>
常量跨度>url =“https://demo.leadtools.com/images/pdf/leadtools.pdf”跨度>;
lt.Document.DocumentFactory.loadFromUri (url,零跨度>)
.done ((doc) = > {
这跨度>。setDocument (doc);
这跨度>。updateAppUIState ();
});
}
使用下面的代码导航栏按钮用于控制缩略图的可见性和书签的容器中。
/ /切换缩略图/书签容器的可见性跨度>
公共跨度>showContainer(容器,flipState:布尔跨度>):无效跨度>{
让visibleThumbnails:布尔跨度>=窗口。getComputedStyle (这跨度>。thumbnailsContainer)。显示! = =“没有”跨度>;
让visibleBookmarks:布尔跨度>=窗口。getComputedStyle (这跨度>。bookmarksContainer)。显示! = =“没有”跨度>;
/ /显示缩略图跨度>
如果跨度>(容器= =这跨度>.thumbnailsContainer) {
如果跨度>(! visibleThumbnails) {
如果跨度>(visibleBookmarks) {
这跨度>。bookmarksContainer.style。显示=“没有”跨度>;
这跨度>.navigationbar.showBookmarksBtn。类List.remove (“activeNavigationbarBtn”跨度>);
}
这跨度>.navigationbar.showThumbnailsBtn。类List.add (“activeNavigationbarBtn”跨度>);
这跨度>。thumbnailsContainer.style。显示=“块”跨度>;
}其他的跨度>{
如果跨度>(flipState) {
这跨度>.navigationbar.showThumbnailsBtn。类List.remove (“activeNavigationbarBtn”跨度>);
这跨度>。thumbnailsContainer.style。显示=“没有”跨度>;
}
}
这跨度>。updateContainers ();
返回跨度>;
}
/ /显示书签跨度>
如果跨度>(容器= =这跨度>.bookmarksContainer) {
如果跨度>(! visibleBookmarks) {
/ /隐藏别人跨度>
如果跨度>(visibleThumbnails) {
这跨度>。thumbnailsContainer.style。显示=“没有”跨度>;
这跨度>.navigationbar.showThumbnailsBtn。类List.remove (“activeNavigationbarBtn”跨度>);
}
这跨度>.navigationbar.showBookmarksBtn。类List.add (“activeNavigationbarBtn”跨度>);
这跨度>。bookmarksContainer.style。显示=“块”跨度>;
}其他的跨度>{
如果跨度>(flipState) {
这跨度>.navigationbar.showBookmarksBtn。类List.remove (“activeNavigationbarBtn”跨度>);
这跨度>。bookmarksContainer.style。显示=“没有”跨度>;
}
}
这跨度>。updateContainers ();
返回跨度>;
}
}
使用下面的代码来配置文档查看器。的createOptions
对象配置的创建查看器和钩子的HTML元素。
后创建的文档查看器DocumentViewerFactory
对象,也可以配置文档查看器设置。在本教程中,应用以下设置:
/ /创建文档查看器跨度>
私人跨度>initDocumentViewer ():无效跨度>{
/ /文档查看器创建选项跨度>
让createOptions: lt.Document.Viewer。DocumentViewerCreateOptions =新跨度>lt.Document.Viewer.DocumentViewerCreateOptions ();
createOptions.viewCreateOptions。useElements =假跨度>;
createOptions.thumbnailsCreateOptions。useElements =假跨度>;
/ /设置显示主视图的UI部分跨度>
createOptions。viewContainer = . getelementbyid (“imageViewerDiv”跨度>);
/ /设置显示缩略图的UI部分跨度>
createOptions。thumbnailsContainer = . getelementbyid (“缩略图”跨度>);
/ /设置UI的一部分显示书签(设置书签容器将向他们简单的列表)跨度>
createOptions。bookmarksContainer = . getelementbyid (“书签”跨度>);
createOptions。useAnnotations =假跨度>;
/ /创建查看器跨度>
试一试跨度>{
这跨度>。_documentViewer = lt.Document.Viewer.DocumentViewerFactory.createDocumentViewer (createOptions);
/ /文档查看器设置跨度>
/ / SVG偏好显示跨度>
这跨度>._documentViewer。view。preferredItemType = lt.Document.Viewer.DocumentViewerItemType.svg
/ /延迟加载跨度>
这跨度>._documentViewer。view。lazyLoad =真正的跨度>;
如果跨度>(这跨度>._documentViewer.thumbnails)
这跨度>._documentViewer。thumbnails。lazyLoad =真正的跨度>;
/ /日志呈现错误跨度>
让imageview: lt.Controls。imageview =这跨度>._documentViewer.view.imageViewer;
让logRenderErrors: lt.Controls。ImageViewerRenderEventHandler =函数跨度>(发送者:任何跨度>艾凡:lt.Controls.ImageViewerRenderEventArgs) {
让项目:数量跨度>=e。项! =零跨度>吗?e.item.imageViewer.items.indexOf (e.item): 1;
让信息:字符串跨度>=在渲染项目“错误”跨度>+项目+“部分”跨度>+ (e.part) +”:“跨度>+ (e.error.message);
lt.LTHelper。logError({信息:信息,错误:e。错误});
}
imageViewer.renderError.add (logRenderErrors);
如果跨度>(这跨度>。_documentViewer。缩略图& &这跨度>._documentViewer.thumbnails.imageViewer)
这跨度>._documentViewer.thumbnails。imageViewer.renderError.add (logRenderErrors);
}
抓跨度>(e) {
alert (“是创建失败”跨度>);
lt.LTHelper.logError (e);
返回跨度>;
}
}
使用下面的代码来初始化显示的文档查看器应用程序的用户界面。
/ /更新UI应用程序的状态跨度>
私人跨度>updateAppUIState ():无效跨度>{
让hasDocument:布尔跨度>=这跨度>._documentViewer.hasDocument;
如果跨度>(hasDocument) {
如果跨度>(窗口。getComputedStyle (这跨度>。imageViewerContainerDiv)。显示= = =“没有”跨度>){
这跨度>。imageViewerContainerDiv.style。显示=“块”跨度>;
这跨度>._documentViewer.view。imageViewer.updateTransform ();
}
如果跨度>(这跨度>.navigationbar.showThumbnailsBtn。matches (禁用”:“跨度>))
这跨度>。navigationbar。showThumbnailsBtn。禁用=假跨度>;
如果跨度>(这跨度>._documentViewer.document.isStructureSupported) {
如果跨度>(这跨度>.navigationbar.showBookmarksBtn。matches (禁用”:“跨度>))
这跨度>。navigationbar。showBookmarksBtn。禁用=假跨度>;
}其他的跨度>{
这跨度>.navigationbar.showBookmarksBtn。类List.remove (“activeNavigationbarBtn”跨度>);
如果跨度>(!这跨度>.navigationbar.showBookmarksBtn。matches (禁用”:“跨度>)))
这跨度>。navigationbar。showBookmarksBtn。禁用=真正的跨度>;
如果跨度>(这跨度>。bookmarksContainer.style。显示= = =“块”跨度>)
这跨度>。bookmarksContainer.style。显示=“没有”跨度>;
}
}其他的跨度>{
如果跨度>(窗口。getComputedStyle (这跨度>。imageViewerContainerDiv)。显示= = =“块”跨度>){
这跨度>。imageViewerContainerDiv.style。显示=“没有”跨度>;
}
这跨度>.navigationbar.showThumbnailsBtn。类List.remove (“activeNavigationbarBtn”跨度>);
如果跨度>(!这跨度>.navigationbar.showThumbnailsBtn。matches (禁用”:“跨度>)))
这跨度>。navigationbar。showThumbnailsBtn。禁用=真正的跨度>;
如果跨度>(这跨度>。thumbnailsContainer.style。显示= = =“块”跨度>)
这跨度>。thumbnailsContainer.style。显示=“没有”跨度>;
这跨度>.navigationbar.showBookmarksBtn。类List.remove (“activeNavigationbarBtn”跨度>);
如果跨度>(!这跨度>.navigationbar.showBookmarksBtn。matches (禁用”:“跨度>)))
这跨度>。navigationbar。showBookmarksBtn。禁用=真正的跨度>;
如果跨度>(这跨度>。bookmarksContainer.style。显示= = =“块”跨度>)
这跨度>。bookmarksContainer.style。显示=“没有”跨度>;
}
这跨度>。updateContainers ();
}
下面的代码检查加载文档进行解析,解析文件如果需要,并设置加载文档到文档查看器。
公共跨度>setDocument(文档:lt.Document.LEADDocument):无效跨度>{
/ /看看我们是否需要解析文档结构跨度>
如果跨度>(document.structure.isParsed) {
这跨度>。finishSetDocument(文档);
}
其他的跨度>
这跨度>。parseStructure(文档);
}
私人跨度>parseStructure(文档:lt.Document.LEADDocument):无效跨度>{
document.structure.parse ()
.done((文档:lt.Document.LEADDocument):无效跨度>=>{
这跨度>。finishSetDocument(文档);
})
fail (():无效跨度>=>{
lt.LTHelper.log (“错误解析文档结构。”跨度>);
});
}
公共跨度>finishSetDocument(文档:lt.Document.LEADDocument):无效跨度>{
如果跨度>(这跨度>。_documentViewer。视图! =零跨度>){
/ /使用SVG图像跨度>
这跨度>._documentViewer。view。useSvgBackImage =真正的跨度>;
}
/ /设置加载文档在文档查看器跨度>
这跨度>._documentViewer。setDocument(文档);
/ /更新UI跨度>
这跨度>。updateAppUIState ();
/ /调用onResize所以DIV的大小得到更新跨度>
这跨度>。onResize (零跨度>);
/ /页面显示跨度>
这跨度>._documentViewer。commands.run (lt.Document.Viewer.DocumentViewerCommands.viewFitPage零跨度>);
}
}
}
添加一个调用run()方法Index.ts
脚本。
document.addEventListener (“DOMContentLoaded”内跨度>,()=>{
(新跨度>lt.DocumentViewer。SetLicense ()) .run ();
(新跨度>lt.DocumentViewer。DocumentViewerApp())。run ();
});
在运行前端文档查看器之前,运行文档服务。LEADTOOLS SDK安装提供了以下三个例子文档的服务平台:
说明如何设置和配置文档服务,在前面列出的三个平台中的步骤开始使用文档查看器演示,HTML5的JavaScript教程。
对于本教程,. net Framework文档服务使用,它可以在这里找到:
一旦你有了后端文档服务运行,执行构建
脚本transpile TS脚本的输出网站
文件夹:
npm运行构建
一旦完成,执行开始
脚本自动启动服务器并在浏览器默认打开托管网站。
npm运行开始
本教程展示了如何初始化、加载和显示一个文档NodeJS打印稿文档查看器的Web应用程序。
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗Web查看器net
188宝金博怎么下载
支持的平台上
net, Java, Android和iOS / macOS组件
C / c++类库的API
HTML5 JavaScript库