Skip to content

Low-level WIA 2.0/1.0 application library for .NET

License

Notifications You must be signed in to change notification settings

cyanfish/naps2-wia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAPS2.Wia

NuGet

NAPS2.Wia is a standalone component that acts as a low-level wrapper around Windows Image Acquisition (WIA).

Compared to the COM-based wiaaut.dll, you get:

  • WIA 2.0 support
  • Better feeder compatibility
  • Idiomatic .NET interface

If you're looking for a higher-level and easier-to-use scanning interface, check out NAPS2.Sdk.

Example

using var deviceManager = new WiaDeviceManager();

// Prompt the user to select a scanner
using var device = deviceManager.PromptForDevice();

// Select either "Flatbed" or "Feeder"
using var item = device.FindSubItem("Feeder");

// Scan all pages in the feeder at once
item.SetProperty(WiaPropertyId.IPS_PAGES,
                 WiaPropertyValue.ALL_PAGES);

// Enable duplex scanning
item.SetProperty(WiaPropertyId.IPS_DOCUMENT_HANDLING_SELECT,
                 WiaPropertyValue.DUPLEX);

// Set up the scan
using var transfer = item.StartTransfer();
transfer.PageScanned += (sender, args) =>
{
    using (args.Stream)
    {
        var bitmap = new Bitmap(args.Stream);
        // Do something with the image
    }
};

// Do the actual scan
transfer.Download();

Known issues

  • Native acquisition with WIA 1.0 only works in 32-bit processes. NAPS2.Sdk provides a 32-bit worker process that can be used from 64-bit applications. Most users shouldn't be affected since WIA 2.0 has no such issue.

Supported Platforms

  • .NET Framework 4.6.2+ (Windows)
  • .NET 6.0+ (Windows)

License

Unlike most of NAPS2.Sdk which is licensed under the LGPL, NAPS2.Wia uses the more permissive MIT license.

About

Low-level WIA 2.0/1.0 application library for .NET

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy