summaryrefslogtreecommitdiffstats
path: root/friendfinder/barcode.c
diff options
context:
space:
mode:
Diffstat (limited to 'friendfinder/barcode.c')
-rw-r--r--friendfinder/barcode.c55
1 files changed, 48 insertions, 7 deletions
diff --git a/friendfinder/barcode.c b/friendfinder/barcode.c
index 25866e0..21915db 100644
--- a/friendfinder/barcode.c
+++ b/friendfinder/barcode.c
@@ -2,13 +2,54 @@
#include <string.h>
#include <stdlib.h>
-#include "dmtx.h"
+#include "qrencode.h"
#include "Imlib2.h"
#include "barcode.h"
+#include "Evas.h"
+#include "Ecore.h"
+#include "Ecore_Evas.h"
+void write_img(QRcode *code)
+{
+ Ecore_Evas *ee;
+ Evas_Object *pic;
+ Evas *e;
+
+
+ ee = ecore_evas_buffer_new(1, 1);
+ e = ecore_evas_get(ee);
+
+ if (!e)
+ {
+ fputs("ERROR: could not create ecore evas buffer\n", stderr);
+ return;
+ }
+
+ evas_image_cache_set(e, 0);
+ evas_font_cache_set(e, 0);
+
+ pic = evas_object_image_add(e);
+ evas_object_image_file_set(pic, "barcode.png", NULL);
+
+ evas_object_image_size_set(pic, code->width, code->width);
+ //evas_object_image_alpha_set(pic, 0);
+ evas_object_image_data_set(pic, code->data);
+ evas_object_image_data_convert(pic, EVAS_COLORSPACE_ARGB8888);
+ evas_object_image_save(pic, "barcode.png", NULL, "quality=100 compress=9");
+// return pic;
+}
void generate_barcode(char* key)
{
+ QRcode *code;
+
+ code = QRcode_encodeString8bit(key, 0, QR_ECLEVEL_M);//, QR_MODE_8, 1);
+
+ write_img(code);
+
+ QRcode_free(code);
+/*
+ Evas_Object *pic;
size_t width, height, bytesPerPixel;
unsigned char *pxl;
DmtxEncode *enc;
@@ -28,12 +69,12 @@ void generate_barcode(char* key)
dmtxImageSetProp(enc->image, DmtxPropImageFlip, DmtxFlipNone);
- write_img(enc);
-}
-
-
-void write_img(DmtxEncode* enc)
-{
+ write_img(enc, win);
+
+ if (pic != NULL)
+ printf("barcode created...\n"); */
+// return pic;
}
+