Difference between revisions of "Scanner csharp"

From Ilianko
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
==Програмен достъп до скенер==
 
==Програмен достъп до скенер==
 +
 +
 +
 
===TWAIN===
 
===TWAIN===
 
TWAIN е програмен интерфейс (API) и комуникционен протокол за управление на комуникацията между софтуeрни приложения и устройства за въвеждане на графична информация ( изображения от скенери, цифрови фотопарати и др.)   
 
TWAIN е програмен интерфейс (API) и комуникционен протокол за управление на комуникацията между софтуeрни приложения и устройства за въвеждане на графична информация ( изображения от скенери, цифрови фотопарати и др.)   
Line 16: Line 19:
  
 
===Scanner Access Now Easy (SANE)===
 
===Scanner Access Now Easy (SANE)===
 +
SANE е програмен интерфейс, който осигурява стандартизиран достъп до всякакви растерни устраойства - плоски и ръчни скенери, камери и др. SANE API се разработва свободни с отворен лиценз и най-често се използва в Linux.
  
 +
http://en.wikipedia.org/wiki/Scanner_Access_Now_Easy
  
 +
http://www.sane-project.org/
  
xxx
+
== Saraff.Twain.Net ==
  
// _twain
+
Сваляне на библиотеките -> https://sarafftwain.codeplex.com/
//
 
this.components = new System.ComponentModel.Container();
 
this.twain = new Saraff.Twain.Twain32(this.components);
 
this.twain.AppProductName = "Saraff.Twain, Version=1.0.0.0";
 
this.twain.Parent = this;
 
this.twain.AcquireCompleted += new System.EventHandler(this.getScan);
 
  
  private Saraff.Twain.Twain32 twain;
+
Добавяне на twain контролер към toolbox-a:
 +
  Десен бутон върху ToolBox менюто -> choose Items -> Browse -> Saraff.Twain.dll
  
 +
Добавяне на контролера към приложенито
 +
 +
 +
Добавяне на бутон за избор на сканиращо устройство:
 
  private void scanner_Click(object sender, EventArgs e)
 
  private void scanner_Click(object sender, EventArgs e)
 
  {
 
  {
     this.twain.CloseDataSource();
+
     this.twain321.CloseDataSource();
     this.twain.SelectSource();
+
     this.twain321.SelectSource();
 
  }
 
  }
  
 +
Добавяне на бутон за сканиране:
 
  private void scanButton_Click(object sender, EventArgs e)
 
  private void scanButton_Click(object sender, EventArgs e)
 
  {
 
  {
   this.twain.Acquire();
+
   this.twain321.Acquire();
 
  }
 
  }
  
  private void getScan(object sender, EventArgs e)
+
Да се добави Panel
 +
properties->autoscroll->true
 +
 
 +
Да се добави  PictureBox в панела
 +
properties->size->autosize
 +
 
 +
Добавяне на събитие при завършване на сканирането
 +
  private void twain321_AcquireCompleted(object sender, EventArgs e)
 
  {
 
  {
   if ( twain.ImageCount > 0)
+
   if (twain321.ImageCount > 0)
 
   {
 
   {
    pictureBox1.Image = twain.GetImage(0);
+
      pictureBox1.Image = twain321.GetImage(0);
 
   }
 
   }
 
  }
 
  }

Latest revision as of 13:09, 9 February 2016

Програмен достъп до скенер

TWAIN

TWAIN е програмен интерфейс (API) и комуникционен протокол за управление на комуникацията между софтуeрни приложения и устройства за въвеждане на графична информация ( изображения от скенери, цифрови фотопарати и др.)

TWAIN се разработва от TWAIN Working Group с цел:

  • Осигуряване на съвместимост между графичен софтуер и хардуер
  • Многоплатформена поддръжка (примерно Windows, Mac OS, and Linux)
  • Безплатна поддръжка и разпространение на инструменти за разработчици
  • Насърчаване на употребата на TWAIN
  • и др.


Windows Image Acquisition (WIA)

WIA се разрботва от Microsoft с цел създаване на драйвери и програмен интерфейс за устройства за въвеждане на графична информацияdriver model and application programming interface (API). Разработва се за Windows ME, наличен е като допълнителна библиотека за Windows XP, a в следващите версии е стандартно вграден.

Scanner Access Now Easy (SANE)

SANE е програмен интерфейс, който осигурява стандартизиран достъп до всякакви растерни устраойства - плоски и ръчни скенери, камери и др. SANE API се разработва свободни с отворен лиценз и най-често се използва в Linux.

http://en.wikipedia.org/wiki/Scanner_Access_Now_Easy

http://www.sane-project.org/

Saraff.Twain.Net

Сваляне на библиотеките -> https://sarafftwain.codeplex.com/

Добавяне на twain контролер към toolbox-a:

Десен бутон върху ToolBox менюто -> choose Items -> Browse -> Saraff.Twain.dll

Добавяне на контролера към приложенито


Добавяне на бутон за избор на сканиращо устройство:

private void scanner_Click(object sender, EventArgs e)
{
   this.twain321.CloseDataSource();
   this.twain321.SelectSource();
}

Добавяне на бутон за сканиране:

private void scanButton_Click(object sender, EventArgs e)
{
  this.twain321.Acquire();
}

Да се добави Panel

properties->autoscroll->true

Да се добави PictureBox в панела

properties->size->autosize

Добавяне на събитие при завършване на сканирането

private void twain321_AcquireCompleted(object sender, EventArgs e)
{
  if (twain321.ImageCount > 0)
  {
     pictureBox1.Image = twain321.GetImage(0);
  }
}