This class contains information for writing Data Matrix barcodes.
Syntax
Visual Basic (Declaration) | |
---|
<DataContractAttribute(Namespace="http://Leadtools.Services.Barcode.DataContracts/2009/01", Name="BarcodeWriteDatamatrix")>
Public Class BarcodeWriteDatamatrix |
C# | |
---|
[DataContractAttribute(Namespace="http://Leadtools.Services.Barcode.DataContracts/2009/01", Name="BarcodeWriteDatamatrix")]
public class BarcodeWriteDatamatrix |
C++/CLI | |
---|
[DataContractAttribute(Namespace="http://Leadtools.Services.Barcode.DataContracts/2009/01", Name="BarcodeWriteDatamatrix")]
public ref class BarcodeWriteDatamatrix |
Example
Visual Basic | Copy Code |
---|
Private Function ConvertFromStringArray(ByVal data As String()) As Byte()
If data Is Nothing OrElse data.Length = 0 Then
Return Nothing
End If
Dim list As New List(Of Byte())
Dim ascii As ASCIIEncoding = New ASCIIEncoding()
Dim length As Integer = 0
Dim i As Integer = 0
Do While i < data.Length
Dim bytes As Byte() = ascii.GetBytes(data(i))
list.Add(bytes)
length += bytes.Length
length += 1
i += 1
Loop
Dim ret As Byte() = New Byte(length - 1) {}
Dim index As Integer = 0
i = 0
Do While i < list.Count
Dim bytes As Byte() = list(i)
bytes.CopyTo(ret, index)
index += bytes.Length + 1
i += 1
Loop
Return ret
End Function
Public Sub WriteExample()
Dim client As BarcodeServiceClient = New BarcodeServiceClient()
Dim sourceBinaryData As RawBinaryData = New RawBinaryData()
sourceBinaryData.Data = File.ReadAllBytes(LeadtoolsExamples.Common.ImagesPath.Path & "barcode1.tif")
Dim convertOptions As RasterConvertOptions = New RasterConvertOptions()
convertOptions.Source = sourceBinaryData
convertOptions.Destination = Nothing
convertOptions.Format = RasterImageFormat.RasPdf
convertOptions.FirstPage = 1
convertOptions.LastPage = 1
convertOptions.BitsPerPixel = 24
convertOptions.QualityFactor = 2
Dim rc As LeadRectangle = New LeadRectangle()
rc.X = 100
rc.Y = 0
rc.Width = 0
rc.Height = 0
Dim barcodeText As String()
barcodeText = New String(0) {}
Dim matrixData As BarcodeData = New BarcodeData()
matrixData.Location = rc
barcodeText(0) = "Data Matrix Default Size"
matrixData.Data = ConvertFromStringArray(barcodeText)
Dim postData As BarcodeData = New BarcodeData()
rc.X = 50
rc.Y = 50
rc.Width = 300
rc.Height = 200
postData.Location = rc
barcodeText(0) = "12345678901"
postData.Data = ConvertFromStringArray(barcodeText)
Dim standardData As BarcodeData = New BarcodeData()
rc.X = 360
rc.Y = 50
rc.Width = 300
rc.Height = 250
standardData.Location = rc
barcodeText(0) = "012345678901"
standardData.Data = ConvertFromStringArray(barcodeText)
Dim patchData As BarcodeData = New BarcodeData()
rc.X = 660
rc.Y = 50
rc.Width = 200
rc.Height = 450
patchData.Location = rc
barcodeText(0) = "1100"
patchData.Data = ConvertFromStringArray(barcodeText)
Dim stackedData As BarcodeData = New BarcodeData()
rc.X = 860
rc.Y = 50
rc.Width = 300
rc.Height = 450
patchData.Location = rc
stackedData.Location = rc
barcodeText(0) = "1234567890123"
stackedData.Data = ConvertFromStringArray(barcodeText)
Dim pdf417Data As BarcodeData = New BarcodeData()
rc.X = 50
rc.Y = 400
rc.Width = 0
rc.Height = 0
pdf417Data.Location = rc
barcodeText(0) = "Pdf417"
pdf417Data.Data = ConvertFromStringArray(barcodeText)
Dim microPdf417Data As BarcodeData = New BarcodeData()
rc.X = 200
rc.Y = 600
rc.Width = 0
rc.Height = 0
microPdf417Data.Location = rc
barcodeText(0) = "Micro Pdf417"
microPdf417Data.Data = ConvertFromStringArray(barcodeText)
Dim qrData As BarcodeData = New BarcodeData()
rc.X = 200
rc.Y = 400
rc.Width = 0
rc.Height = 0
qrData.Location = rc
barcodeText(0) = "QR Code Model 2 AutoSize"
qrData.Data = ConvertFromStringArray(barcodeText)
Dim barColor As BarcodeColor = New BarcodeColor()
barColor.BarColor = "Black"
barColor.SpaceColor = "White"
Dim bar1d As Barcode1d = New Barcode1d()
bar1d.OutShowText = True
Dim barPDF As BarcodeWritePdf = New BarcodeWritePdf()
barPDF.AspectHeight = 0
barPDF.AspectWidth = 0
barPDF.Columns = 0
barPDF.Rows = 0
barPDF.EccLevel = BarcodePdf417EccLevelFlags.UsePercent
barPDF.EccPercentage = 50
barPDF.Justify = BarcodeJustifyFlags.Right
barPDF.Module = 21
barPDF.ModAspectRatio = 4
Dim barDM As BarcodeWriteDatamatrix = New BarcodeWriteDatamatrix()
barDM.Justify = BarcodeJustifyFlags.Right
barDM.FileIdHigh = 0
barDM.FileIdLow = 0
barDM.GroupNumber = 0
barDM.GroupTotal = 0
barDM.XModule = 0
Dim barQR As BarcodeWriteQr = New BarcodeWriteQr()
Dim options As WriteOptions = New WriteOptions()
Dim dataMatrix As WriteBarcode2DDataMatrix = New WriteBarcode2DDataMatrix()
dataMatrix.Type = WriteBarcode2DDataMatrixType.DatamatrixDefault
dataMatrix.Data = matrixData
options.Add(dataMatrix)
Dim standard As WriteBarcode1dStandard = New WriteBarcode1dStandard()
standard.Type = WriteBarcodeStandardFlags.Ean13
standard.Data = standardData
options.Add(standard)
Dim post As WriteBarcode1dPost = New WriteBarcode1dPost()
post.Type = WriteBarcode1dPostType.Planet
post.Data = postData
options.Add(post)
Dim patch As WriteBarcode1dPatch = New WriteBarcode1dPatch()
patch.Type = WriteBarcode1dPatchType.Patchcode
patch.Data = patchData
options.Add(patch)
Dim stacked As WriteBarcode1dStacked = New WriteBarcode1dStacked()
stacked.Type = WriteBarcode1dStackedType.Rss14Stacked
stacked.Data = stackedData
options.Add(stacked)
Dim pdf417 As WriteBarcode2DPdf417 = New WriteBarcode2DPdf417()
pdf417.Type = WriteBarcode2DPdf417Type.Pdf417
pdf417.Data = pdf417Data
options.Add(pdf417)
Dim microPdf417 As WriteBarcode2DMicroPdf417 = New WriteBarcode2DMicroPdf417()
microPdf417.Type = WriteBarcode2DMicroPdf417Type.MicroPdf417
microPdf417.Data = microPdf417Data
options.Add(microPdf417)
Dim qr As WriteBarcode2DQr = New WriteBarcode2DQr()
qr.Type = WriteBarcode2DQrType.Default
qr.Data = qrData
options.Add(qr)
Dim request As WriteRequest = New WriteRequest()
request.Code1d = bar1d
request.CodeColor = barColor
request.CodeDatamatrix = barDM
request.CodePdf = barPDF
request.CodeQr = barQR
request.ConvertOptions = convertOptions
request.TypeFlags = BarcodeMajorTypeFlags.BarcodesDatamatrixWrite
request.Unit = BarcodeUnit.ScanlinesPerPixels
request.WriteFlags = BarcodeWriteFlags.UseColors Or BarcodeWriteFlags.Transparent Or BarcodeWriteFlags.InitializationReader Or BarcodeWriteFlags.DisableCompression
request.WriteOptions = options
Dim response As WriteResponse = client.Write(request)
If Not response.Destination Is Nothing Then
If TypeOf response.Destination Is RawBinaryData Then
File.WriteAllBytes(LeadtoolsExamples.Common.ImagesPath.Path & "Write_Barcode.Pdf", (TryCast(response.Destination, RawBinaryData)).Data)
End If
End If
client.Close()
End Sub |
C# | Copy Code |
---|
byte[] ConvertFromStringArray(string [] data) { if(data == null || data.Length == 0) return null; List<byte[]> list = new List<byte[]>(); ASCIIEncoding ascii = new ASCIIEncoding(); int length = 0; for(int i = 0; i < data.Length; i++) { byte[] bytes = ascii.GetBytes(data[i]); list.Add(bytes); length+= bytes.Length; length++; } byte[] ret = new byte[length]; int index = 0; for(int i = 0; i < list.Count; i++) { byte[] bytes = list[i]; bytes.CopyTo(ret, index); index += bytes.Length + 1; } return ret; } public void WriteExample() { BarcodeServiceClient client = new BarcodeServiceClient(); RawBinaryData sourceBinaryData = new RawBinaryData(); sourceBinaryData.Data = File.ReadAllBytes(LeadtoolsExamples.Common.ImagesPath.Path + "barcode1.tif"); RasterConvertOptions convertOptions = new RasterConvertOptions(); convertOptions.Source = sourceBinaryData; convertOptions.Destination = null; convertOptions.Format = RasterImageFormat.RasPdf; convertOptions.FirstPage = 1; convertOptions.LastPage = 1; convertOptions.BitsPerPixel = 24; convertOptions.QualityFactor = 2; LeadRectangle rc = new LeadRectangle(); rc.X = 100; rc.Y = 0; rc.Width = 0; rc.Height = 0; string[] barcodeText; barcodeText = new string[1]; BarcodeData matrixData = new BarcodeData(); matrixData.Location = rc; barcodeText[0] = "Data Matrix Default Size"; matrixData.Data = ConvertFromStringArray(barcodeText); BarcodeData postData = new BarcodeData(); rc.X = 50; rc.Y = 50; rc.Width = 300; rc.Height = 200; postData.Location = rc; barcodeText[0] = "12345678901"; postData.Data = ConvertFromStringArray(barcodeText); BarcodeData standardData = new BarcodeData(); rc.X = 360; rc.Y = 50; rc.Width = 300; rc.Height = 250; standardData.Location = rc; barcodeText[0] = "012345678901"; standardData.Data = ConvertFromStringArray(barcodeText); BarcodeData patchData = new BarcodeData(); rc.X = 660; rc.Y = 50; rc.Width = 200; rc.Height = 450; patchData.Location = rc; barcodeText[0] = "1100"; patchData.Data = ConvertFromStringArray(barcodeText); BarcodeData stackedData = new BarcodeData(); rc.X = 860; rc.Y = 50; rc.Width = 300; rc.Height = 450; patchData.Location = rc; stackedData.Location = rc; barcodeText[0] = "1234567890123"; stackedData.Data = ConvertFromStringArray(barcodeText); BarcodeData pdf417Data = new BarcodeData(); rc.X = 50; rc.Y = 400; rc.Width = 0; rc.Height = 0; pdf417Data.Location = rc; barcodeText[0] = "Pdf417"; pdf417Data.Data = ConvertFromStringArray(barcodeText); BarcodeData qrData = new BarcodeData(); rc.X = 200; rc.Y = 400; rc.Width = 0; rc.Height = 0; qrData.Location = rc; barcodeText[0] = "QR Code Model 2 AutoSize"; qrData.Data = ConvertFromStringArray(barcodeText); BarcodeData microPdf417Data = new BarcodeData(); rc.X = 200; rc.Y = 600; rc.Width = 0; rc.Height = 0; microPdf417Data.Location = rc; barcodeText[0] = "Micro Pdf417"; microPdf417Data.Data = ConvertFromStringArray(barcodeText); BarcodeColor barColor = new BarcodeColor(); barColor.BarColor = "Black"; barColor.SpaceColor = "White"; Barcode1d bar1d = new Barcode1d(); bar1d.OutShowText = true; BarcodeWritePdf barPDF = new BarcodeWritePdf(); barPDF.AspectHeight = 0; barPDF.AspectWidth = 0; barPDF.Columns = 0; barPDF.Rows = 0; barPDF.EccLevel = BarcodePdf417EccLevelFlags.UsePercent; barPDF.EccPercentage = 50; barPDF.Justify = BarcodeJustifyFlags.Right; barPDF.Module = 21; barPDF.ModAspectRatio = 4; BarcodeWriteDatamatrix barDM = new BarcodeWriteDatamatrix(); barDM.Justify = BarcodeJustifyFlags.Right; barDM.FileIdHigh = 0; barDM.FileIdLow = 0; barDM.GroupNumber = 0; barDM.GroupTotal = 0; barDM.XModule = 0; BarcodeWriteQr barQR = new BarcodeWriteQr(); WriteOptions options = new WriteOptions(); WriteBarcode2DDataMatrix dataMatrix = new WriteBarcode2DDataMatrix(); dataMatrix.Type = WriteBarcode2DDataMatrixType.DatamatrixDefault; dataMatrix.Data = matrixData; options.Add(dataMatrix); WriteBarcode1dStandard standard = new WriteBarcode1dStandard(); standard.Type = WriteBarcodeStandardFlags.Ean13; standard.Data = standardData; options.Add(standard); WriteBarcode1dPost post = new WriteBarcode1dPost(); post.Type = WriteBarcode1dPostType.Planet; post.Data = postData; options.Add(post); WriteBarcode1dPatch patch = new WriteBarcode1dPatch(); patch.Type = WriteBarcode1dPatchType.Patchcode; patch.Data = patchData; options.Add(patch); WriteBarcode1dStacked stacked = new WriteBarcode1dStacked(); stacked.Type = WriteBarcode1dStackedType.Rss14Stacked; stacked.Data = stackedData; options.Add(stacked); WriteBarcode2DPdf417 pdf417 = new WriteBarcode2DPdf417(); pdf417.Type = WriteBarcode2DPdf417Type.Pdf417; pdf417.Data = pdf417Data; options.Add(pdf417); WriteBarcode2DMicroPdf417 microPdf417 = new WriteBarcode2DMicroPdf417(); microPdf417.Type = WriteBarcode2DMicroPdf417Type.MicroPdf417; microPdf417.Data = microPdf417Data; options.Add(microPdf417); WriteBarcode2DQr qr = new WriteBarcode2DQr(); qr.Type = WriteBarcode2DQrType.Default; qr.Data = qrData; options.Add(qr); WriteRequest request = new WriteRequest(); request.Code1d = bar1d; request.CodeColor = barColor; request.CodeDatamatrix = barDM; request.CodePdf = barPDF; request.CodeQr = barQR; request.ConvertOptions = convertOptions; request.TypeFlags = BarcodeMajorTypeFlags.BarcodesDatamatrixWrite; request.Unit = BarcodeUnit.ScanlinesPerPixels; request.WriteFlags = BarcodeWriteFlags.UseColors | BarcodeWriteFlags.Transparent | BarcodeWriteFlags.InitializationReader | BarcodeWriteFlags.DisableCompression; request.WriteOptions = options; WriteResponse response = client.Write(request); if (response.Destination != null) { if (response.Destination is RawBinaryData) { File.WriteAllBytes(LeadtoolsExamples.Common.ImagesPath.Path + "Write_Barcode.Pdf", (response.Destination as RawBinaryData).Data); } } client.Close(); } |
Remarks
Inheritance Hierarchy
System.Object
Leadtools.Services.Barcode.DataContracts.BarcodeWriteDatamatrix
Requirements
Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family
See Also