我很难使用 c#.net 将 cdr 文件转换为 jpg 进行预览。有人告诉我cdr文件有嵌入位图,有没有简单的方法来提取它?

现在我正在运行一个非常糟糕的解决方案,从我的应用程序调用 uniconvertor 转换为 svg,然后使用 imagemagick 将 svg 文件转换为 jpg。有一个更好的方法吗?

最佳答案

您需要将 corelDRAW: C:\Program Files (x86)\Corel\CorelDRAW Graphics Suite 13\Programs\CorelDraw.tlb 中的类型库复制到您的 /bin 文件夹中并创建对它的引用。完成此操作后,您应该能够将 .CDR 文件导出为多种不同格式。下面的示例代码将 .cdr 转换为 .png。
using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using CorelDRAW; namespace WebApplication1 { public partial class _Default : System.Web.UI.Page { protected void Button1_Click(object sender, EventArgs e) { CorelDRAW.Application cdr = new Application(); cdr.OpenDocument(@"C:\Users\user\Desktop\500074.cdr", 1); cdr.ActiveDocument.ExportBitmap( @"C:\Users\user\Desktop\newImage.png", CorelDRAW.cdrFilter.cdrPNG, CorelDRAW.cdrExportRange.cdrCurrentPage, CorelDRAW.cdrImageType.cdrRGBColorImage, 0, 0, 72, 72, CorelDRAW.cdrAntiAliasingType.cdrNoAntiAliasing, false, true, true, false, CorelDRAW.cdrCompressionType.cdrCompressionNone, null).Finish(); cdr.ActiveDocument.Close(); cdr.Quit(); } protected void Page_Load(object sender, EventArgs e) { } } }
此代码会将 .cdr 转换为 .pdf:
protected void Button2_Click(object sender, EventArgs e) { CorelDRAW.Application cdr = new Application(); cdr.OpenDocument(@"C:\Users\user\Desktop\500074.cdr", 1); cdr.ActiveDocument.PublishToPDF(@"C:\Users\user\Desktop\NewImage.pdf"); cdr.ActiveDocument.Close(); cdr.Quit(); }

关于c# - 使用 .net 转换 cdr (Corel Draw),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4864765/

10-10 15:35