X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=csharp%2FMultiFormatWriter.cs;h=160c453753a7439984ad32759dd98df203215c09;hb=ec1ee85493764108d96cac8270ce70c6a8d72f48;hp=42f244cda588e94d4db41e6eb9579e595800d3bc;hpb=e35d358134873c3f640672da7cd0c01f02253151;p=zxing.git diff --git a/csharp/MultiFormatWriter.cs b/csharp/MultiFormatWriter.cs index 42f244cd..160c4537 100755 --- a/csharp/MultiFormatWriter.cs +++ b/csharp/MultiFormatWriter.cs @@ -1,4 +1,6 @@ -/* +/* +* Copyright 2008 ZXing authors +* * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -11,29 +13,51 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - using System; -using System.Collections; -using com.google.zxing.qrcode; -using com.google.zxing.common; - +using ByteMatrix = com.google.zxing.common.ByteMatrix; +using EAN13Writer = com.google.zxing.oned.EAN13Writer; +using EAN8Writer = com.google.zxing.oned.EAN8Writer; +using QRCodeWriter = com.google.zxing.qrcode.QRCodeWriter; namespace com.google.zxing { - public sealed class MultiFormatWriter : Writer - { - public ByteMatrix encode(String contents, BarcodeFormat format, int width,int height) { - return encode(contents, format, width, height,null); - } - - public ByteMatrix encode(String contents, BarcodeFormat format, int width, int height,Hashtable hints){ - if (format == BarcodeFormat.QR_CODE) { - return new QRCodeWriter().encode(contents, format, width, height, hints); - } else { - throw new ArgumentException("No encoder available for format " + format); - } - } - } -} - - + + /// This is a factory class which finds the appropriate Writer subclass for the BarcodeFormat + /// requested and encodes the barcode with the supplied contents. + /// + /// + /// dswitkin@google.com (Daniel Switkin) + /// + /// www.Redivivus.in (suraj.supekar@redivivus.in) - Ported from ZXING Java Source + /// + public sealed class MultiFormatWriter : Writer + { + + public ByteMatrix encode(System.String contents, BarcodeFormat format, int width, int height) + { + + return encode(contents, format, width, height, null); + } + + public ByteMatrix encode(System.String contents, BarcodeFormat format, int width, int height, System.Collections.Hashtable hints) + { + + if (format == BarcodeFormat.EAN_8) + { + return new EAN8Writer().encode(contents, format, width, height, hints); + } + else if (format == BarcodeFormat.EAN_13) + { + return new EAN13Writer().encode(contents, format, width, height, hints); + } + else if (format == BarcodeFormat.QR_CODE) + { + return new QRCodeWriter().encode(contents, format, width, height, hints); + } + else + { + throw new System.ArgumentException("No encoder available for format " + format); + } + } + } +} \ No newline at end of file