가상 바코드 생성(JAN 코드 지원)
7755 단어 TypeScriptbarcodetech
바코드에 규격이 있는지, 규격에 맞는지 확인하는 기관도 있다.내용은 간단하다. 예를 들어 JAN코드라고 불리는 규격이라면 다음과 같다.
13위의 경우
{事業者コード9桁}{商品アイテムコード3桁}{チェックデジット1桁}
위에서 말한 바와 같이 바코드의 마지막 순서는 검사와 검사이다.이것은 격자 디지털이라고 불린다.숫자를 검사하는 계산 방법은 다음과 같은 순서에 따라 진행한다.
10
에서 3을 뺀 다음 수치가 바코드의 마지막 수치와 일치할 때 기준을 만족시킨다격자 숫자의 계산 방법
바코드 형태로 입력해 확인 디지털 검증을 할 때 먼저 통과하려고 할 때 실물을 하나하나 찾아가는 바코드도 번거롭기 때문에 가상 바코드를 만드는 스크립트를 썼다.
src/generator.ts
function main(len: string[]) {
try {
const r = Math.random()
.toString(10)
.slice(-len[2] + 1)
const body = [...r].map((s) => +s)
const evenSum = body.filter((_, i) => i % 2 === 0).reduce((a, b) => a + b)
const oddSum = body.filter((_, i) => i % 2 !== 0).reduce((a, b) => a + b)
const checkDesit = 10 - +(evenSum * 3 + oddSum).toString().slice(-1)
console.log(`${r}${checkDesit}`)
} catch (e) {
console.error(e)
}
}
main(process.argv)
package.json "scripts": {
"gen": "npx ts-node src/generator.ts 14"
},
는 기본적으로 쓰기를 위해 제작된 것이기 때문에 카드 주위가 어수선하지만 yarn gen
만 해도 JAN 코드를 통해 검증된 수치를 얻을 수 있어 편리하다.14자리 숫자를 결정하는 부분도 용도에 따라 바꿀 수 있다.이번에는 필요한 최소한의 기능만 실시했다.확장하려면 JAN과 EAN 같은 문자열을 매개 변수로 수신하고, 이 규격에 따라 코드
console.log
를 뱉을 수 있으며, cli와 웹에서 사용하지 않습니다.ts-node로 이동하고 있기 때문에barcodeGenerator
export를 라이브러리로 구축해도 된다고 합니다.(뭐가 필요한지 모르겠지만)
Reference
이 문제에 관하여(가상 바코드 생성(JAN 코드 지원)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/ushironoko/articles/0c8b46b675f5eea7a150텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)