【发布时间】:2015-07-25 18:30:31
【问题描述】:
我无法让 pechkin 或 tuespechkin 在我的 azure 网站上工作。
每当我尝试访问该站点时,它都会挂起而没有错误消息(即使关闭了 customErrors)。我还缺少什么进一步的设置吗?一切都在本地完美运行。
对于 64 位应用程序,我将完成以下步骤:
- 使用 Azure 创建一个新的 Empty MVC 应用程序,确保选中 Host in the cloud
将应用更改为 64 位
登录 azure 门户并将应用升级到基本托管并将其更改为 64 位
- 安装 TuesPechkin.Wkhtmltox.Win64 和 TuesPechkin nuget 包
-
添加一个单例类以返回 IConverter
public class TuesPechkinConverter { private static IConverter converter; public static IConverter Converter { get { if (converter == null) { converter = new ThreadSafeConverter( new PdfToolset( new Win64EmbeddedDeployment( new TempFolderDeployment()))); } return converter; } } } -
在 Index Action 中添加一个 Home 控制器,代码如下:
var document = new HtmlToPdfDocument { GlobalSettings = { ProduceOutline = true, DocumentTitle = "Pretty Websites", PaperSize = PaperKind.A4, // Implicit conversion to PechkinPaperSize Margins = { All = 1.375, Unit = Unit.Centimeters } }, Objects = { new ObjectSettings { HtmlText = "<h1>Pretty Websites</h1><p>This might take a bit to convert!</p>" }, new ObjectSettings { PageUrl = "www.google.com" } } }; byte[] pdfBuf = TuesPechkinConverter.Converter.Convert(document); return File(pdfBuf, "application/pdf", "DownloadName.pdf");
【问题讨论】:
-
对不起,如果我误解了,但我不认为 TuesPechkin 实际上适用于 Azure 网站(根据 github 页面)github.com/tuespetre/TuesPechkin。原因是该库使用了 azure 下不可用的 GDI。
-
啊,我现在发现了——我可能需要使用第 3 方转换服务 :( 开始调查它,正如这里提到的 stackoverflow.com/questions/23059144/pechkin-with-windows-azure
-
是否有其他快速且易于使用的替代方案可以在 Azure 上转换 HTML > PDF?
标签: c# .net asp.net-mvc azure tuespechkin