]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add convert image only for gray
authorBastian Dehn <hhaalo@arcor.de>
Wed, 7 Feb 2024 17:30:25 +0000 (18:30 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Wed, 7 Feb 2024 17:30:34 +0000 (18:30 +0100)
src/kds_s2000w_handler.c
src/kds_s2000w_net.c

index 8e79b66696649ffd0d8734e89bdcad92929aacb5..1ee22a81b2902236aa2382434e629b2b141aa48d 100644 (file)
@@ -77,6 +77,21 @@ void _get_current_metadata()
        if (current_scan_status.mdata.format == 1)
                channels = 3;
 
+       if (pnm_image.size > 0) {
+               free(pnm_image.data);
+               pnm_image.data = NULL;
+               pnm_image.size = 0;
+       }
+       if (current_scan_status.mdata.depth > 8) {
+               current_scan_status.mdata.depth = 8;
+               kds_s2000w_convert_jpg_to_pnm_With_depth(&image, &pnm_image, current_scan_status.mdata.depth);
+       } else {
+               kds_s2000w_convert_jpg_to_pnm(&image, &pnm_image);
+       }
+
+       current_scan_status.mdata.size = pnm_image.size;
+       printf("size of pnm image: %i\n", pnm_image.size);
+
        if (current_scan_status.mdata.depth == 1)
                current_scan_status.mdata.bytes_per_line = channels * ((current_scan_status.mdata.pixels_per_line + 7) / 8);
        else
index 90a250b706d9676ac11785b397d0e4125aaf118d..61b62c0aadf5783bef8b63f6940acda131c99246 100644 (file)
@@ -178,9 +178,11 @@ void _sane_kds_s2000w_net_cancel(SANE_Handle handle)
 SANE_Status _sane_kds_s2000w_net_get_parameters(SANE_Handle handle,
        SANE_Parameters* params)
 {
+       printf("get parameters 1\n");
        if (!scan_started)
                return SANE_STATUS_GOOD;
 
+       printf("get parameters 2\n");
        for (int i = 0; i < 10; i++) {
                sleep(1);
                current_metadata = kds_s2000w_handler_get_parameters();
@@ -189,6 +191,7 @@ SANE_Status _sane_kds_s2000w_net_get_parameters(SANE_Handle handle,
                        break;
        }
 
+       printf("get parameters 3\n");
        if (!current_metadata.valid)
                return SANE_STATUS_UNSUPPORTED;