We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

Direction of characteres when converting to image


PQ2334.zip (8.5 KB)
1.jpg (83.7 KB)

I have converted PQ2334.doc to Images with Aspose.Words however I got 1 error.

  1. direction of characters

I have attached PQ2334SaveAsPdfByWord.pdf which is the pdf that MS Word outputs correctly as a reference.
PQ2334SaveAsPDFByWord.pdf (68.0 KB)

This is my code.

public static List ConvertWordToImage(string docName, MemoryStream docStream, Dictionary<string, string> config)
var pageInfoList = new List();

            string docRootDir = config["DocumentsFilePath"];
            int dpi = int.Parse(config["ImageDPI"]);
            int thumbMaxH = int.Parse(config["ThumbnailMaxHeight"]);
            int thumbMaxW = int.Parse(config["ThumbnailMaxWidth"]);
            int maxPageNum = int.Parse(config["DocumentMaxPageNum"]);
            float readScale = float.Parse(config["ImageReadScale"]);
            int readDpi = Convert.ToInt32(dpi * readScale);

            // Create images directory
            string pageImgDir = docRootDir;
            if (!Directory.Exists(pageImgDir))

            // Get the encoder of JPEG
            ImageCodecInfo jpgEncoder = GetCodecInfo();
            //EncoderParameters encParams = GetEncoderParams();

            EncoderParameters encParams = GetEncoderParams(int.Parse(config["ImageJpegQuality"]));

            // Instantiate the License class
            Aspose.Words.License license = new Aspose.Words.License();

            // Convert .doc and .docx file to PDF.
            Document document = new Document(docStream);

            for (int i = 0; (i < document.PageCount) && (i < maxPageNum); i++)
                var pageInfo = document.GetPageInfo(i);
                Size pixelSize = pageInfo.GetSizeInPixels(1.0f, readDpi);

                // Export image file
                string imgFile = string.Format("{0}_{1:D8}.jpg",
                        Path.GetFileNameWithoutExtension(docName), i+1);
                string imgPath = Path.Combine(pageImgDir, imgFile);
                using (Bitmap bitmap = new Bitmap(pixelSize.Width, pixelSize.Height))
                    bitmap.SetResolution(dpi, dpi);

                    using (Graphics graphics = Graphics.FromImage(bitmap))
                        document.RenderToScale(i, graphics, 0, 0, readScale);

                        bitmap.Save(imgPath, jpgEncoder, encParams);

                // TODO Create OCR XML

                // Add  PageInfo List
            // return results with flag of max page limit over
            return pageInfoList;

They are parameters.

            // Get config setting
               Create Appseting key value for async function
               Dictionary<string, string> config = new Dictionary<string, string>();

               config.Add("DocumentsFilePath", outDir);
               config.Add("ImageDPI", "96");
               config.Add("ImageReadScale", "1.25");
               config.Add("ThumbnailMaxHeight", "252");
               config.Add("ThumbnailMaxWidth", "210");
               config.Add("ImageJpegQuality", "80");
               config.Add("DocumentMaxPageNum", "1000");

Thank you,


Thanks for your inquiry. We have tested the scenario and noticed the text orientation issue. We have logged a ticket WORDSNET-15926 in our issue tracking system for further investigation and rectification. We will notify you as soon as it is resolved.

We are sorry for the inconvenience.