Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.
There are currently four different types of barcode scanners available. Each uses a slightly different technology for reading and decoding a barcode. There are pen type readers (barcode wands), laser scanners, CCD readers, and camera based readers.
Pen type readers consist of a light source and a photo diode that are placed next to each other in the tip of a pen or wand. To read a barcode, you drag the tip of the pen across all the bars in a steady even motion. The photo diode measures the intensity of the light reflected back from the light source and generates a waveform that is used to measure the widths of the bars and spaces in the barcode. Dark bars in the barcode absorb light and white spaces reflect light so that the voltage waveform generated by the photo diode is an exact duplicate of the bar and space pattern in the barcode. This waveform is decoded by the scanner in a manner similar to the way Morse code dots and dashes are decoded.Laser scanners work the same way as pen type readers except that they use a laser beam as the light source and typically employ either a reciprocating mirror or a rotating prism to scan the laser beam back and forth across the barcode. Just the same as with the pen type reader, a photo diode is used to measure the intensity of the light reflected back from the barcode. In both pen readers and laser scanners, the light emitted by the reader is tuned to a specific frequency and the photo diode is designed to detect only this same frequency light.Pen type readers and laser scanners can be purchased with different resolutions to enable them to read barcodes of different sizes. The scanner resolution is measured by the size of the dot of light emitted by the reader. The dot of light should be equal to or slightly smaller than the narrowest element width (“X” dimension). If the dot is wider than the width of the narrowest bar or space, then the dot will overlap two or more bars at a time thereby causing the scanner to not be able to distinguish clear transitions between bars and spaces. If the dot is too small, then any spots or voids in the bars can be misinterpreted as light areas also making a barcode unreadable. The most commonly used X dimension is 13 mils (roughly 4 printer dots on a 300 DPI printer). Because this X dimension is so small, it is extremely important that the barcode is created with a program that creates high resolution graphics (like B-Coder Pro).
CCD (Charge Coupled Device) readers use an array of hundreds of tiny light sensors lined up in a row in the head of the reader. Each sensor can be thought of as a single photo diode that measures the intensity of the light immediately in front of it. Each individual light sensor in the CCD reader is extremely small and because there are hundreds of sensors lined up in a row, a voltage pattern identical to the pattern in a barcode is generated in the reader by sequentially measuring the voltages across each sensor in the row. The important difference between a CCD reader and a pen or laser scanner is that the CCD reader is measuring emitted ambient light from the barcode whereas pen or laser scanners are measuring reflected light of a specific frequency originating from the scanner itself.
The fourth and newest type of barcode reader currently available are camera based readers that use a small video camera to capture an image of a barcode. The reader then uses sophisticated digital image processing techniques to decode the barcode. Video cameras use the same CCD technology as in a CCD barcode reader except that instead of having a single row of sensors, a video camera has hundreds of rows of sensors arranged in a two dimensional array so that they can generate an image.The factors that make a barcode readable are: an adequate print contrast between the light and dark bars and having all bar and space dimensions within the tolerances for the symbology. It is also helpful to have sharp bar edges, few or no spots or voids, a smooth surface and clear margins or “quiet zones” at either end of the printed symbol.
All application programs support barcode reading as long as you have the right equipment. Barcode readers are available with three types of output – either “keyboard wedge” output, RS232 output or USB output. The barcode readers with keyboard wedge output plug directly into the keyboard port on your PC and they also provide a pigtail connector so that you can plug in your keyboard at the same time. If they connect to a USB port, then the barcode scanner will typically appear to Windows as a second keyboard, although they can also appear as an RS232 COM port in some cases. When you scan a barcode with the keyboard wedge barcode reader, the data goes into the computer just as if it were typed in on the keyboard. This makes it extremely easy to interface the barcode reader to any application that is written to accept keyboard data.The keyboard wedge interface is extremely simple, but it has a few drawbacks. If you swipe a barcode, the cursor has to be in the correct input field in the correct application otherwise you end up reading barcode data into whatever application has the focus. This can cause all sorts of potential problems as you can imagine. The keyboard output also is limited in that you cannot modify the data in any way before sending it into the program that is to receive the data. For example, if you needed to parse a barcode message into multiple pieces or remove some of a barcode message or add in a date or time stamp, you would not be able to with a normal keyboard wedge reader.The other possible output option is to get a barcode reader with an RS232 or “Serial” interface or a reader that connects to a USB port but appears to Windows as an RS232 port. With these types of barcode readers, you connect the reader to an available serial port or a USB port on the back of your PC. You would then use a program like our WinWedge software to take the data from the barcode reader and feed it to the application where you want the data to go. The disadvantage to this approach is that it is a little more complex, but you gain much more control over how and where your data ends up when you read a barcode.Our WinWedge product line is designed just for this purpose. WinWedge is an executable program that can pass serial data back and forth to other programs using either DDE (Dynamic Data Exchange) or by converting incoming serial data to keystrokes (it stuffs the keyboard buffer with the incoming serial data). With WinWedge, you can control exactly where the data goes in the target application and you can also perform all sorts of modifications on the data before it is sent to the application including parsing or translating the data as well as adding additional keystrokes or date and time stamps to the data.WinWedge is extremely easy to use and is designed to have you up and running sending and receiving serial data directly from within your application in just a few minutes. Because WinWedge can pass data using DDE, you can set your application up to ensure that the barcode data always goes where it is supposed to go and you can also have your application running in the background and still accept barcode input while you run some other program in the foreground. WinWedge is without question the most robust way to interface a barcode reader to a PC with the least amount of effort.
Last modified on November 3, 2026
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"TALtech Support","colors":{"primary":"#0764B9","light":"#0764B9","dark":"#0764B9"},"logo":{"light":"https://mintcdn.com/taltech-bdc45607/x77iB9KQeUuF5CKJ/images/brand/Logo.svg?fit=max\u0026auto=format\u0026n=x77iB9KQeUuF5CKJ\u0026q=85\u0026s=281267d1812ad821819e27a3fc4627a8","dark":"https://mintcdn.com/taltech-bdc45607/x77iB9KQeUuF5CKJ/images/brand/Logo.svg?fit=max\u0026auto=format\u0026n=x77iB9KQeUuF5CKJ\u0026q=85\u0026s=281267d1812ad821819e27a3fc4627a8","href":"/"},"favicon":"https://mintcdn.com/taltech-bdc45607/gxOKhYgaQPS-dWNs/images/TALFavicon.png?fit=max\u0026auto=format\u0026n=gxOKhYgaQPS-dWNs\u0026q=85\u0026s=9775c2f387b2a123e7c3f8e6bcdc7794","background":{"color":{"light":"#fafaf9","dark":"#0c0a09"}},"navbar":{"links":[{"href":"/contact","label":"Contact"},{"href":"https://taltech.com/ordering","label":"Ordering"},{"href":"/about","label":"About"}]},"footer":{"links":[{"header":"Software support","items":[{"label":"WinWedge","href":"/winwedge"},{"label":"TCP-Com","href":"/tcp-com"},{"label":"BC-Wedge","href":"/bc-wedge"},{"label":"HID-ScaleWedge","href":"/hid-scalewedge"},{"label":"B-Coder Pro","href":"/b-coder"},{"label":"Barcode ActiveX","href":"/barcode-activex"}]},{"header":"Resources","items":[{"label":"Trial downloads","href":"https://taltech.com/support-resources/free-trial-downloads"},{"label":"Software Manuals","href":"https://taltech.com/support-resources/software-manuals-brochures"},{"label":"Supplemental files","href":"https://taltech.com/support-resources/utilities-macros-and-supplemental-files"}]},{"header":"Ordering","items":[{"label":"Ordering options","href":"https://taltech.com/ordering"},{"label":"Online store","href":"https://store.taltech.com/"},{"label":"Purchase orders","href":"https://taltech.com/ordering"},{"label":"Guarantee","href":"https://taltech.com/ordering"},{"label":"Resellers","href":"https://taltech.com/ordering"}]},{"header":"About","items":[{"label":"Contact us","href":"/contact"},{"label":"About us","href":"https://taltech.com/about"},{"label":"Ordering","href":"https://taltech.com/ordering"},{"label":"Policies","href":"https://taltech.com/policies"},{"label":"Testimonials","href":"https://taltech.com/testimonials"},{"label":"Clients","href":"https://taltech.com/industries/clients"}]}]},"search":{"prompt":"Search articles…"},"seo":{"indexing":"all"},"fonts":{"family":"Public Sans"},"icons":{"library":"lucide"},"integrations":{"ga4":{"measurementId":"G-B9095B5PL0"}},"banner":{"content":"**Questions?** Call Sales at **(800) 722-6004** or Support at **(215) 496-0222**"},"contextual":{"options":["copy","chatgpt","view","claude","mcp"],"display":"header"},"thumbnails":{"fonts":{"family":"Public Sans"}},"interaction":{"drilldown":false},"metadata":{"timestamp":true},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Support home","icon":"house","href":"/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"taltech-bdc45607","hasAudioNarration":false,"actualSubdomain":"taltech-bdc45607","customDomains":["support.taltech.com"],"gitSource":{"type":"github","owner":"taltechnologies","repo":"support-site","deployBranch":"master","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aea58b5cbdb6f4019025293","collectionId":"2220a919-ff2c-46e9-941f-4c9a1fac66ab","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aea58b5cbdb6f4019025293"},"feedback":{"agentFeedback":true},"entitlements":{},"buildId":"6aee232d584f2a80bf024fd2","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"default","tag":"Support articles","count":166},{"language":"default","tag":"WinWedge","count":113},{"language":"default","tag":"B-Coder Pro","count":55},{"language":"default","tag":"Advanced articles","count":54},{"language":"default","tag":"Barcode ActiveX \u0026 DLLs","count":42},{"language":"default","tag":"Troubleshooting","count":32},{"language":"default","tag":"Other DDE macros and code examples","count":20},{"language":"default","tag":"TCP-Com","count":19},{"language":"default","tag":"Excel DDE macro examples","count":18},{"language":"default","tag":"Barcode types","count":17}],"searchSettings":{"maxResults":8,"showContentSnippets":true}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@taltech.com","showHelpButton":true}},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"h1{text-wrap:balance}#content :is(h2,h3,h4,h5,h6){font-weight:650;opacity:0.85}#content .tooltip:has(a[href]){text-decoration:none}#content a:where([href]):not(:where(.card,[href^=\"#\"])){color:var(--support-link-color)}:root{--support-link-color: #09569a;--support-border-color: rgb(0 0 0 / 12%);--support-panel-radius: 12px;--support-raised-fill: linear-gradient(180deg, #f5f6f7 0%, #fff 100%);--support-raised-shadow: 0 0 0 1px rgb(38 49 59 / 14%),\n 0 2px 4px rgb(23 31 38 / 3%),\n 0 8px 24px rgb(23 31 38 / 5%),\n inset 0 1px 0 rgb(255 255 255 / 90%)}.dark{--support-link-color: #84bdfb;--support-border-color: rgb(255 255 255 / 18%);--support-raised-fill: linear-gradient(180deg, #1e2226 0%, #272b2f 100%);--support-raised-shadow: 0 0 0 1px rgb(255 255 255 / 14%),\n 0 2px 4px rgb(0 0 0 / 12%),\n 0 8px 24px rgb(0 0 0 / 18%),\n inset 0 1px 0 rgb(255 255 255 / 5%)}#content :is(.support-start-links a,a.chevron-link){display:inline-block;max-width:100%;border:0;background-image:none;text-decoration:none;font-weight:500}#content :is(.support-start-links a,a.chevron-link)::after{content:\"\\00a0›\";white-space:nowrap;font-size:1.125em;line-height:0;font-weight:400;opacity:0.8}#content :is(.support-start-links a,a.chevron-link):hover{opacity:0.8}#content :is(.support-start-links a,a.chevron-link):focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}.card .not-prose{font-size:1.125rem}.card .prose{margin-top:0.5rem}.article-byline{font-size:0.875em;margin-top:2.5rem}#pagination{display:none}:is(#mobile-nav,#sidebar-content) a[target=\"_blank\"]>div>div:has(>svg){flex:0 0 auto}[data-component-part=\"tooltip-content\"]{max-width:min(20rem, calc(100vw - 2rem))}[data-component-part=\"tooltip-tip\"]{color:#000;font-size:0.875rem;line-height:1.5}.dark [data-component-part=\"tooltip-tip\"]{color:#fff}#page-context-menu button[aria-haspopup=\"menu\"]>svg{width:0.875rem;height:0.875rem;color:#000}.dark #page-context-menu button[aria-haspopup=\"menu\"]>svg{color:#fff}#navbar{--nav-control-fill: rgb(0 0 0 / 3%);--nav-control-hover-fill: rgb(0 0 0 / 10%);--nav-search-outline: rgb(0 0 0 / 14%)}.dark #navbar{--nav-control-fill: rgb(255 255 255 / 3%);--nav-control-hover-fill: rgb(255 255 255 / 10%);--nav-search-outline: rgb(255 255 255 / 14%)}#navbar [data-component-part=\"products-selector-trigger\"]{color:#000;height:36px;padding:8px 14px;background-color:var(--nav-control-fill);border-radius:12px;font-weight:500}#navbar [data-component-part=\"products-selector-trigger\"] svg{color:inherit}.dark #navbar [data-component-part=\"products-selector-trigger\"]{color:#fff}#navbar [data-component-part=\"products-selector-trigger\"]:is(:hover,[aria-expanded=\"true\"]){background-color:var(--nav-control-hover-fill)!important}.accordion-group,details.accordion{border-color:var(--support-border-color)}#search-bar-entry,#search-bar-entry-mobile{min-height:38px;color:#000;background-color:var(--nav-control-fill);border:1px solid var(--nav-search-outline);border-radius:12px;font-weight:500}.article-search-trigger{display:flex;align-items:center;gap:0.75rem;width:100%;margin-bottom:1.5rem;padding:0.75rem 1rem;min-height:44px;color:#26313b;background:var(--support-raised-fill);border:0;border-radius:var(--support-panel-radius);box-shadow:var(--support-raised-shadow);font-size:1rem;font-weight:600;text-align:left;cursor:pointer;transition:box-shadow 160ms ease}.article-search-trigger:hover{box-shadow:0 0 0 1px rgb(38 49 59 / 22%),\n 0 2px 5px rgb(23 31 38 / 4%),\n 0 10px 28px rgb(23 31 38 / 7%),\n inset 0 1px 0 rgb(255 255 255 / 90%)}.article-search-trigger svg{flex-shrink:0}#search-bar-entry-mobile{min-width:38px}#search-bar-entry svg{color:inherit}#search-bar-entry-mobile svg{background-color:currentColor}#search-bar-entry:hover,#search-bar-entry-mobile:hover{background-color:var(--nav-control-hover-fill)}#search-bar-entry:focus-visible,#search-bar-entry-mobile:focus-visible,.article-search-trigger:focus-visible{outline:2px solid #0764b9;outline-offset:3px}.dark #search-bar-entry,.dark #search-bar-entry-mobile{color:#fff;filter:none}.dark .article-search-trigger{color:#f1f4f7}.dark .article-search-trigger:hover{box-shadow:0 0 0 1px rgb(255 255 255 / 22%),\n 0 2px 5px rgb(0 0 0 / 16%),\n 0 10px 28px rgb(0 0 0 / 24%),\n inset 0 1px 0 rgb(255 255 255 / 6%)}.dark #search-bar-entry:focus-visible,.dark #search-bar-entry-mobile:focus-visible,.dark .article-search-trigger:focus-visible{outline-color:#84bdfb}#content-area:has(.product-landing){position:relative}#content-area:has(.product-landing) #header{padding-top:3.5rem}#content-area:has(.product-landing) #header>.prose{margin-top:1rem;text-wrap:balance}#content-area:has(.product-landing) #page-title{max-width:30ch;font-size:clamp(2rem, 3vw, 2.5rem);line-height:1.15;letter-spacing:-0.025em}#content:has(.product-landing){position:static;margin-block-start:2.5rem;margin-block-end:0}#body-content:has(.product-landing) #footer>div{padding-block:4rem}#content .support-home-breadcrumb{position:absolute;display:flex;align-items:center;gap:0.625rem;top:0;inset-inline-start:0;font-size:0.875rem;font-weight:400;text-decoration:none;color:inherit}#content .support-home-breadcrumb a{border:0;background:none;text-decoration:none;font-weight:400;color:inherit}#content .support-home-breadcrumb a:hover{text-decoration:underline}#content .support-home-breadcrumb a::after{display:none}#content .support-home-breadcrumb [aria-hidden]{opacity:0.45}#content .support-home-breadcrumb [aria-current]{color:rgb(var(--gray-600))}.dark #content .support-home-breadcrumb [aria-current]{color:rgb(var(--gray-300))}#body-content:has(.product-landing,.support-home-landing) #sidebar-content{display:none}#body-content:has(.product-landing,.support-home-landing) #content-container{max-width:64rem;padding-inline:1.5rem}#content-area:has(.product-landing) #header::before{content:\"\";display:block;height:88px;margin-bottom:1.5rem;background:var(--support-product-artwork);filter:drop-shadow(0 1px 2px rgb(0 0 0 / 7%)) drop-shadow(0 3px 4px rgb(0 0 0 / 4%))}#content-area:has(.product-landing[data-product=\"winwedge\"]){--support-product-artwork:\n url(\"/images/product-icons/WinWedge.svg\") left bottom / 88px 88px no-repeat,\n url(\"/images/product-icons/WinWedge%20Pro.svg\") 104px bottom / 88px 88px no-repeat,\n url(\"/images/product-icons/TCP-Wedge.svg\") 208px bottom / 56px 56px no-repeat}#content-area:has(.product-landing[data-product=\"tcp-com\"]){--support-product-artwork: url(\"/images/product-icons/TCP-Com.svg\") left bottom / 88px 88px no-repeat}#content-area:has(.product-landing[data-product=\"bc-wedge\"]){--support-product-artwork: url(\"/images/product-icons/BC-Wedge.svg\") left bottom / 88px 88px no-repeat}#content-area:has(.product-landing[data-product=\"hid-scalewedge\"]){--support-product-artwork: url(\"/images/product-icons/HID-ScaleWedge.svg\") left bottom / 88px 88px no-repeat}#content-area:has(.product-landing[data-product=\"b-coder\"]){--support-product-artwork: url(\"/images/product-icons/B-Coder.svg\") left bottom / 88px 88px no-repeat}#content-area:has(.product-landing[data-product=\"barcode-activex\"]){--support-product-artwork: url(\"/images/product-icons/Barcode%20ActiveX.svg\") left bottom / 88px 88px no-repeat}.product-landing{display:none}.support-content-band{--support-band-fill: color-mix(in srgb, rgb(var(--background-light)) 98%, black);margin-top:0;padding-block:2.5rem 4rem;background:var(--support-band-fill);box-shadow:0 0 0 100vmax var(--support-band-fill);clip-path:inset(0 -100vmax)}.dark .support-content-band{--support-band-fill: color-mix(in srgb, rgb(var(--background-dark)) 98%, white)}#content .support-start-block{margin:0 0 3rem;display:grid;grid-template-columns:repeat(auto-fit, minmax(min(100%, 15rem), 1fr));gap:2rem;width:100%;max-width:100%;padding:1.5rem;border:0;border-radius:var(--support-panel-radius);background:#fff;box-shadow:var(--support-raised-shadow)}.dark #content .support-start-block{background:rgb(var(--background-dark))}#content .support-content-band>h2{margin:0 0 1rem;font-size:1.5rem;letter-spacing:-0.02em;line-height:1.3}#content .support-content-band>.accordion-group+h3{margin:2.5rem 0 1rem;font-size:1.25rem;letter-spacing:-0.015em;line-height:1.4}#content .support-start-block h3{margin:0 0 0.75rem;font-size:1.125rem;line-height:1.4}#content .support-start-links{display:grid;grid-template-columns:minmax(0, 1fr);gap:0.375rem;line-height:1.5;max-width:40rem;margin:0;padding:0;list-style:none}#content .support-start-links>p{margin:0;padding:0}#content .support-section-description{margin:0 0 1.5rem}#content .support-content-band>.video-collection{margin:0 0 3rem}#content .support-content-band>.article-search-trigger{margin:0 0 1.5rem}#content .support-content-band>.accordion-group{margin-block:0}#content .support-content-band>.accordion-group+.support-contact-panel{margin-block-start:1.5rem}@media (max-width: 639px){.support-content-band{padding-block:2.5rem}#content:has(.product-landing){margin-block-start:2.5rem}#body-content:has(.product-landing) #footer>div{padding-block:2.5rem}#content .support-start-block,#content .support-content-band>.video-collection{margin-block-end:2.5rem}}.support-contact-panel{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);align-items:center;gap:1.25rem 2rem;margin-top:2rem;padding:1.5rem;border:1px solid var(--support-border-color);border-radius:var(--support-panel-radius);background:rgb(var(--background-light))}.dark .support-contact-panel{background:rgb(var(--background-dark))}#content .support-contact-panel h2{margin:0 0 0.25rem;font-size:1.125rem;line-height:1.4}.support-contact-availability{display:grid;gap:0.25rem;font-size:0.875rem;line-height:1.5}#content .philadelphia-time{font-variant-numeric:tabular-nums}.support-contact-availability .philadelphia-time{color:rgb(var(--gray-600))}.dark .support-contact-availability .philadelphia-time{color:rgb(var(--gray-400))}@media (max-width: 639px){.support-contact-panel{grid-template-columns:minmax(0, 1fr)}}.video-collection{--video-caption-background: #343a40;--video-border: var(--support-border-color);--video-fill: rgb(0 0 0 / 3%);--video-hover: rgb(0 0 0 / 6%);--video-selected: rgb(var(--primary) / 8%);--video-link: rgb(var(--primary));--video-muted: rgb(var(--gray-600));--video-background: rgb(var(--background-light));--video-color-scheme: light;--video-scrollbar: rgb(var(--gray-400));margin:1.25rem 0 2rem}.dark .video-collection{--video-caption-background: #1c2024;--video-fill: rgb(255 255 255 / 3%);--video-hover: rgb(255 255 255 / 7%);--video-selected: rgb(var(--primary) / 18%);--video-link: color-mix(in srgb, rgb(var(--primary)) 55%, rgb(var(--gray-100)));--video-muted: rgb(var(--gray-300));--video-background: rgb(var(--background-dark));--video-color-scheme: dark;--video-scrollbar: rgb(var(--gray-600))}.video-collection-layout{display:grid;grid-template-columns:minmax(15rem, 1fr) minmax(0, 2fr);overflow:hidden;border:1px solid var(--video-border);border-radius:var(--support-panel-radius)}.video-collection-list{display:flex;flex-direction:column;min-height:0;contain:size;background:var(--video-fill);border-right:1px solid var(--video-border)}.video-collection-scroll{min-height:0;overflow-y:auto;mask-image:linear-gradient(to bottom,\n transparent,\n black min(40px, var(--video-overflow-start, 0px)),\n black calc(100% - min(40px, var(--video-overflow-end, 0px))),\n transparent);mask-repeat:no-repeat;scrollbar-width:thin;color-scheme:var(--video-color-scheme);scrollbar-color:var(--video-scrollbar) var(--video-background)}.video-collection-scroll:has(:focus-visible){mask-image:none}.video-collection-list-header{flex-shrink:0;position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;padding:0.75rem 0.875rem;border-bottom:1px solid var(--video-border);background:var(--video-background);color:var(--video-muted);font-size:0.8125rem;font-weight:600}.video-collection-item{flex-shrink:0;display:flex;align-items:center;gap:0.75rem;width:100%;padding:0.875rem;border-bottom:1px solid var(--video-border);text-align:left;color:inherit;cursor:pointer;line-height:1.4}.video-collection-item:last-child{border-bottom:0}.video-collection-item:hover{background:var(--video-hover)}.video-collection-item[aria-pressed=\"true\"]{background:var(--video-selected)}.video-collection-item:focus-visible{position:relative;outline:2px solid var(--video-link);outline-offset:-3px;border-radius:4px}.video-collection-thumbnail{position:relative;display:grid;place-items:center;width:5rem;aspect-ratio:16 / 9;flex-shrink:0;overflow:hidden;border-radius:6px;background:#1c1917;color:#fff}.video-collection-thumbnail img{width:100%;height:100%;object-fit:cover}.video-collection-duration{position:absolute;right:3px;bottom:3px;padding:1px 4px;border-radius:3px;background:rgb(0 0 0 / 80%);color:#fff;font-size:0.75rem;line-height:1.4;font-variant-numeric:tabular-nums}.video-collection-item-title{flex:1;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:0.875rem;font-weight:500}.video-collection-selected{flex-shrink:0;color:var(--video-muted);font-size:0.625rem;visibility:hidden}.video-collection-item[aria-pressed=\"true\"] .video-collection-selected{visibility:visible}.video-collection-current{min-width:0;background:var(--video-caption-background)}.video-collection-player{display:block;width:100%;aspect-ratio:16 / 9;border:0;background:#000}.video-collection-caption{--support-link-color: #a8d2ff;padding:1rem 1.125rem;color:#f5f7fa}.video-collection-title{margin:0;font-size:1rem;font-weight:600;line-height:1.5}.video-collection-article,.video-collection-all{font-size:0.8125rem;line-height:1.5}.video-collection-article{margin-top:0.5rem}.video-collection-all{margin-top:0.875rem}@media (max-width: 767px){.video-collection-layout{grid-template-columns:minmax(0, 1fr)}.video-collection-list{contain:none;max-height:18rem;border-right:0;border-top:1px solid var(--video-border)}.video-collection-item{padding:0.75rem}.video-collection-thumbnail{width:5.5rem}.video-collection-selected{display:none}}#content a.support-product-link{color:inherit;border:0;text-decoration:none}#content a.support-product-link>span[aria-hidden]{filter:drop-shadow(0 1px 2px rgb(0 0 0 / 7%)) drop-shadow(0 3px 4px rgb(0 0 0 / 4%))}#content a.support-product-link:hover{color:var(--support-link-color)}#content a.support-product-link:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:4px}#content .support-product-subtitle{margin:0.125rem 0 0;line-height:1.35;color:rgb(var(--gray-600))}.dark #content .support-product-subtitle{color:rgb(var(--gray-300))}#content:has(.support-home-landing){margin-block-end:0}#content:has(.support-home-landing)>.support-content-band{margin-block-start:2.5rem}#content:has(.support-home-landing) .support-content-band>h2{margin-block-start:3rem}#body-content:has(.support-home-landing) #footer>div{padding-block:4rem}#content:has(.support-home-landing) .support-content-band>h2:first-child{margin-block-start:0}"}],"page":{"pagePath":"b-coder/how-barcode-reader-works","slug":"/b-coder/how-barcode-reader-works","pageMetadata":{"title":"How a barcode reader works","description":"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.","source_url":"https://www.taltech.com/support/how_barcode_reader_works/","products":["B-Coder"],"keywords":["how barcode scanners read data","laser vs CCD camera barcode reader","barcode scanner resolution X dimension","keyboard wedge vs serial scanner","WinWedge barcode scanner interface"],"href":"/b-coder/how-barcode-reader-works"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,p:`p`,..._provideComponents(),...props.components},{Heading,OptimizedImage}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`There are currently four different types of barcode scanners available. Each uses a slightly different technology for reading and decoding a barcode. There are pen type readers (barcode wands), laser scanners, CCD readers, and camera based readers.`}),`\n`,_jsx(Heading,{level:`2`,id:`pen-type-readers-and-laser-scanners`,children:`Pen type readers and laser scanners`}),`\n`,_jsx(_components.p,{children:`Pen type readers consist of a light source and a photo diode that are placed next to each other in the tip of a pen or wand. To read a barcode, you drag the tip of the pen across all the bars in a steady even motion. The photo diode measures the intensity of the light reflected back from the light source and generates a waveform that is used to measure the widths of the bars and spaces in the barcode. Dark bars in the barcode absorb light and white spaces reflect light so that the voltage waveform generated by the photo diode is an exact duplicate of the bar and space pattern in the barcode. This waveform is decoded by the scanner in a manner similar to the way Morse code dots and dashes are decoded.`}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/taltech-bdc45607/90dE9DPyCdPJ5zuC/images/barcodAN.gif?s=46f6a2235130d30cc2b5df4731eef441`,alt:``,\"data-og-width\":`378`,width:`378`,\"data-og-height\":`124`,height:`124`,\"data-path\":`images/barcodAN.gif`,\"data-optimize\":`true`,\"data-opv\":`3`}),`\n`,_jsx(_components.p,{children:`Laser scanners work the same way as pen type readers except that they use a laser beam as the light source and typically employ either a reciprocating mirror or a rotating prism to scan the laser beam back and forth across the barcode. Just the same as with the pen type reader, a photo diode is used to measure the intensity of the light reflected back from the barcode. In both pen readers and laser scanners, the light emitted by the reader is tuned to a specific frequency and the photo diode is designed to detect only this same frequency light.`}),`\n`,_jsx(_components.p,{children:`Pen type readers and laser scanners can be purchased with different resolutions to enable them to read barcodes of different sizes. The scanner resolution is measured by the size of the dot of light emitted by the reader. The dot of light should be equal to or slightly smaller than the narrowest element width (“X” dimension). If the dot is wider than the width of the narrowest bar or space, then the dot will overlap two or more bars at a time thereby causing the scanner to not be able to distinguish clear transitions between bars and spaces. If the dot is too small, then any spots or voids in the bars can be misinterpreted as light areas also making a barcode unreadable. The most commonly used X dimension is 13 mils (roughly 4 printer dots on a 300 DPI printer). Because this X dimension is so small, it is extremely important that the barcode is created with a program that creates high resolution graphics (like B-Coder Pro).`}),`\n`,_jsx(Heading,{level:`2`,id:`ccd-readers`,children:`CCD readers`}),`\n`,_jsx(_components.p,{children:`CCD (Charge Coupled Device) readers use an array of hundreds of tiny light sensors lined up in a row in the head of the reader. Each sensor can be thought of as a single photo diode that measures the intensity of the light immediately in front of it. Each individual light sensor in the CCD reader is extremely small and because there are hundreds of sensors lined up in a row, a voltage pattern identical to the pattern in a barcode is generated in the reader by sequentially measuring the voltages across each sensor in the row. The important difference between a CCD reader and a pen or laser scanner is that the CCD reader is measuring emitted ambient light from the barcode whereas pen or laser scanners are measuring reflected light of a specific frequency originating from the scanner itself.`}),`\n`,_jsx(Heading,{level:`2`,id:`camera-based-readers`,children:`Camera based readers`}),`\n`,_jsx(_components.p,{children:`The fourth and newest type of barcode reader currently available are camera based readers that use a small video camera to capture an image of a barcode. The reader then uses sophisticated digital image processing techniques to decode the barcode. Video cameras use the same CCD technology as in a CCD barcode reader except that instead of having a single row of sensors, a video camera has hundreds of rows of sensors arranged in a two dimensional array so that they can generate an image.`}),`\n`,_jsx(_components.p,{children:`The factors that make a barcode readable are: an adequate print contrast between the light and dark bars and having all bar and space dimensions within the tolerances for the symbology. It is also helpful to have sharp bar edges, few or no spots or voids, a smooth surface and clear margins or “quiet zones” at either end of the printed symbol.`}),`\n`,_jsx(Heading,{level:`2`,id:`interfacing-a-barcode-reader-to-a-pc`,children:`Interfacing a barcode reader to a PC`}),`\n`,_jsx(_components.p,{children:`All application programs support barcode reading as long as you have the right equipment. Barcode readers are available with three types of output – either “keyboard wedge” output, RS232 output or USB output. The barcode readers with keyboard wedge output plug directly into the keyboard port on your PC and they also provide a pigtail connector so that you can plug in your keyboard at the same time. If they connect to a USB port, then the barcode scanner will typically appear to Windows as a second keyboard, although they can also appear as an RS232 COM port in some cases. When you scan a barcode with the keyboard wedge barcode reader, the data goes into the computer just as if it were typed in on the keyboard. This makes it extremely easy to interface the barcode reader to any application that is written to accept keyboard data.`}),`\n`,_jsx(_components.p,{children:`The keyboard wedge interface is extremely simple, but it has a few drawbacks. If you swipe a barcode, the cursor has to be in the correct input field in the correct application otherwise you end up reading barcode data into whatever application has the focus. This can cause all sorts of potential problems as you can imagine. The keyboard output also is limited in that you cannot modify the data in any way before sending it into the program that is to receive the data. For example, if you needed to parse a barcode message into multiple pieces or remove some of a barcode message or add in a date or time stamp, you would not be able to with a normal keyboard wedge reader.`}),`\n`,_jsxs(_components.p,{children:[`The other possible output option is to get a barcode reader with an RS232 or “Serial” interface or a reader that connects to a USB port but appears to Windows as an RS232 port. With these types of barcode readers, you connect the reader to an available serial port or a USB port on the back of your PC. You would then use a program like our `,_jsx(_components.a,{href:`https://www.taltech.com/winwedge`,children:`WinWedge`}),` software to take the data from the barcode reader and feed it to the application where you want the data to go. The disadvantage to this approach is that it is a little more complex, but you gain much more control over how and where your data ends up when you read a barcode.`]}),`\n`,_jsx(_components.p,{children:`Our WinWedge\\xA0product line is designed just for this purpose. WinWedge is an executable program that can pass serial data back and forth to other programs using either DDE (Dynamic Data Exchange) or by converting incoming serial data to keystrokes (it stuffs the keyboard buffer with the incoming serial data). With WinWedge, you can control exactly where the data goes in the target application and you can also perform all sorts of modifications on the data before it is sent to the application including parsing or translating the data as well as adding additional keystrokes or date and time stamps to the data.`}),`\n`,_jsx(_components.p,{children:`WinWedge is extremely easy to use and is designed to have you up and running sending and receiving serial data directly from within your application in just a few minutes. Because WinWedge can pass data using DDE, you can set your application up to ensure that the barcode data always goes where it is supposed to go and you can also have your application running in the background and still accept barcode input while you run some other program in the foreground. WinWedge is without question the most robust way to interface a barcode reader to a PC with the least amount of effort.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"How a barcode reader works","description":"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.","source_url":"https://www.taltech.com/support/how_barcode_reader_works/","products":["B-Coder"],"keywords":["how barcode scanners read data","laser vs CCD camera barcode reader","barcode scanner resolution X dimension","keyboard wedge vs serial scanner","WinWedge barcode scanner interface"],"href":"/b-coder/how-barcode-reader-works"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Pen type readers and laser scanners","slug":"pen-type-readers-and-laser-scanners","depth":2,"children":[]},{"title":"CCD readers","slug":"ccd-readers","depth":2,"children":[]},{"title":"Camera based readers","slug":"camera-based-readers","depth":2,"children":[]},{"title":"Interfacing a barcode reader to a PC","slug":"interfacing-a-barcode-reader-to-a-pc","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/taltech-bdc45607/eec41a6a835842e1/search.js"],"subdomain":"taltech-bdc45607","siteName":"TALtech Support","title":"How a barcode reader works - TALtech Support","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-03T21:57:25.109Z","gitLastModified":"2026-11-03T21:57:05.000Z","originalFileLocation":"b-coder/how-barcode-reader-works.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.\">\u003cmeta data-mint-head name=\"application-name\" content=\"TALtech Support\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"How a barcode reader works - TALtech Support\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"TALtech Support\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://support.taltech.com/b-coder/how-barcode-reader-works\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://taltech-bdc45607.mintlify.site/_mintlify/api/og/v2?division=Barcode+concepts\u0026amp;title=How+a+barcode+reader+works\u0026amp;description=Learn+how+the+main+types+of+barcode+readers+work+and+how+they+send+scanned+data+to+your+PC%2C+so+you+can+choose+the+right+setup.\u0026amp;theme=f8e61b9561bcdbc21b6abc28\u0026amp;signature=8e0320f13e8ca8e41bd1154910369a22c47f62a5c3cf975fed63f8247e2d0952\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"How a barcode reader works - TALtech Support\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://taltech-bdc45607.mintlify.site/_mintlify/api/og/v2?division=Barcode+concepts\u0026amp;title=How+a+barcode+reader+works\u0026amp;description=Learn+how+the+main+types+of+barcode+readers+work+and+how+they+send+scanned+data+to+your+PC%2C+so+you+can+choose+the+right+setup.\u0026amp;theme=f8e61b9561bcdbc21b6abc28\u0026amp;signature=8e0320f13e8ca8e41bd1154910369a22c47f62a5c3cf975fed63f8247e2d0952\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/taltech-bdc45607/YFqszPMCzxP0Sxv6/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"TALtech Support\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0764B9\">\u003clink data-mint-head rel=\"canonical\" href=\"https://support.taltech.com/b-coder/how-barcode-reader-works\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/b-coder/how-barcode-reader-works.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://support.taltech.com/#organization\",\"name\":\"TALtech Support\",\"url\":\"https://support.taltech.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/taltech-bdc45607/x77iB9KQeUuF5CKJ/images/brand/Logo.svg?fit=max\u0026auto=format\u0026n=x77iB9KQeUuF5CKJ\u0026q=85\u0026s=281267d1812ad821819e27a3fc4627a8\"}},{\"@type\":\"WebSite\",\"@id\":\"https://support.taltech.com#website\",\"name\":\"TALtech Support\",\"url\":\"https://support.taltech.com\",\"publisher\":{\"@id\":\"https://support.taltech.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://support.taltech.com/b-coder/how-barcode-reader-works#webpage\",\"url\":\"https://support.taltech.com/b-coder/how-barcode-reader-works\",\"name\":\"How a barcode reader works\",\"description\":\"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.\",\"dateModified\":\"2026-11-03T21:57:05.000Z\",\"isPartOf\":{\"@id\":\"https://support.taltech.com#website\"},\"breadcrumb\":{\"@id\":\"https://support.taltech.com/b-coder/how-barcode-reader-works#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://support.taltech.com/b-coder/how-barcode-reader-works#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Support articles\",\"item\":\"https://support.taltech.com/b-coder/b-coder-pro-introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Barcode concepts\",\"item\":\"https://support.taltech.com/b-coder/barcode-basics\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How a barcode reader works\",\"item\":\"https://support.taltech.com/b-coder/how-barcode-reader-works\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://support.taltech.com/b-coder/how-barcode-reader-works#article\",\"headline\":\"How a barcode reader works\",\"name\":\"How a barcode reader works\",\"description\":\"Learn how the main types of barcode readers work and how they send scanned data to your PC, so you can choose the right setup.\",\"url\":\"https://support.taltech.com/b-coder/how-barcode-reader-works\",\"mainEntityOfPage\":{\"@id\":\"https://support.taltech.com/b-coder/how-barcode-reader-works#webpage\"},\"dateModified\":\"2026-11-03T21:57:05.000Z\",\"keywords\":\"how barcode scanners read data, laser vs CCD camera barcode reader, barcode scanner resolution X dimension, keyboard wedge vs serial scanner, WinWedge barcode scanner interface\",\"publisher\":{\"@id\":\"https://support.taltech.com/#organization\"},\"isPartOf\":{\"@id\":\"https://support.taltech.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"TALtech Support\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"TALtech Support","nav":{"global":{"anchors":[{"anchor":"Support home","icon":"house","href":"/"}]},"products":[{"product":"Support home","icon":"life-buoy","color":{"light":"#0F52BA","dark":"#3271D0"},"pages":[{"title":"Support home","href":""}]},{"product":"WinWedge","icon":"https://mintlify.s3.us-west-1.amazonaws.com/taltech-bdc45607/images/product-icons/WinWedge.svg","color":{"light":"#a38915","dark":"#a38915"},"pages":[{"title":"WinWedge","href":"/winwedge"}]},{"product":"HID-ScaleWedge","icon":"https://mintlify.s3.us-west-1.amazonaws.com/taltech-bdc45607/images/product-icons/HID-ScaleWedge.svg","pages":[{"title":"HID-ScaleWedge","href":"/hid-scalewedge"}]},{"product":"BC-Wedge","icon":"https://mintlify.s3.us-west-1.amazonaws.com/taltech-bdc45607/images/product-icons/BC-Wedge.svg","pages":[{"title":"BC-Wedge","href":"/bc-wedge"}]},{"product":"TCP-Com","icon":"https://mintlify.s3.us-west-1.amazonaws.com/taltech-bdc45607/images/product-icons/TCP-Com.svg","pages":[{"title":"TCP-Com","href":"/tcp-com"}]},{"product":"B-Coder Pro","icon":"https://mintlify.s3.us-west-1.amazonaws.com/taltech-bdc45607/images/product-icons/B-Coder.svg","pages":[{"title":"B-Coder Pro support","sidebarTitle":"B-Coder Pro support home","mode":"center","href":"/b-coder"},{"group":"Support articles","pages":[{"group":"Getting started","expanded":false,"pages":[{"title":"B-Coder Pro getting started video","sidebarTitle":"B-Coder Pro introduction","href":"/b-coder/b-coder-pro-introduction"},{"title":"B-Coder Pro video tutorials","sidebarTitle":"Video tutorials","href":"/b-coder/video-tutorials"},{"title":"What is B-Coder Pro?","href":"/b-coder/what-is-b-coder"}]},{"group":"Barcode concepts","expanded":false,"pages":[{"title":"Barcode basics","href":"/b-coder/barcode-basics"},{"title":"Barcode symbologies","href":"/b-coder/barcode-symbologies"},{"title":"Raster vs vector images and how they relate to barcodes","href":"/b-coder/raster-vs-vector-images-and-how-they-relate-to-barcodes"},{"title":"Print perfect barcodes to any printer","href":"/b-coder/print-perfect-barcodes-to-any-printer"},{"title":"GTIN – Global Trade Item Numbers","description":"Learn what GTIN (Global Trade Item Number) means for your UPC and EAN barcodes, and why the barcodes you print today still work.","href":"/b-coder/gtin"},{"title":"How a barcode reader works","href":"/b-coder/how-barcode-reader-works"},{"title":"Printing barcodes on a dot matrix printer","description":"Print barcodes that scan reliably on a dot matrix printer by choosing B-Coder Pro bar width settings that match the printer.","href":"/b-coder/printing-barcodes-on-a-dot-matrix-printer"},{"title":"Reading barcodes directly from a computer screen","href":"/b-coder/reading-barcodes-directly-from-computer-screen"},{"title":"Which barcode software is right for me?","href":"/b-coder/which-barcode-software"}]},{"group":"Barcode types","expanded":false,"pages":[{"title":"About Aztec Code barcodes","href":"/b-coder/about-aztec-code-barcodes"},{"title":"About BPO (British Post Office) barcodes","href":"/b-coder/about-bpo-british-post-office-barcodes"},{"title":"About Codabar barcodes","href":"/b-coder/about-codabar-barcodes"},{"title":"About Code 128 barcodes","href":"/b-coder/about-code-128-barcodes"},{"title":"About Code 39 barcodes","href":"/b-coder/about-code-39-barcodes"},{"title":"About Code 93 barcodes","href":"/b-coder/about-code-93-barcodes"},{"title":"About Data Matrix barcodes","href":"/b-coder/about-data-matrix-barcodes"},{"title":"About Discrete 2 of 5 barcodes","href":"/b-coder/about-discrete-2-of-5-barcodes"},{"title":"About EAN (International Article Number) barcodes","href":"/b-coder/about-ean-international-article-number-barcodes"},{"title":"About GS1-128 barcodes","href":"/b-coder/about-gs1-128-barcodes"},{"title":"About GS1 DataBar barcodes","href":"/b-coder/about-gs1-databar-barcodes"},{"title":"About Interleaved 2 of 5 barcodes","href":"/b-coder/about-interleaved-2-of-5-barcodes"},{"title":"About MaxiCode barcodes","href":"/b-coder/about-maxicode-barcodes"},{"title":"About MSI-Plessey barcodes","href":"/b-coder/about-msi-plessey-barcodes"},{"title":"About PDF417 barcodes","href":"/b-coder/about-pdf-417-barcodes"},{"title":"About POSTNET / USPS OneCode barcodes","href":"/b-coder/about-postnet-usps-onecode-barcodes"},{"title":"About UPC (Universal Product Code) barcodes","href":"/b-coder/about-upc-universal-product-code-barcodes"}]},{"group":"Integrations","boost":2,"expanded":false,"pages":[{"title":"Pasting barcodes in Microsoft Word, Excel and other programs","href":"/b-coder/pasting-barcodes-in-microsoft-office-and-other-programs"},{"title":"Convert a cell’s value into a barcode","href":"/b-coder/convert-a-cells-value-into-a-barcode"},{"title":"Add barcodes to Word labels or a mail merge document","href":"/b-coder/add-barcodes-to-word-labels-or-a-mail-merge-document"},{"title":"Placing barcodes into Adobe Illustrator as WMF vector graphics","href":"/b-coder/placing-barcodes-into-adobe-illustrator-as-wmf-vector-graphics"},{"title":"Saving barcodes for use on a Mac","href":"/b-coder/saving-barcodes-for-use-on-a-mac"}]},{"group":"Macros, add-ins, and DDE","boost":2,"expanded":false,"pages":[{"title":"B-Coder Pro DDE commands","href":"/b-coder/b-coder-dde-commands"},{"title":"Convert selected text to a barcode (B-Coder Pro and Word)","href":"/b-coder/convert-selected-text-to-a-barcode-b-coder-and-word"},{"title":"Insert barcodes into the header or footer of a document","href":"/b-coder/insert-barcodes-into-the-header-or-footer-of-a-document"},{"title":"Macros and code samples for B-Coder Pro","href":"/b-coder/macros-and-code-samples-for-b-coder"},{"title":"Merge Barcode (B-Coder Pro and Word)","href":"/b-coder/merge-barcode-b-coder-and-word"},{"title":"“Merge Barcode labels” B-Coder Pro Word macro","href":"/b-coder/merge-barcode-labels-b-coder-word-2007-macro"},{"title":"Microsoft Word add-ins for B-Coder Pro","href":"/b-coder/microsoft-word-add-ins-for-b-coder"},{"title":"Prompt for a barcode message in WordPerfect","href":"/b-coder/prompt-for-a-barcode-in-wordperfect"},{"title":"“Text/prompt for barcodes” B-Coder Pro Word macros","href":"/b-coder/text-prompt-for-barcodes-b-coder-word-2007-macros"},{"title":"Using the built-in POSTNET barcoding features of Microsoft Word","href":"/b-coder/using-the-built-in-postnet-barcoding-features-of-microsoft-word"},{"title":"Using Word’s mail merge feature with B-Coder Pro","href":"/b-coder/using-words-mail-merge-feature-with-b-coder"},{"title":"Word macro installation for B-Coder Pro","href":"/b-coder/word-2007-macro-installation-for-b-coder-pro"}]},{"group":"Troubleshooting","boost":2,"expanded":false,"pages":[{"title":"Issue pasting barcodes into Excel","href":"/b-coder/issue-pasting-barcodes-into-excel"},{"title":"Pasting Windows metafiles (barcodes) into Office 2010","href":"/b-coder/issue-pasting-barcodes-into-word-2010"},{"title":"Issue running MakeBarcodeLabels macro with small labels","href":"/b-coder/issue-running-makebarcodelabels-macro-with-small-labels"},{"title":"Poor quality barcodes in raster-only editing programs (Photoshop, Paint)","href":"/b-coder/poor-quality-barcodes-in-raster-only-editing-programs-photoshop-paint"}]}]},{"group":"Legacy articles","boost":0.3,"expanded":false,"pages":[{"title":"Issue pasting barcodes into Corel Draw 4.0","href":"/b-coder/issue-pasting-barcodes-into-corel-draw-4-0"},{"title":"Issue pasting barcodes into WordPerfect 6","href":"/b-coder/issue-pasting-barcodes-into-wordperfect-6"},{"title":"Error opening B-Coder Lite 3.0 barcodes saved as .ai (Adobe Illustrator)","href":"/b-coder/error-opening-b-coder-lite-3-0-barcodes-saved-as-ai-adobe-illustrator"}]},{"group":"Resources","boost":0.5,"expanded":false,"pages":[{"title":"B-Coder Pro product page","url":"https://taltech.com/bcoder","href":"/external/b-coder-product"},{"title":"Trial downloads","url":"https://taltech.com/support-resources/free-trial-downloads","href":"/external/trial-downloads"},{"title":"Manuals and brochures","url":"https://taltech.com/support-resources/software-manuals-brochures","href":"/external/manuals"},{"title":"Online orders","url":"https://store.taltech.com/myaccount","href":"/external/store-account"},{"title":"Order and licensing info","url":"https://taltech.com/ordering","href":"/external/ordering"},{"title":"TALtech main site","url":"https://taltech.com","href":"/external/main-site"}]}]},{"product":"Barcode ActiveX \u0026 DLLs","icon":"https://mintlify.s3.us-west-1.amazonaws.com/taltech-bdc45607/images/product-icons/Barcode%20ActiveX.svg","pages":[{"title":"Barcode ActiveX \u0026 DLLs","href":"/barcode-activex"}]}]},"basePath":"","title":"How a barcode reader works - TALtech Support","buildId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","deploymentId":"dpl_8LJbrAiZvr1K98WQNZXCyY5AvT34","dynamics":["10e4515597","a74be98ba7"],"chunks":["BannerMarkdown-BcDCEkh6.js","dist-CwjSCXIK.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-eKJ4rcii.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","zoom-image-lightbox-DMoL6lHz.js","lightbox-handle-r17bVUz3.js"]}