FAQ TBarCode DLL / TBarCode Library
Comment améliorer la vitesse avec Save Image ?
Comment améliorer la vitesse avec Save Image ?
Pour accélérer l'impression des codes-barres, les options suivantes sont suggérées :
BCBitmapToMemory
Au lieu de BCSaveImageToBuffer, vous pouvez utiliser BCBitmapToMemory, qui devrait être plus rapide. Pour plus d'informations, voir la référence API - BCBitmapToMemoryA .
Notez que BitmapToMemory ne prend pas en charge le rendu de police et utilise également une unité différente pour la taille transmise. Si vous recevez le code d'erreur de mémoire insuffisante (eErr_OutOfMemory), augmentez la taille du tampon (utilisez la valeur *pnSize retournée) et rappelez la fonction. La taille du bitmap créé influence également la vitesse (mais pas énormément).
Mode de dessin
Vous pouvez changer le mode de dessin en « compatible », ce qui devrait entraîner des performances nettement meilleures. Pour plus d'informations, voir la référence API - BCSetDrawModeExt .
Cependant, le mode de dessin « compatible » produit parfois des barres/points agrandis (ou l'inverse), l'écart étant de 1 pixel. Ce mode de dessin utilise la fonction GDI Rectangle – le rendu correct des barres dépend du pilote graphique/vidéo ainsi que du pilote d'imprimante. Dans environ 90 à 95 % des cas d'usage, la résolution n'a pas d'importance (l'écart de 1 pixel peut être ignoré avec une imprimante à 1200 dpi), mais avec des bitmaps basse résolution, 1 pixel représente déjà beaucoup. C'est pourquoi les tests sont importants.
Définissez ceci avant d'appeler BCDraw ou BCSaveImage :
BCSetDrawModeExt (pBarCode, eDrawMode_Compatible);
Multithreading
Pour le multithreading, vous devriez également tenir compte de ces conseils :