.NETを使用してCDR(Corel Draw)を変換します
質問
CDRファイルをC#.NETを使用してプレビュー用にJPGSに変換するのに苦労しています。 CDRファイルにはビットマップが埋め込まれていると誰かが言ったのですが、簡単に抽出する方法はありますか?
現在、私のアプリケーションから、Uniconvertorを呼び出してSVGに変換し、ImageMagickを使用してSVGファイルをJPGに変換するという本当に悪い解決策を実行しています。これを行うためのより良い方法はありますか?
解決 2
結局、私はcom Interopを使用して画像をエクスポートし、Coreldrawをインストールし、Coreldraw 15.0タイプライブラリを参照する必要がありましたが、それでも最良のソリューションではありませんが、使用していたソリューションよりも優れています。
他のヒント
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();
}
CDRファイル形式の仕様とSDKは、Corel Technology Programmを通じて利用可能であることを知っています http://www.corel.com/servlet/satellite/us/en/content/1152796559574
所属していません StackOverflow