public GroupdocsViewerApiController()
 {
     _rootPathFinder        = new RootPathFinder();
     _applicationPathFinder = new ApplicationPathFinder();
     _printableHtmlCreator  = new PrintableHtmlCreator();
     _helper      = new Helper();
     _coreHandler = new CoreHandler();
 }
 public GroupdocsViewerApiController()
 {
     _rootPathFinder = new RootPathFinder();
     _applicationPathFinder = new ApplicationPathFinder();
     _printableHtmlCreator = new PrintableHtmlCreator();
     _helper = new Helper();
     _coreHandler = new CoreHandler();
 }
 public GroupdocsViewerController(IRootPathFinder rootPathFinder,
                                 IApplicationPathFinder applicationPathFinder,
                                 IPrintableHtmlCreator printableHtmlCreator,
                                 IHelper helper,
                                 ICoreHandler coreHandler)
 {
     _rootPathFinder = rootPathFinder;
     _applicationPathFinder = applicationPathFinder;
     _printableHtmlCreator = printableHtmlCreator;
     _helper = helper;
     _coreHandler = coreHandler;
 }
 public GroupdocsViewerApiController(IRootPathFinder rootPathFinder,
                                     IApplicationPathFinder applicationPathFinder,
                                     IPrintableHtmlCreator printableHtmlCreator,
                                     IHelper helper,
                                     ICoreHandler coreHandler)
 {
     _rootPathFinder        = rootPathFinder;
     _applicationPathFinder = applicationPathFinder;
     _printableHtmlCreator  = printableHtmlCreator;
     _helper      = helper;
     _coreHandler = coreHandler;
 }
 protected ViewDocumentHandler(IUrlsCreator urlsCreator)
 {
     _urlsCreator          = urlsCreator;
     _printableHtmlCreator = new PrintableHtmlCreator();
 }
        public object ViewDocument(IUrlsCreator urlsCreator, IPrintableHtmlCreator printableHtmlCreator,
                                   string path, bool useHtmlBasedEngine = false, bool usePngImagesForHtmlBasedEngine = false,
                                   int?count              = null, int?width   = null,
                                   int?quality            = null, bool usePdf = true,
                                   int?preloadPagesCount  = null, bool convertWordDocumentsCompletely = false,
                                   string fileDisplayName = null,
                                   string watermarkText   = null, int?watermarkColor = null,
                                   WatermarkPosition watermarkPosition  = WatermarkPosition.Diagonal, float watermarkWidth = 0,
                                   bool ignoreDocumentAbsence           = false,
                                   bool supportPageRotation             = false,
                                   bool supportListOfContentControls    = false,
                                   bool supportListOfBookmarks          = false,
                                   bool embedImagesIntoHtmlForWordFiles = false,
                                   string instanceId = null,
                                   string locale     = null)
        {
            string pdfDownloadUrl = null;
            string filename       = Path.GetFileName(path);

            string[] imageUrls = null;

            string downloadUrl = urlsCreator.GetFileUrl(path, false, false, fileDisplayName);

            pdfDownloadUrl = urlsCreator.GetFileUrl(path, true, false, fileDisplayName,
                                                    watermarkText, watermarkColor,
                                                    watermarkPosition, watermarkWidth,
                                                    ignoreDocumentAbsence,
                                                    useHtmlBasedEngine, supportPageRotation,
                                                    null);

            string pdfPrintUrl = urlsCreator.GetFileUrl(path, true, true, fileDisplayName,
                                                        watermarkText, watermarkColor,
                                                        watermarkPosition, watermarkWidth,
                                                        ignoreDocumentAbsence,
                                                        useHtmlBasedEngine, supportPageRotation,
                                                        null);

            string[] pageHtml  = null, pageCss = null;
            string   sharedCss = null;

            int pageCount;

            if (useHtmlBasedEngine)
            {
                pageCount = _viewingService.GenerateHtml(path, null, null, null, null, null, true, false, true, false, false, false, false, false);
            }
            else
            {
                pageCount = _viewingService.GeneratePageImages(path, new ViewingOptions());
            }

            if (useHtmlBasedEngine)
            {
                _viewingService.GetPagesHtml(path, 0, pageCount, out pageHtml, out pageCss);
                sharedCss = _viewingService.GetPagesSharedCss(path);
            }
            else
            {
                imageUrls = urlsCreator.GetImageUrlsInternal(path, 0, pageCount, width, quality, usePdf,
                                                             watermarkText, watermarkColor, watermarkPosition, watermarkWidth,
                                                             ignoreDocumentAbsence,
                                                             useHtmlBasedEngine, supportPageRotation,
                                                             null, locale);
            }

            string javaScriptDescFileContents = _viewingService.GenerateJavaScriptDescription(path, null, true, useHtmlBasedEngine, !useHtmlBasedEngine && !usePdf, false, true);

            string extension = Path.GetExtension(path);
            var    data      = new
            {
                path,
                id        = "",
                doc_type  = TypesMapper.GetDocumentTypes(extension).FirstOrDefault().ToString(),
                fileType  = TypesMapper.GetFileType(extension).ToString(),
                pageCount = pageCount,
                url       = downloadUrl,
                pdfDownloadUrl,
                name = filename,
                imageUrls,
                token = "",
                pdfPrintUrl,
                pageHtml,
                pageCss,
                documentDescription = javaScriptDescFileContents,
                sharedCss
            };

            return(data);
        }
        public object ViewDocument(IUrlsCreator urlsCreator, IPrintableHtmlCreator printableHtmlCreator,
                                        string path, bool useHtmlBasedEngine = false, bool usePngImagesForHtmlBasedEngine = false,
                                         int? count = null, int? width = null,
                                         int? quality = null, bool usePdf = true,
                                         int? preloadPagesCount = null, bool convertWordDocumentsCompletely = false,
                                         string fileDisplayName = null,
                                         string watermarkText = null, int? watermarkColor = null,
                                         WatermarkPosition watermarkPosition = WatermarkPosition.Diagonal, float watermarkWidth = 0,
                                         bool ignoreDocumentAbsence = false,
                                         bool supportPageRotation = false,
                                         bool supportListOfContentControls = false,
                                         bool supportListOfBookmarks = false,
                                         bool embedImagesIntoHtmlForWordFiles = false,
                                         string instanceId = null,
                                         string locale = null)
        {
            string pdfDownloadUrl = null;
            string filename = Path.GetFileName(path);
            string[] imageUrls = null;

            string downloadUrl = urlsCreator.GetFileUrl(path, false, false, fileDisplayName);
            pdfDownloadUrl = urlsCreator.GetFileUrl(path, true, false, fileDisplayName,
                                                    watermarkText, watermarkColor,
                                                    watermarkPosition, watermarkWidth,
                                                    ignoreDocumentAbsence,
                                                    useHtmlBasedEngine, supportPageRotation,
                                                    null);

            string pdfPrintUrl = urlsCreator.GetFileUrl(path, true, true, fileDisplayName,
                watermarkText, watermarkColor,
                watermarkPosition, watermarkWidth,
                ignoreDocumentAbsence,
                useHtmlBasedEngine, supportPageRotation,
                null);

            string[] pageHtml = null, pageCss = null;
            string sharedCss = null;

            int pageCount;
            if (useHtmlBasedEngine)
                pageCount = _viewingService.GenerateHtml(path, null, null, null, null, null, true, false, true, false, false, false, false, false);
            else
                pageCount = _viewingService.GeneratePageImages(path, new ViewingOptions());

            if (useHtmlBasedEngine)
            {
                    _viewingService.GetPagesHtml(path, 0, pageCount, out pageHtml, out pageCss);
                    sharedCss = _viewingService.GetPagesSharedCss(path);
            }
            else
            {
                imageUrls = urlsCreator.GetImageUrlsInternal(path, 0, pageCount, width, quality, usePdf,
                    watermarkText, watermarkColor, watermarkPosition, watermarkWidth,
                    ignoreDocumentAbsence,
                    useHtmlBasedEngine, supportPageRotation,
                    null, locale);
            }

            string javaScriptDescFileContents = _viewingService.GenerateJavaScriptDescription(path, null, true, useHtmlBasedEngine, !useHtmlBasedEngine && !usePdf, false, true);

            string extension = Path.GetExtension(path);
            var data = new
            {
                path,
                id = "",
                doc_type = TypesMapper.GetDocumentTypes(extension).FirstOrDefault().ToString(),
                fileType = TypesMapper.GetFileType(extension).ToString(),
                pageCount = pageCount,
                url = downloadUrl,
                pdfDownloadUrl,
                name = filename,
                imageUrls,
                token = "",
                pdfPrintUrl,
                pageHtml,
                pageCss,
                documentDescription = javaScriptDescFileContents,
                sharedCss
            };

            return data;
        }
 protected ViewDocumentHandler(IUrlsCreator urlsCreator)
 {
     _urlsCreator = urlsCreator;
     _printableHtmlCreator = new PrintableHtmlCreator();
 }