我有一个非常大的项目,有很多文件。我只需要将几个类提取到一个单独的 DLL 中,但问题是这些类对其他文件有很多依赖项。尝试手动制作它,我已经花了几个小时,但仍然存在与丢失文件相关的无限错误。有什么解决方案可以自动化这个过程吗?
我在玩WIA自动化,我一次都无法扫描多个页面。谁能给我一些有关如何实现这一目标的提示?以下是我用于扫描文档/图像的代码示例:
public static byte[] ScanImage(int colourType, string formatId, int dpi)
{
_dialog = new CommonDialogClass();
_scanner = _dialog.ShowSelectDevice(WIA.WiaDeviceType.ScannerDeviceType, false, false);
foreach (Property item in _scanner.Items[1].Properties)
{
switch (item.PropertyID)
{
case 6146: //4 is Black-white,gray is 2, colour 1
SetProperty(item, colourType);
break;
case 6147: //dots per inch/horizontal
SetProperty(item, dpi);
break;
case 6148: //dots per inch/vertical
SetProperty(item, dpi);
break;
case 6149: //x point where to start scan
SetProperty(item, 0);
break;
case 6150: //y-point where to start scan
SetProperty(item, 0);
break;
case 6151: …Run Code Online (Sandbox Code Playgroud) 我需要减少彩色扫描的文件大小.
到目前为止,我认为应该采取以下步骤:
到目前为止,我们使用convert(imagemagick)和net-ppm工具.
扫描是发票,而不是照片.
任何提示赞赏.
更新
例:
赏金
具有可重现解决方案的example.png最小且良好可读的简化文件获得了赏金.该解决方案只需使用开源软件.
文件格式并不重要,只要您可以再次将其转换为PNG即可.处理时间并不重要.我可以稍后优化.
更新
我的黑白输出效果非常好(谢谢).颜色减少到约16或32种颜色将是有趣的.
你好堆栈溢出!
我是编程的终极初学者。我在 php 和 vba 方面有一些经验,可以根据需要编写自己的脚本,尤其是在 excel 中。
最近,对于工作中的一个项目,我需要能够从连接到同一台计算机的多个扫描仪(例如 2台)自动扫描(例如每 2 分钟一次)。我决定以这个项目为起点,让我感受一下 Visual Basic。所以我们开始了,我安装了 Visual Studio Express 2010 并开始编写我的脚本,试图在这里和那里找到一些可以帮助我的代码。我发现 WIA 可以提供帮助(吐温也可以,但对我这个新手来说似乎更模糊)
无论如何,我终于想出了一个应用程序,当只连接一个扫描仪时,它能够以设定的时间间隔自动扫描。当我连接多个扫描仪时,问题就来了。然后,第一次扫描正确发生(扫描仪 1 扫描,然后扫描仪 2 扫描),但是当第二次扫描应该开始时,没有任何反应并且扫描仪变得无法访问(忙碌)。我虽然可能忘记了“释放”或“断开”上次使用的扫描仪。或者,扫描仪的缓冲存储器中还有一些东西?
过去 3 天我一直被困在这个问题上,不知道如何使它起作用。
这是扫描的功能:(我没有跳过其余部分,因为它是 UI 和文件夹管理)
Public Sub scannerloop()
'format constants
Const wiaFormatBMP = "{B96B3CAB-0728-11D3-9D7B-0000F81EF32E}"
Const wiaFormatPNG = "{B96B3CAF-0728-11D3-9D7B-0000F81EF32E}"
Const wiaFormatGIF = "{B96B3CB0-0728-11D3-9D7B-0000F81EF32E}"
Const wiaFormatJPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}"
Const wiaFormatTIFF = "{B96B3CB1-0728-11D3-9D7B-0000F81EF32E}"
'file format
Dim fileformat As String
If Me.FileExt.SelectedItem = "TIF" Then fileformat = wiaFormatTIFF
If Me.FileExt.SelectedItem …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 .NET 中编写某种代码来从网络扫描仪获取图像。我已经尝试过 WIA,但甚至无法看到网络扫描仪,所以我现在正在查看 TWAIN。
问题出在哪里,我很难找到有关如何执行此操作的任何当前信息。
不断出现的主要文章是这篇 2002 年的代码项目教程。这行得通,但我对代码的作用一无所知,所以我对使用它很谨慎。
还有一个关于 codeplex的 2009 twaindotnet项目,我实际上认为我有机会理解它,所以看起来更有希望。
我想知道是否有其他关于在 .Net 中使用 TWAIN 的有用资源,或者任何其他开源项目、解释、教程或其他一些可以更容易理解如何使用 TWAIN 的资源?或者我发现的两个来源真的全部都有?
我正在编写Microsoft Access应用程序,并且希望使用户能够将多个页面扫描为单个PDF格式。一旦我扫描了所有页面,即可转换为PDF。这是我的代码:
Option Compare Database
Option Explicit
Const WIA_FORMAT_JPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}"
Public Function MyScan()
Dim ComDialog As WIA.CommonDialog
Dim DevMgr As WIA.DeviceManager
Dim DevInfo As WIA.DeviceInfo
Dim dev As WIA.Device
Dim img As WIA.ImageFile
Dim i As Integer
Dim wiaScanner As WIA.Device
Set ComDialog = New WIA.CommonDialog
Set wiaScanner = ComDialog.ShowSelectDevice(WiaDeviceType.UnspecifiedDeviceType, False, True)
Set DevMgr = New WIA.DeviceManager
For i = 1 To DevMgr.DeviceInfos().Count
If DevMgr.DeviceInfos(i).DeviceID = wiaScanner.DeviceID Then
Set DevInfo = DevMgr.DeviceInfos(i)
End If
Next i
Set dev = …Run Code Online (Sandbox Code Playgroud) 我正在使用 Quagga.js 使用 HTML5 和 javascript 制作在线扫描应用程序。
我需要让网络摄像头工作来搜索条形码和导入的 quagga.js :
在 Quagga 的网页上,您会找到一个名为 Quagga.init 的方法。初始化网络摄像头视图。我在脚本标签中输入了这段代码:
Quagga.init({
inputStream : {
name : "Live",
type : "LiveStream"
},
decoder : {
readers : ["code_128_reader"]
}
}, function() {
console.log("Initialization finished. Ready to start");
Quagga.start();
});
Run Code Online (Sandbox Code Playgroud)
但什么也没发生。我需要做什么才能让这个网络摄像头工作?对于创建用于扫描条码的基于 Web 的应用程序,还有其他意见吗?
谢谢你的回答!
我尝试在 Python 3 中使用 PyPDF2 模块,但无法显示“页面大小”属性。我想知道扫描为 PDF 文件之前纸张尺寸是多少。
像这样的东西:
import PyPDF2
pdf=PdfFileReader("sample.pdf","rb")
print(pdf.getNumPages())
Run Code Online (Sandbox Code Playgroud)
但我正在寻找另一个Python函数而不是例如getNumPages()...
下面的命令打印某种元数据,但不显示页面大小:
pdf_info=pdf.getDocumentInfo()
print(pdf_info)
Run Code Online (Sandbox Code Playgroud) 我最近开始参加 R 课程,目前正在研究扫描文件。在工作表上,我的一个问题是:
读取文件Table6.txt,先查看文件。注意信息是重复的,我们只想要第一个非重复的。这次确保只创建角色而不是因素。最后,我们不想要评论。
该文件名为Table6.Txt
我设法编写了正确读取表格的代码,但是答卷在扫描功能中有一个额外的部分,上面写着 flush=TRUE
我的代码是这样的:
df <- read.table("Table6.txt",skip = 1,header = TRUE,row.names = "Name",nrow
= 7,comment.char = "@",stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)
并且答卷显示
df <- read.table("Table6.txt",skip = 1,header = TRUE,row.names = "Name",nrow
= 7,flush = TRUE,comment.char = "@",stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)
冲洗功能在这里做什么?两个代码的输出给出相同的数据帧。
df <- read.table("Table6.txt",skip = 1,header = TRUE,row.names = "Name",nrow
= 7,flush = TRUE,comment.char = "@",stringsAsFactors = FALSE)
df
Age Height Weight Sex
Alex 25 177 57 F
Lilly 31 163 69 F
Mark 23 190 83 M …Run Code Online (Sandbox Code Playgroud) 我想在 iOS 应用程序上扫描信用卡。我使用了 CardIO 框架,但它不适用于 ios13
guard let cardIOVC = CardIOPaymentViewController(paymentDelegate: self) else {
print("This device is incompatible with CardIO")
return
}
cardIOVC.collectCVV = false
cardIOVC.modalPresentationStyle = .overCurrentContext
present(cardIOVC, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
所以我想知道在提供 cardInfo 时,在不显示内置预加载视图的情况下实现 CardIO 的最佳方法是什么。
guard let cardIOVC = ScanViewController.createViewController(withDelegate: self) else {
print("This device is incompatible with CardScan")
return
}
cardIOVC.allowSkip = true
present(cardIOVC, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
因此 cardScan Library 但既不返回到期日期也不返回名片持有人。我不确定我开发的代码块是否错过了配置 creditInfo 回调的东西。
我还测试了 DyScan 框架作为 CardIO API 的更新,但是没有可用的podSpec:DyscanIntegrationGuide
iOS 是否为开发者提供任何公共 API …