Конвертировать CDR (Corel Draw) с помощью .net - PullRequest
3 голосов
/ 01 февраля 2011

Мне трудно конвертировать файлы cdr в jpgs для предварительного просмотра с использованием c # .net.кто-то сказал мне, что файлы cdr имеют встроенное растровое изображение, есть ли простой способ извлечь его?

сейчас я запускаю очень плохое решение, из моего приложения вызывая uniconvertor для преобразования в svg, а затем конвертируя svgфайл в JPG, используя imagemagick.Есть ли лучший способ сделать это?

Ответы [ 3 ]

7 голосов
/ 18 мая 2012

Вам нужно будет скопировать библиотеку типов из 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();
    }


2 голосов
/ 10 февраля 2011

В конце концов я просто использовал com interop для экспорта изображений, мне пришлось установить coreldraw и обратиться к библиотеке типов CorelDRAW 15.0, но это не лучшее решение, но лучше, чем то, которое я использовал

0 голосов
/ 01 февраля 2011

Я знаю, что спецификация формата файла CDR и SDK доступны через программу Corel Technology http://www.corel.com/servlet/Satellite/us/en/Content/1152796559574

...