اسکن و آپلود اسناد درAsp.Net MVC

در این مقاله میخواهیم اسکن و آپلود اسناد در Asp.Net MVC را آموزش دهیم

اسکن و آپلود اسناد درAsp.Net MVC

 بیشتر سازمان ها نیاز به یک راه حل تصویربرداری سند برای تبدیل اسناد کاغذی به اسناد الکترونیکی / دیجیتالی می باشند.  هدف اصلی سازمان نگاهی به انجام این کار آسان تر و کارآمدترو دسترسی و مدیریت سوابق و داده های خود است هچنین به انتقال از مدیریت اسناد مبتنی بر کاغذ  به دیجیتال است که به سرعت تبدیل شدن برای همه شرکتها و سازمانها میباشد.

این مقاله نشان می دهد چگونه  اسناد را در ASP.NET MVC آپلود و اسکن کنید ما با استفاده از  Dynamic Web TWAIN scanning SDK  که به خوبی مورد استفاده برای تسریع توسع و استقرار چنین برنامه هایی قرار میگیرد.

Dynamic Web TWAIN  یک TWAIN scanning SDK  به طور خاص بهینه سازی شده برای برنامه های وب.

این SDK به شما اجازه میدهد  که با اسکنر ، دوربین های دیجیتال  و دستگاه های سازگار دیگر با Twain روی دستگاه های کاربران در جاوا اسکریپت تعامل داشته باشید.

شما میتوانید آپلود و ذخیره کنید اسناد را در یک دیسک local یا Server ،پایگاه داده یا کتابخانه اسناد SharePoint.

برای استفاده از Twain درون MVC باید پوشه Resources را به پروژه اضافه کنید.

در ویو index  یک تگ div و یک دکمه به شکل زیر اضافه کنید:

<div id="dwtcontrolContainer"></div> 
<input type="button" value="Scan" onclick="AcquireImage();" />

سپس باید آدرس دهی فایل های جاوا اسکریپت را انجام دهید:

<script src="~/Resources/dynamsoft.webtwain.initiate.js"></script>
<script src="~/Scripts/DWTSample_ScanAndUpload.js"></script>
<script src="~/Resources/dynamsoft.webtwain.config.js"></script>

یک فایل js جدید به نام DWTSample_ScanAndUpload.js بسازید و که تابع function AcquireImage() را درون آن مینویسیم:

function AcquireImage() {    
    if (DWObject) {
        DWObject.IfDisableSourceAfterAcquire = true;
        DWObject.IfShowUI = false;
        if (DWObject.SourceCount > 0) {
            DWObject.SelectSource();
            DWObject.AcquireImage();
        }
    }
}

با اجرای برنامه خود شما قادر خواهید بود تصاویر را از دستگاه بدست آورید:

بعد از اسکن کردن تصاویر درون twain  شما میتوانید تصاویر اسکن شده را در یک وب سرور آپلود کنید با استفاده از متد http post  یک پوشه به نام UploadedImages درون پروژه بسازید.

در این مقاله ما تصاویر را به صورت خودکار با فراخوانی رویداد onPostAllTransfers آپلود کردیم.

فایل ‘dynamsoft.webtwain.config.js را بازکنید و onPostAllTransfers را از کامنت در بیارید.

سپس فایل ‘DWTSample_ScanAndUpload.js را باز کنید  و تابع زیر را اضافه کنید :

function Dynamsoft_OnPostAllTransfers() {
    if (DWObject) {
        if (DWObject.HowManyImagesInBuffer > 0) {
            var strHTTPServer = location.hostname;
            DWObject.HTTPPort = location.port == "" ? 80 : location.port;
            var CurrentPathName = unescape(location.pathname); 
            var CurrentPath =
             CurrentPathName.substring(0, CurrentPathName.lastIndexOf("/") + 1);
            var strActionPage = CurrentPath + "Home/SaveToFile"; 
            var uploadfilename = "WebTWAINImage.pdf";
 
            DWObject.HTTPUploadAllThroughPostAsPDF(strHTTPServer, strActionPage, uploadfilename);
        }
    }
}

سپس در کنترلر  کد زیر را برای مدیریت داده های آپلود شده وارد کنید:

public ActionResult SaveToFile()
{
    try
    {
        String strImageName;
        HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
        HttpPostedFile uploadfile = files["RemoteFile"];
        strImageName = uploadfile.FileName;
        uploadfile.SaveAs(Server.MapPath("/") + "\\UploadedImages\\" + strImageName);
    }
    catch(Exception ex)
    {
    }
    return null;             
}

ذخیره اسناد:

تابع زیر برای ذخیره تصاویر روی هارد می باشد این تابع را به فایل DWTSample_ScanAndUpload.js’ اضافه کنید:

function SaveImage() {
    if (DWObject) {
        DWObject.IfShowFileDialog = true;
        if (DWObject.HowManyImagesInBuffer > 0)
            DWObject.SaveAllAsMultiPageTIFF("WebTWAINImage.tiff");
    }
}

سپس یک دکمه برای فراخوانی این تابع نیاز داریم :

<input type="button" value="Save" onclick="SaveImage();" />
 
Here is what the application looks like:
 
<img src="http://www.arinapishro.com/Images/Courses/Pictures/d8c1b1a4-fcd5-4bb6-a5f4-d22b1c9afa19.png" alt="" height="469" width="640">

 

فایل های ضمیمه