Hi ,
I am trying to create a POC using temporary liscence of Aspose total .Here Its workign fine for those PDF’s where the barcode is as an image . But its failing in some cases when its not an image file . Is there any possibility using aspose to cater the case when the PDF’s barcode is not an image ?
I tried using the version 7.4.0.0 . Please let me know .
Thanks,
Shilpi
I am sharing the code sample which I am using :
String savePath1 = @"\Upload";
barcodeReader.MediumTrustLevelCompatible = true;
barcodeReader.BarcodeTypesToFind.All = true;
Aspose.BarCode.License license = new Aspose.BarCode.License();
license.SetLicense(“Aspose.Total.lic”);
if (FileUploadControl.HasFile)
{
float distanceInPixelsFromLeft = 360;
float distanceInPixelsFromBottom = 30;
float width = 120;
float height = 80;
var rect1 = new System.util.RectangleJ(
distanceInPixelsFromLeft,
distanceInPixelsFromBottom,
width,
height);
String fileName = FileUploadControl.FileName;
savePath1 += fileName;
FileUploadControl.SaveAs(Server.MapPath(savePath1));
int c = GetNoOfPagesPDF(Server.MapPath(savePath1));
Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(Server.MapPath(savePath1));
for (int pageCount = 1; pageCount <= pdfDocument.Pages.Count; pageCount++)
{
// traverse through each image extracted from PDF pages
foreach (XImage xImage in pdfDocument.Pages[pageCount].Resources.Images)
{
using (MemoryStream imageStream = new MemoryStream())
{
//var bitmap = new BitmapImage();
// bitmap.BeginInit();
// bitmap.StreamSource = imageStream;
// bitmap.CacheOption = BitmapCacheOption.OnLoad;
// bitmap.EndInit();
// bitmap.Freeze();
//save output image
xImage.Save(imageStream, System.Drawing.Imaging.ImageFormat.Bmp);
// set the stream position to the begining of Stream
imageStream.Position = 0;
// Instantiate BarCodeReader object
// Aspose.BarCodeRecognition.BarCodeReader qq = new BarCodeReader(bitmap, rect1, BarCodeReadType.Pdf417);
Aspose.BarCodeRecognition.BarCodeReader barcodeReader1 = new Aspose.BarCodeRecognition.BarCodeReader(imageStream, Aspose.BarCodeRecognition.BarCodeReadType.Code39Standard
|BarCodeReadType.AllSupportedTypes | BarCodeReadType.AustralianPosteParcel | BarCodeReadType.AustraliaPost | BarCodeReadType.Aztec | BarCodeReadType.Codabar | BarCodeReadType.Code11 |
BarCodeReadType.Code128 | BarCodeReadType.Code16K | BarCodeReadType.Code39Extended | BarCodeReadType.Code93Extended | BarCodeReadType.Code93Standard | BarCodeReadType.CompactPdf417 |
BarCodeReadType.DatabarExpanded | BarCodeReadType.DatabarExpandedStacked | BarCodeReadType.DatabarLimited | BarCodeReadType.DatabarOmniDirectional |BarCodeReadType.DatabarStacked |BarCodeReadType.DatabarStackedOmniDirectional|BarCodeReadType.DatabarTruncated|BarCodeReadType.DataMatrix
|BarCodeReadType.DeutschePostIdentcode|BarCodeReadType.DeutschePostLeitcode|BarCodeReadType.EAN13|BarCodeReadType.EAN14|BarCodeReadType.EAN8|BarCodeReadType.GS1Code128|BarCodeReadType.GS1DataMatrix|BarCodeReadType.IATA2of5|BarCodeReadType.Interleaved2of5|BarCodeReadType.ISBN|BarCodeReadType.ISMN|
BarCodeReadType.ISSN|BarCodeReadType.ItalianPost25|BarCodeReadType.ITF14|BarCodeReadType.ITF6|BarCodeReadType.MacroPdf417|BarCodeReadType.Matrix2of5|BarCodeReadType.MicroPdf417|BarCodeReadType.MicroQR|BarCodeReadType.MSI|BarCodeReadType.OneCode|BarCodeReadType.OPC|BarCodeReadType.PatchCode|BarCodeReadType.Pdf417
|BarCodeReadType.Pharmacode|BarCodeReadType.Planet|BarCodeReadType.Postnet|BarCodeReadType.PZN|BarCodeReadType.QR|BarCodeReadType.RM4SCC|BarCodeReadType.SCC14|BarCodeReadType.SSCC18|BarCodeReadType.Standard2of5|BarCodeReadType.Supplement|BarCodeReadType.SwissPostParcel|BarCodeReadType.UPCA|BarCodeReadType.UPCE
|BarCodeReadType.VIN);
while (barcodeReader1.Read())
{
// get BarCode text from BarCode image
string code = barcodeReader1.GetCodeText();
// write the BarCode text to Console output
if (code != null)
{
flag = 1;
}
}
// close BarCodeReader object to release the Image file
barcodeReader1.Close();
}
}
}
}
Note: I shall not be able to share the pdf document as its specific to the client and confidential .
But then the code fails in those pdf’s which does not has barcode as image and in embedded.
A quick reply shall be appreciated … I find myself stuck up in this case…
Please help
Thanks,
Shilpi
PdfConverter converter = new PdfConverter();
converter.BindPdf("xxx.pdf");
converter.RenderingOptions.BarcodeOptimization = true;
converter.DoConvert();
while (converter.HasNextImage())
{
pageIndex++;
Console.WriteLine("Getting next Page...");
MemoryStream pageStream = new MemoryStream();
converter.GetNextImage(pageStream, ImageFormat.Png);
using (BarCodeReader reader = new BarCodeReader(pageStream, BarCodeReadType.EAN13))
{
while (reader.Read())
{
Console.WriteLine("Code Text: " + reader.GetCodeText() + " Type: " + reader.GetReadType());
}
}
}
Hi ,
The sample code provided seems to work for me …
Thank You,
Shilpi