基於標籤的Web文檔圖片分類

Dynamic Web TWAIN的最新版本支提供了Tag管理接口。可以很輕鬆的給掃描之後的圖片進行標記分類。這篇文章分享下如何使用。

Web文檔圖片分類

創建一個HTML文件,並引用Dynamic Web TWAIN的JS文件:

<script type="text/javascript" src="https://unpkg.com/dwt/dist/dynamsoft.webtwain.min.js"> </script>

組件初始化:

window.onload = function () {
    if (Dynamsoft) {
        // Get a valid trial license from https://www.dynamsoft.com/CustomerPortal/Portal/Triallicense.aspx
        Dynamsoft.WebTwainEnv.ProductKey = 't0126vQIAAGQTYLHjoyjiQ1AsFej37+JgaOeak1T7qjI1MfE2+F9KMLLf9buTDIQAxXItiLN1l7Uj0UZ+bb3OWW78Nci9DawpTRySA2ZkjhhGe7tyM+nDFHndJZ05weNCttEBk2xDM4+id3uEnfk2OmCSbWjm+c8csoin5B18WYul';
        Dynamsoft.WebTwainEnv.RegisterEvent('OnWebTwainReady', onDWTReady);
        Dynamsoft.WebTwainEnv.Load();
    }
 
};

function onDWTReady() {
    DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
}

設置一些參數,比如寬,高,默認的標籤:

DWObject.Width = 480;
DWObject.Height = 640;
DWObject.SetDefaultTag('default');

獲取USB掃描儀列表:

let count = DWObject.SourceCount;
let select = document.getElementById("source");
 
for (let i = 0; i < count; i++) {
    let source_name = DWObject.GetSourceNameItems(i);
    let option = document.createElement('option');
    option.value = i;
    option.text = source_name;
    select.appendChild(option);
}

爲了方便看圖,可以改變容器的顯示方式:

<select id="view" onchange="onViewChange()">
                    <option value="6">6x6</option>
                    <option value="5">5x5</option>
                    <option value="4">4x4</option>
                    <option value="3">3x3</option>
                    <option value="2">2x2</option>
                    <option value="1">1x1</option>
</select>
 
let view_select = document.getElementById('view');
DWObject.SetViewMode(view_select.value, view_select.value);

在這裏插入圖片描述

添加掃描儀功能:

function scanImage() {
    if (!DWObject) return;
 
    DWObject.IfDisableSourceAfterAcquire = true;
    let bSelected = DWObject.SelectSource();
 
    if (bSelected) {
        let onSuccess, onFailure;
        onSuccess = onFailure = function () {
            DWObject.CloseSource();
        };
 
        DWObject.OpenSource();
        DWObject.AcquireImage(onSuccess, onFailure);
    }
}

添加本地圖片加載功能:

function uploadImage() {
    if (!DWObject) return;
 
    let onSuccess = function () { };
    let onFailure = function (errorCode, errorString) { };
 
    DWObject.IfShowFileDialog = true;
    DWObject.LoadImageEx("", EnumDWT_ImageType.IT_ALL, onSuccess, onFailure);
}

選擇圖片,添加標籤歸類:

let count = DWObject.SelectedImagesCount;
let indices = [];
for (let i = 0; i < count; ++i) {
    indices.push(DWObject.GetSelectedImageIndex(i));
}
DWObject.TagImages(indices, tag.value);
DWObject.FilterImagesByTag(tag.value);

在瀏覽器中運行頁面。
在這裏插入圖片描述

源碼

https://github.com/yushulx/web-document-management

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章