Giter Site home page Giter Site logo

qrcodelibvba's Introduction

QRCodeLibVBA

QRCodeLibVBAは、Excel VBAで書かれたQRコード生成ライブラリです。
JIS X 0510に基づくモデル2コードシンボルを生成します。

特徴

  • 数字・英数字・8ビットバイト・漢字モードに対応しています
  • 分割QRコードを作成可能です
  • BMP、EMF、PNG、SVG、TIFFファイルに保存可能です
  • QRコードをIPictureDispオブジェクトとして取得可能です
  • 配色を指定可能です
  • 8ビットバイトモードの文字セットを指定可能です
  • QRコードをクリップボードに保存可能です

クイックスタート

QRCodeLib.xlam を参照設定してください。

使用方法

例1.最小限のコードを示します

Dim sbls As Symbols
Set sbls = CreateSymbols()
sbls.AppendText "012345abcdefg"

Dim pict As stdole.IPictureDisp
Set pict = sbls(0).GetPicture()

例2.誤り訂正レベルを指定する

CreateSymbols関数の引数に、ErrorCorrectionLevel列挙型の値を設定してSymbolsオブジェクトを生成します。

Dim sbls As Symbols
Set sbls = CreateSymbols(ErrorCorrectionLevel.H)

例3.型番の上限を指定する

CreateSymbols関数の maxVer 引数を設定してSymbolsオブジェクトを生成します。

Dim sbls As Symbols
Set sbls = CreateSymbols(maxVer:=10)

例4.8ビットバイトモードの文字セットを指定する

CreateSymbols関数の charsetName 引数を設定してSymbolsオブジェクトを生成します。 (ADODB.Stream に依存しています。使用可能な文字セットはレジストリ[HKEY_CLASSES_ROOT\MIME\Database\Charset]を確認してください。)

Dim sbls As Symbols
Set sbls = CreateSymbols(charsetName:="UTF-8")

例5.分割QRコードを作成する

CreateSymbols関数の引数を設定してSymbolsオブジェクトを生成します。型番の上限を指定しない場合は、型番40を上限に分割されます。

型番1を上限に分割し、各QRコードのIPictureDispオブジェクトを取得する例を示します。

Dim sbls As Symbols
Set sbls = CreateSymbols(maxVer:=1, allowStructuredAppend:=True)
sbls.AppendText "abcdefghijklmnopqrstuvwxyz"
    
Dim pict As stdole.IPictureDisp
Dim sbl As Symbol
    
For Each sbl In sbls
    Set pict = sbl.GetPicture()
Next

例6.画像形式を指定してIPictureDispオブジェクトを取得する

GetPictureメソッドのpicType引数を設定します。

Dim sbls As Symbols
Set sbls = CreateSymbols()
sbls.AppendText "012345abcdefg"

Dim pict As stdole.IPictureDisp

' Bitmap
Set pict = sbls(0).GetPicture(picType:=Bitmap)

' Metafile
Set pict = sbls(0).GetPicture(picType:=EnhMetaFile)

例7.ファイルへ保存する

SymbolクラスのSaveAsメソッドを使用します。

Dim sbls As Symbols
Set sbls = CreateSymbols()
sbls.AppendText "012345abcdefg"
    
' monochrome BMP
sbls(0).SaveAs "filename"

' true color BMP
sbls(0).SaveAs "filename", fmt:=fmtTrueColor

' monochrome PNG
sbls(0).SaveAs "filename", fmt:=fmtPNG

' true color PNG 
sbls(0).SaveAs "filename", fmt:=fmtPNG + fmtTrueColor

' transparent PNG 
sbls(0).SaveAs "filename", fmt:=fmtPNG + fmtTrueColor, bkStyle:=bkTransparent

' SVG
sbls(0).SaveAs "filename", fmt:=fmtSVG

' EMF
sbls(0).SaveAs "filename", fmt:=fmtEMF

' monochrome TIFF
sbls(0).SaveAs "filename", fmt:=fmtTIFF

' true color TIFF
sbls(0).SaveAs "filename", fmt:=fmtTIFF + fmtTrueColor

' bilevel TIFF
sbls(0).SaveAs "filename", fmt:=fmtTIFF + fmtBilevel

' 10 pixels per module
sbls(0).SaveAs "filename", moduleSize:=10
    
' specify foreground and background colors
sbls(0).SaveAs "filename", foreRgb:="#0000FF", backRgb:="#FFFF00"

例8.クリップボードへ保存する

SymbolクラスのSetToClipBoardメソッドを使用します。

Dim sbls As Symbols
Set sbls = CreateSymbols()
sbls.AppendText "012345abcdefg"
    
sbls(0).SetToClipBoard

qrcodelibvba's People

Contributors

yas78 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.