TX TextControl HTML5 浏览器: 使用纯 JaveScript 方法加载本地文档

发布时间:2015/12/01 00:12 发布者:iceman

返回博客中心

Web.TextControl 提供了加载和保存文档到服务器的后台API。另外,本地文档也可以同前台代码加载到TX提供的 HTML5 Viewer中进行展示。

在客户端,Javascript API 如下:

TXTextControl.loadDocument(streamType, base64Data);

 

这个例子展示了怎样使用 javascript 脚本加载本地文档:

点击 Input 按钮,选择预加载的文件, 文档本转换成 FileReader 类,readAsDataURL 方法转换文档为Base64 编码。

// *****************************************************************
// readDocument
//
// Desc: This function reads a file, converts it to a Base64 encoded
// string and loads it into TX Text Control
//
// param input: The input HTML element
// *****************************************************************
function readDocument(input) {
 if (input.files && input.files[0]) {
  var fileReader = new FileReader();
  fileReader.onload = function (e) {
   var streamType = TXTextControl.streamType.PlainText;
   // set the StreamType based on the lower case extension
   switch (fileinput.value.split('.').pop().toLowerCase()) {
    case 'doc':
     streamType = TXTextControl.streamType.MSWord;
     break;
    case 'docx':
     streamType = TXTextControl.streamType.WordprocessingML;
     break;
    case 'rtf':
     streamType = TXTextControl.streamType.RichTextFormat;
     break;
    case 'htm':
     streamType = TXTextControl.streamType.HTMLFormat;
     break;
    case 'tx':
     streamType = TXTextControl.streamType.InternalUnicodeFormat;
     break;
    case 'pdf':
     streamType = TXTextControl.streamType.AdobePDF;
     break;
   }
   // load the document beginning at the Base64 data (split at comma)
   TXTextControl.loadDocument(streamType, e.target.result.split(',')[1]);
  };
  // read the file and convert it to Base64
  fileReader.readAsDataURL(input.files[0]);
 }
}
// call readDocument when a new document has been selected
$("#fileinput").change(function () {
 readDocument(this);
});

 

下载代码体验该功能:

 

更多TX功能请参考:

/developer/textcontrol-asp


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网