1. 제품
  2.   Aspose.BarCode
  3.   Aspose.BarCode FOSS for Python

Aspose.BarCode FOSS for Python

표준을 준수하는 1D 및 2D 바코드 생성을 위한 오픈소스 Python 라이브러리. MIT 라이선스, 순수 Python, SVG 및 PNG로 렌더링합니다.

바코드 생성용 오픈 소스 파이썬 라이브러리

파이썬용 FOSS는 순수한 파이톤에서 표준에 맞는 바코드를 생성하는 무료 오픈소스 라이브러리입니다. pip install aspose-barcode-foss를 설치하여 코드 128, 코드 39, EAN-13, EAn-8, QR 코드, UPC-A 및 UCP-E 바스코드를 만들기 시작하십시오. 각 바 코드는 SVG 또는 PNG로 직접 렌더링되며 네이티브 의존성이 없습니다.

라이브러리는 generate() 함수와 barcode.code128(), barcode.qr()barcode.ean13()과 같은 상표학 보조자를 노출합니다. 모든 호출은 Barcode 객체를 .to_svg().to_png() 메서드를 통해 즉시 출력하도록 반환합니다 . 스케일, DPI, 모듈 차원, 색상, 조용한 영역 및 사람이 읽을 수있는 텍스트 가시성을 포함한 렌더링 옵션은RenderOptions.를 통해 제어됩니다.

라이브러리는 Office 또는 이미지 의존성이 없는 순수한 파이썬이기 때문에, 도커 컨테이너와 CI 런어 등 윈도우, 리눅스 및 맥OS에서 동일하게 실행된다. 코드는 MIT에 의해 허가되어 있으며 GitHub에 호스팅됩니다. 엔터프라이즈 기능과 지원은 Aspose.BarCode for Python — Enterprise Product를 참조하십시오.

바코드 생성

  • 일곱 가지 심볼: Code 128, Code 39, EAN-13, EAN-8, QR Code, UPC-A, 및 UPC-E.
  • 고수준 API: barcode.generate("code128", "data")을 호출하여 이름으로 지원되는 모든 바코드를 생성합니다.
  • 전용 헬퍼: 타입 안전 생성에 barcode.code128(), barcode.qr(), barcode.ean13(), barcode.ean8(), barcode.upca(), 및 barcode.upce()을 사용합니다.
  • 인코딩 옵션: Code128Options, Code39Options, QrOptions 및 심볼별 옵션 클래스를 통해 인코드 모드, 체크 디지트, 오류 정정 수준, 그리고 GS1을 제어합니다.
  • 자동 체크 디지트: EAN-13, EAN-8, UPC-A, 및 UPC-E가 데이터 문자열에서 체크 디지트를 자동으로 계산합니다.

Aspose.BarCode FOSS 가 사용 될 수 있는 곳

  • 상품 표기: 소매 포장용 EAN-13 및 UPC-A 바코드를 생성합니다.
  • 재량 관리: 창고 및 물류 작업 흐름에 대한 코드 128 라벨을 작성합니다.
  • QR 코드 캠페인: 마케팅 자료, 이벤트 티켓 및 모바일 링크를 위한 QR 코드를 제작합니다.
  • 선송 및 물류: 배송 추적 라벨에 대한 코드 39과 코드 128 바코드를 생성합니다.

렌더링 및 출력

  • SVG 출력: barcode.to_svg()을(를) 호출하여 표준 준수 SVG 문자열을 얻습니다.
  • PNG 출력: barcode.to_png()을(를) 호출하여 PNG 이미지 바이트를 얻습니다.
  • RenderOptions: scale, dpi, module_width, module_height, quiet_zone, foreground_color, background_color, transparent_background, show_text, font_family, 및 font_size을 제어합니다.
  • 인간이 읽을 수 있는 텍스트: 심볼로지별 TextLayoutPolicy 구현은 각 바코드 유형 아래에 텍스트 배치를 처리합니다.
  • 렌더러 아키텍처: PngRendererSvgRenderer는 확장 가능한 출력을 위해 Renderer 인터페이스를 구현합니다.

개발자 경험

Aspose.BarCode FOSS는 pip install aspose-barcode-foss으로 설치할 수 있습니다. 설치하는 데에는 네이티브 라이브러리 또는 시스템 패키지가 없습니다. 이 라이버리는 Python 3.12 이상을 필요로합니다.

API는 Barcode, EncodeOptions , RenderOptionsSymbologyRegistry에 의해 구축되어 있으며 전체 생성-레인더 파이프라인을 포함합니다. 각 상징은 파서, 인코더, 프로필 및 텍스트 레이아웃 정책을 묶어주는 SymbologyDefinition로 정의됩니다. 코드는 MIT 라이선스를 가지고 있으며 GitHub에서 호스팅되며 기여를 받아줍니다.

상징성 구성

  • Code 128 모드: AUTO, CODE_A, CODE_B, CODE_C, 또는 혼합 세트 모드를 Code128EncodeMode를 통해 선택합니다.
  • Code 39 모드: BASE 또는 FULL_ASCII 인코딩을 선택하고, 옵션 체크 디지트는 Code39Options를 통해 지정합니다.
  • QR 옵션: error_correction_level (L, M, Q, H), version, mask, 및 encoding_mode (AUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI)를 QrOptions를 통해 설정합니다.
  • 레지스트리 시스템: SymbologyRegistry은 모든 정의를 저장하고 정식 이름 또는 별칭으로 심볼을 해결합니다.
  • 프로파일 메타데이터: 각 심볼의 SymbologyProfile는 기본값, 기능, 사양 참조 및 알려진 제한 사항을 제공합니다.

오류 처리

  • Typed exceptions: BarcodeError는 기본이며, EncodingError, RenderingError, InvalidInputError, SymbologyNotFoundError, UnsupportedFeatureError, 및 UnsupportedCapabilityError이(가) 포함됩니다.
  • Input validation:InputParser은 인코딩 전에 데이터를 검증하여, 잘못된 문자와 형식 위반을 조기에 포착합니다.
  • Capability checks: 지원되지 않는 기능(예: Code 39에 대한 바이너리 입력)은 설명이 포함된 메시지와 함께 UnsupportedCapabilityError을(를) 발생시킵니다.

코드 128 바코드를 생성합니다.

고위 레벨 generate() 함수를 사용하여 코드 128 바코드를 생성하고 SVG로 렌더링합니다.

import aspose_barcode_foss as barcode
bc = barcode.generate("code128", "Hello World")
svg_string = bc.to_svg()
print(svg_string[:80])

사용자 정의 옵션으로 QR 코드를 생성합니다.

특정 오류 수정과 QR 코드를 생성하고 PNG 바이트로 렌더링합니다.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel
bc = barcode.qr("https://example.com", options=QrOptions(
    error_correction_level=QrErrorCorrectionLevel.H
))
png_bytes = bc.to_png()
with open("qr.png", "wb") as f:
    f.write(png_bytes)

맞춤형 외관 을 갖춘 렌더링

RenderOptions를 사용하여 바코드에서 스케일, 색상 및 조용한 영역을 제어합니다.

import aspose_barcode_foss as barcode
from aspose_barcode_foss import RenderOptions
bc = barcode.ean13("590123412345")
svg = bc.to_svg(options=RenderOptions(
    scale=2.0,
    foreground_color="#003366",
    quiet_zone=10.0,
    show_text=True
))

자주 묻는 질문

Aspose.BarCode FOSS for Python는 어떤 라이선스를 사용합니까?

라이브러리는 MIT 라이선스에 따라 출시됩니다. 당신은 사용, 수정 및 로열티 없이 오픈 소스와 상업 프로젝트에서 재 배포 할 수 있습니다.

어떤 바코드 상징이 지원되는가?

라이브러리는 7가지 상징을 지원합니다. 코드 128, 코드 39, EAN-13, EAn-8, QR 코드, UPC-A 및 U PC-E.

어떤 출력 형식이 가능합니까?

바코드는 to_svg()를 통해 SVG 및 to_png()을 통해 PNG로 렌더링됩니다. to_pdf() 방법은 API에 존재하지만 현재 릴리스에서 NotImplementedError를 발생시킵니다.

파이썬에 Aspose.BarCode FOSS를 설치하는 방법은 무엇입니까?

pip install aspose-barcode-foss를 실행합니다. 라이브러리는 파이썬 3.12 이상이 필요합니다. 네이티브 의존성이 없는 순수한 파이톤입니다.

바코드의 시각적 모습을 제어할 수 있나요?

예. RenderOptions 객체를 to_svg() 또는 to_png()에 전달하여 스케일, DPI, 모듈 치수, 색상, 조용한 영역, 그리고 사람이 읽을 수 있는 텍스트를 제어합니다.

어떤 파이썬 버전이 지원되나요?

Aspose.BarCode FOSS는 Python 3.12 이상이 필요합니다. 네이티브 또는 C 확장 의존성이 없는 순수한 파이썬입니다.

바코드를 배치로 생성할 수 있나요?

예. 단일 BarcodeService 인스턴스를 만들고 각 데이터 값에 대해 루프에서 generate()을 호출합니다. 각 호출은 Barcode 객체를 반환하며, 이를 to_svg() 또는 to_png()로 독립적으로 렌더링합니다.

어떻게 상표학 코딩 옵션을 설정할 수 있을까요?

symbology‑specific 옵션 객체(예: Code128Options, QrOptions, Ean13Options)를 encode 매개변수로 BarcodeService.generate()에 전달합니다. 각 옵션 클래스는 해당 symbology에 특화된 속성을 노출하며, 예를 들어 Code 128에 대한 encode_mode 또는 QR Code에 대한 error_correction_level와 같습니다.

  

지원 및 학습 자료

 한국어