Ich habe diesen Code für C# auf .NET 4.8 mit NTWain 3.7.5 in einer Konsolen -App, aber wenn ich versuche, im Duplex -Modus zu scannen, erhalte ich in einigen Fällen nur eine Seite pro PDF, die generiert wurde, wenn der Scanner -Scan mehr als 1 Seite aktiviert wurde, und offensichtlich, wenn der Duplex mindestens 2 Seiten zurückgeben muss. Wo ist das Problem mit diesem Code? Kann mir bitte jemand helfen? < /P>
Ich habe diesen Code für C# auf .NET 4.8 mit NTWain 3.7.5 in einer Konsolen -App, aber wenn ich versuche, im Duplex -Modus zu scannen, erhalte ich in einigen Fällen nur eine Seite pro PDF, die generiert wurde, wenn der Scanner -Scan mehr als 1 Seite aktiviert wurde, und offensichtlich, wenn der Duplex mindestens 2 Seiten zurückgeben muss. Wo ist das [url=viewtopic.php?t=26065]Problem[/url] mit diesem Code? Kann mir bitte jemand helfen? < /P> [code]using NTwain; using NTwain.Data; using PdfSharp.Drawing; using PdfSharp.Pdf; using System; using System.Collections.Generic; using System.Drawing; using System.Globalization; using System.IO; using System.Linq; using System.Threading; using System.Windows.Forms;
namespace ScanService.Utilities { public static class TwainScanner { private static ManualResetEvent _waitScan = new ManualResetEvent(false);
var rc = source.Enable(SourceEnableMode.NoUI, false, IntPtr.Zero); if (rc != ReturnCode.Success) { Console.WriteLine("❌ No se pudo iniciar el escaneo."); _waitScan.Set(); Application.ExitThread(); return; }
Application.Run();
session.TransferError -= onError; session.DataTransferred -= onTransferred; session.SourceDisabled -= onDisabled; } catch (Exception ex) { Console.WriteLine("❌ Error en el hilo STA: " + ex.Message); _waitScan.Set(); Application.ExitThread(); } finally { try { if (session?.State >= 4) source?.Close(); } catch { }
if (scannedBitmaps.Count == 0) { Console.WriteLine("❌ No se escanearon páginas."); return null; }
try { using (MemoryStream output = new MemoryStream()) using (PdfDocument pdf = new PdfDocument()) { foreach (Bitmap bmp in scannedBitmaps) { PdfPage page = pdf.AddPage(); var dims = GetPageDimensions(sheetSize); page.Width = XUnit.FromInch(dims.Item1); page.Height = XUnit.FromInch(dims.Item2);
using (XGraphics gfx = XGraphics.FromPdfPage(page)) using (MemoryStream ms = new MemoryStream()) { bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Png); ms.Position = 0; using (XImage ximg = XImage.FromStream(ms)) { gfx.DrawImage(ximg, 0, 0, page.Width.Point, page.Height.Point); } } }
Ich verwende Springboot3.2 und SpringIneGeGration6 für die Unterstützung von MQTT-Nachrichten,
Ich habe ein öffentliches Maven-Modul namens SZ-Common-MQTT definiert, und der Effekt, den ich erreichen...
Ich brauche eine App für Android, die die Herzfrequenz misst. Der erste Schritt besteht darin, die Geräte zu scannen und eine Verbindung zum ausgewählten Gerät herzustellen. Ich habe den Code, aber...
Ich brauche eine App für Android, die die Herzfrequenz misst. Der erste Schritt besteht darin, die Geräte zu scannen und eine Verbindung zum ausgewählten Gerät herzustellen. Ich habe den Code, aber...