kopia lustrzana https://gitlab.com/sane-project/website
177 wiersze
8.2 KiB
HTML
177 wiersze
8.2 KiB
HTML
![]() |
<!-- received="Sun Nov 8 16:12:21 1998 PST" -->
|
|||
|
<!-- sent="Mon, 09 Nov 1998 02:13:59 +0200" -->
|
|||
|
<!-- name="Milon Firikis" -->
|
|||
|
<!-- email="milonf@ariadne-t.gr" -->
|
|||
|
<!-- subject="Apple: Patch for proper scanning" -->
|
|||
|
<!-- id="" -->
|
|||
|
<!-- inreplyto="" -->
|
|||
|
<title>sane-devel: Apple: Patch for proper scanning</title>
|
|||
|
<h1>Apple: Patch for proper scanning</h1>
|
|||
|
<b>Milon Firikis</b> (<a href="mailto:milonf@ariadne-t.gr"><i>milonf@ariadne-t.gr</i></a>)<br>
|
|||
|
<i>Mon, 09 Nov 1998 02:13:59 +0200</i>
|
|||
|
<p>
|
|||
|
<ul>
|
|||
|
<li> <b>Messages sorted by:</b> <a href="date.html#66">[ date ]</a><a href="index.html#66">[ thread ]</a><a href="subject.html#66">[ subject ]</a><a href="author.html#66">[ author ]</a>
|
|||
|
<!-- next="start" -->
|
|||
|
<li> <b>Next message:</b> <a href="0067.html">Milon Firikis: "Q: sane-1.0"</a>
|
|||
|
<li> <b>Previous message:</b> <a href="0065.html">Andre Couture: "parallele BizCard Reader ???"</a>
|
|||
|
<!-- nextthread="start" -->
|
|||
|
<!-- reply="end" -->
|
|||
|
</ul>
|
|||
|
<!-- body="start" -->
|
|||
|
This is a multi-part message in MIME format.<br>
|
|||
|
--------------906255AA3B0EC6650D2B970E<br>
|
|||
|
Content-Type: text/plain; charset=us-ascii<br>
|
|||
|
Content-Transfer-Encoding: 7bit<br>
|
|||
|
<p>
|
|||
|
Hello<br>
|
|||
|
<p>
|
|||
|
I included and tested a patch that was sent to me by Ian R. Justman.<br>
|
|||
|
This patch allows the backend to scan when the underlying hardware is<br>
|
|||
|
the ColorOneScanner and I suspect that may also help with the<br>
|
|||
|
OneScanner. It doesn't break the AppleScanner. I stressed it during the<br>
|
|||
|
weekend.<br>
|
|||
|
<p>
|
|||
|
The problem with the Apple Scanners lies mostly to the quantization<br>
|
|||
|
algorithm that is used by the underlying hardware. Only the<br>
|
|||
|
ColorOneScanner has well documented quantization methods although I<br>
|
|||
|
hadn't implement them mainly due to the lack of hardware. The other 2<br>
|
|||
|
models needs extreme experimentation in order to guess the algorithm.<br>
|
|||
|
You have practically to reverse engineer the internal algorithm of the<br>
|
|||
|
scanner in order to give correct info to the SANE backend. At least<br>
|
|||
|
these scanners looks robust enough not to explode :-) when out of bounds<br>
|
|||
|
scanning region is specified. Mine for example refuses to scan until you<br>
|
|||
|
specify a valid region. So the<br>
|
|||
|
current status is:<br>
|
|||
|
<p>
|
|||
|
<p>
|
|||
|
AppleScanner :Fully functional.<br>
|
|||
|
<p>
|
|||
|
OneScanner :It may scan.<br>
|
|||
|
You may have quantization problems.<br>
|
|||
|
<p>
|
|||
|
ColorOneScanner :It will scan in non color modes.<br>
|
|||
|
You may have quantization problems.<br>
|
|||
|
<p>
|
|||
|
<p>
|
|||
|
Quantization problems:<br>
|
|||
|
<p>
|
|||
|
When you have quantization problems means that the SANE backend could<br>
|
|||
|
not calculate correctly the number of pixels in X or Y direction (mostly<br>
|
|||
|
in X). This results to unexpected round offs while the SANE may wait<br>
|
|||
|
bigger/smaller image and that may lead to undesired warnings and cropped<br>
|
|||
|
images. A cropped image is most possible a shifted image also. As Ian R.<br>
|
|||
|
Justman said:<br>
|
|||
|
<p>
|
|||
|
<i>> No warnings, no cropped images, but the quantization algorithms introduce</i><br>
|
|||
|
<i>> some really neat effects when there are rounding problems. One mode I</i><br>
|
|||
|
<i>> tried does work right, but it yields a negative image. Otherwise, other</i><br>
|
|||
|
<i>> modes look like a horizontally-rolling picture on a TV set.</i><br>
|
|||
|
<p>
|
|||
|
<p>
|
|||
|
Milon Firikis<br>
|
|||
|
<p>
|
|||
|
PS<br>
|
|||
|
<p>
|
|||
|
I am also attaching a patch containing some correction in my e-mail<br>
|
|||
|
address.<br>
|
|||
|
--------------906255AA3B0EC6650D2B970E<br>
|
|||
|
Content-Type: text/plain; charset=us-ascii; name="apple_buffer"<br>
|
|||
|
Content-Transfer-Encoding: 7bit<br>
|
|||
|
Content-Disposition: inline; filename="apple_buffer"<br>
|
|||
|
<p>
|
|||
|
diff -ur sane-pre0.75.orig/backend/apple.c sane-pre0.75/backend/apple.c<br>
|
|||
|
--- sane-pre0.75.orig/backend/apple.c Thu Oct 29 09:00:43 1998<br>
|
|||
|
+++ sane-pre0.75/backend/apple.c Sun Nov 8 21:18:13 1998<br>
|
|||
|
@@ -2502,7 +2502,8 @@<br>
|
|||
|
<br>
|
|||
|
if (data_length)<br>
|
|||
|
{<br>
|
|||
|
- if (result[3] & 1) /* Scanner Blocked: Retrieve data */<br>
|
|||
|
+ /* if (result[3] & 1) Scanner Blocked: Retrieve data */<br>
|
|||
|
+ if ((result[3] & 1) || data_av)<br>
|
|||
|
{<br>
|
|||
|
DBG (IO_MESSAGE,<br>
|
|||
|
"sane_read: (status) Available in scanner buffer %u.\n",<br>
|
|||
|
diff -ur sane-pre0.75.orig/backend/apple.desc sane-pre0.75/backend/apple.desc<br>
|
|||
|
--- sane-pre0.75.orig/backend/apple.desc Tue Jul 28 07:47:48 1998<br>
|
|||
|
+++ sane-pre0.75/backend/apple.desc Sun Nov 8 21:54:30 1998<br>
|
|||
|
@@ -1,10 +1,10 @@<br>
|
|||
|
;Apple backend .desc file by Milon Firikis.<br>
|
|||
|
<br>
|
|||
|
:backend "apple" ; name of backend<br>
|
|||
|
-:version "0.2" ; version of backend<br>
|
|||
|
+:version "0.31" ; version of backend<br>
|
|||
|
:status :alpha ; :alpha, :beta, :stable, :new<br>
|
|||
|
:manpage "sane-apple" ; name of manpage (if it exists)<br>
|
|||
|
-;:url "<a href="http://www.luser.com/temp/">http://www.luser.com/temp/</a>" ; backend's web page<br>
|
|||
|
+;:url "<a href="http://no.www.page.yet/">http://no.www.page.yet/</a>" ; backend's web page<br>
|
|||
|
<br>
|
|||
|
:devicetype :scanner ; start of a list of devices....<br>
|
|||
|
<br>
|
|||
|
@@ -13,6 +13,6 @@<br>
|
|||
|
:model "Apple Scanner"<br>
|
|||
|
:comment "4bit, 16 shades of gray"<br>
|
|||
|
:model "OneScanner"<br>
|
|||
|
-:comment "8bit, 256 shades of gray (needs work)"<br>
|
|||
|
+:comment "8bit, 256 shades of gray. The backend needs work especially in the quantization code but it may work."<br>
|
|||
|
:model "ColorOneScanner"<br>
|
|||
|
-:comment "truecolor (needs much work)"<br>
|
|||
|
+:comment "truecolor (needs much work) but it scans in non color modes."<br>
|
|||
|
<p>
|
|||
|
--------------906255AA3B0EC6650D2B970E<br>
|
|||
|
Content-Type: text/plain; charset=us-ascii; name="apple_mail"<br>
|
|||
|
Content-Transfer-Encoding: 7bit<br>
|
|||
|
Content-Disposition: inline; filename="apple_mail"<br>
|
|||
|
<p>
|
|||
|
diff -ur sane-pre0.75.orig/AUTHORS sane-pre0.75/AUTHORS<br>
|
|||
|
--- sane-pre0.75.orig/AUTHORS Wed Oct 28 09:41:51 1998<br>
|
|||
|
+++ sane-pre0.75/AUTHORS Sun Nov 8 22:36:02 1998<br>
|
|||
|
@@ -8,6 +8,7 @@<br>
|
|||
|
<br>
|
|||
|
Backends:<br>
|
|||
|
<br>
|
|||
|
+ apple: Milon Firikis<br>
|
|||
|
artec: Chris Pinkham<br>
|
|||
|
coolscan: Didier Carlier<br>
|
|||
|
dc25: Peter Fales<br>
|
|||
|
@@ -59,7 +60,7 @@<br>
|
|||
|
Matthew Marjanovic <<a href="mailto:maddog@mir.com">maddog@mir.com</a>><br>
|
|||
|
Michael K. Johnson <<a href="mailto:johnsonm@redhat.com">johnsonm@redhat.com</a>><br>
|
|||
|
Michel Roelofs <<a href="mailto:michelr@stack.nl">michelr@stack.nl</a>><br>
|
|||
|
-Milon Firikis <<a href="mailto:milonf@isosun.ariadne-t.gr">milonf@isosun.ariadne-t.gr</a>><br>
|
|||
|
+Milon Firikis <<a href="mailto:milonf@ariadne-t.gr">milonf@ariadne-t.gr</a>><br>
|
|||
|
Oliver Rauch <<a href="mailto:Oliver.Rauch@Wolfsburg.DE">Oliver.Rauch@Wolfsburg.DE</a>><br>
|
|||
|
Patrick Reynolds <<a href="mailto:patrickr@virginia.edu">patrickr@virginia.edu</a>><br>
|
|||
|
Peter Fales <<a href="mailto:psfales@earthling.net">psfales@earthling.net</a>><br>
|
|||
|
diff -ur sane-pre0.75.orig/PROJECTS sane-pre0.75/PROJECTS<br>
|
|||
|
--- sane-pre0.75.orig/PROJECTS Tue Jul 21 08:43:19 1998<br>
|
|||
|
+++ sane-pre0.75/PROJECTS Sun Nov 8 22:37:41 1998<br>
|
|||
|
@@ -23,7 +23,7 @@<br>
|
|||
|
Polaroid wip Dick Bruijn <<a href="mailto:dick@wau.mis.ah.nl">dick@wau.mis.ah.nl</a>> Polaroid SprintScan<br>
|
|||
|
35 LE<br>
|
|||
|
Artec wip Chris Pinkham <<a href="mailto:cpinkham@infi.net">cpinkham@infi.net</a>> Artec AT3<br>
|
|||
|
-Apple wip Milon Firikis <<a href="mailto:milonf@isosun.ariadne-t.gr">milonf@isosun.ariadne-t.gr</a>> AppleScanner (?)<br>
|
|||
|
+Apple wip Milon Firikis <<a href="mailto:milonf@ariadne-t.gr">milonf@ariadne-t.gr</a>> AppleScanner<br>
|
|||
|
Coolscan wip Didier Carlier <<a href="mailto:carlierd@acm.org">carlierd@acm.org</a>> Nikon Coolscan II<br>
|
|||
|
DC25 wip Peter Fales <<a href="mailto:psfales@earthling.net">psfales@earthling.net</a>> Kodak DC25<br>
|
|||
|
DMC wip David Skoll <<a href="mailto:dskoll@chipworks.com">dskoll@chipworks.com</a>> Polaroid Digital<br>
|
|||
|
<p>
|
|||
|
--------------906255AA3B0EC6650D2B970E--<br>
|
|||
|
<p>
|
|||
|
<p>
|
|||
|
<pre>
|
|||
|
--
|
|||
|
Source code, list archive, and docs: <a href="http://www.mostang.com/sane/">http://www.mostang.com/sane/</a>
|
|||
|
To unsubscribe: echo unsubscribe sane-devel | mail <a href="mailto:majordomo@mostang.com">majordomo@mostang.com</a>
|
|||
|
</pre>
|
|||
|
<!-- body="end" -->
|
|||
|
<p>
|
|||
|
<ul>
|
|||
|
<!-- next="start" -->
|
|||
|
<li> <b>Next message:</b> <a href="0067.html">Milon Firikis: "Q: sane-1.0"</a>
|
|||
|
<li> <b>Previous message:</b> <a href="0065.html">Andre Couture: "parallele BizCard Reader ???"</a>
|
|||
|
<!-- nextthread="start" -->
|
|||
|
<!-- reply="end" -->
|
|||
|
</ul>
|