Exportando CAD
Exportar Imagens 3D AutoCAD para PDF
Aspose.CAD permite exportar imagens 3D AutoCAD para PDF. Por favor, use as Aspose.CAD.ImageOptions.CadRasterizationOptions para especificar que você deseja exportar entidades 3D.
O seguinte código de exemplo carrega um arquivo AutoCAD 3D e o exporta para PDF. Uma vez que o arquivo é convertido para PDF, você pode abri-lo usando seu visualizador de PDF favorito.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_ConvertingCAD(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (Aspose.CAD.Image cadImage = Aspose.CAD.Image.Load(sourceFilePath)) | |
{ | |
Aspose.CAD.ImageOptions.CadRasterizationOptions rasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions(); | |
rasterizationOptions.PageWidth = 500; | |
rasterizationOptions.PageHeight = 500; | |
// rasterizationOptions.TypeOfEntities = TypeOfEntities.Entities3D; | |
rasterizationOptions.Layouts = new string[] { "Model" }; | |
PdfOptions pdfOptions = new PdfOptions(); | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
MyDir = MyDir + "Export3DImagestoPDF_out.pdf"; | |
cadImage.Save(MyDir, pdfOptions); | |
} |
Exportando Layouts CAD para PDF
Aspose.CAD para .NET permite que você exporte layouts CAD para PDF. O método Save da classe CadImage pode ser usado para exportar layout(s) para o formato PDF.
O seguinte código de exemplo carrega um arquivo CAD e exporta seu layout “Modelo” para PDF. Uma vez que o arquivo é convertido para PDF, você pode abri-lo usando seu visualizador de PDF favorito.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_ConvertingCAD(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
// Create an instance of CadImage class and load the file. | |
using (Aspose.CAD.Image cadImage = (Aspose.CAD.Image)Image.Load(sourceFilePath)) | |
{ | |
// Create an instance of CadRasterizationOptions class | |
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions(); | |
rasterizationOptions.PageWidth = 1600; | |
rasterizationOptions.PageHeight = 1600; | |
// Set the Entities type property to Entities3D. | |
//rasterizationOptions.TypeOfEntities = TypeOfEntities.Entities3D; | |
rasterizationOptions.AutomaticLayoutsScaling = true; | |
rasterizationOptions.NoScaling = false; | |
rasterizationOptions.ContentAsBitmap = true; | |
// Set Layouts | |
rasterizationOptions.Layouts = new string[] { "Model" }; | |
// Create an instance of PDF options class | |
PdfOptions pdfOptions = new PdfOptions(); | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
MyDir = MyDir + "CADLayoutsToPDF_out.pdf"; | |
// Set Graphics options | |
rasterizationOptions.GraphicsOptions.SmoothingMode = SmoothingMode.HighQuality; | |
rasterizationOptions.GraphicsOptions.TextRenderingHint = TextRenderingHint.AntiAliasGridFit; | |
rasterizationOptions.GraphicsOptions.InterpolationMode = InterpolationMode.HighQualityBicubic; | |
//Export to PDF by calling the Save method | |
cadImage.Save(MyDir, pdfOptions); | |
} |
Suporte para configuração de Caneta na Exportação
Aspose.CAD para .NET permite que você adicione opções de caneta nas propriedades de exportação de CAD. Usando CadRasterizationOptions podemos definir opções de propriedades da caneta.
Abaixo está um código de exemplo para atender aos requisitos especificados.
string MyDir = RunExamples.GetDataDir_ConvertingCAD(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
CadImage cadImage = (CadImage)Image.Load(sourceFilePath); | |
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions(); | |
PdfOptions pdfOptions = new PdfOptions(); | |
// Here user can change default start cap and end cap of pens when exporting CadImage object to | |
// image. It can be using for all image formats: pdf, png, bmp, gif, jpeg2000, jpeg, psd, tiff, wmf. | |
// If user doesn't use PenOptions, system will use its own default pens (different in defferent places). | |
rasterizationOptions.PenOptions = new PenOptions | |
{ | |
StartCap = LineCap.Flat, | |
EndCap = LineCap.Flat | |
}; | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
cadImage.Save(MyDir+"9LHATT-A56_generated.pdf", pdfOptions); | |
Decompor Objeto de Inserção CAD
Aspose.CAD para .NET permite que você decompõe objetos CAD e processe entidades separadas dentro da inserção. Abaixo está um código de exemplo para atender aos requisitos especificados.
string MyDir = RunExamples.GetDataDir_ConvertingCAD(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (CadImage cadImage = (CadImage)Image.Load(sourceFilePath)) | |
{ | |
for (int i = 0; i < cadImage.Entities.Length; i++) | |
{ | |
if (cadImage.Entities[i].TypeName == CadEntityTypeName.INSERT) | |
{ | |
CadBlockEntity block = cadImage.BlockEntities[(cadImage.Entities[i] as CadInsertObject).Name]; | |
foreach (CadBaseEntity baseEntity in block.Entities) | |
{ | |
// processing of entities | |
} | |
} | |
} | |
Suporte para Entidades Proxy ACAD
Aspose.CAD para .NET permite que você leia e exporte entidades ACAD_PROXY_ENTITY. Abaixo está um código de exemplo para atender aos requisitos especificados.
string MyDir = RunExamples.GetDataDir_ConvertingCAD(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (CadImage cadImage = (CadImage)Image.Load(sourceFilePath)) | |
{ | |
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions(); | |
rasterizationOptions.UnitType = UnitType.Inch; | |
rasterizationOptions.DrawType = CadDrawTypeMode.UseObjectColor; | |
rasterizationOptions.BackgroundColor = Color.Black; | |
rasterizationOptions.Layouts = new string[] { "Model" }; | |
PdfOptions pdfOptions = new PdfOptions | |
{ | |
VectorRasterizationOptions = rasterizationOptions | |
}; | |
cadImage.Save(MyDir+"output.pdf", pdfOptions); | |
} |
Integrar Formato IGES
Aspose.CAD para .NET permite que você leia e exporte o formato IGES. Abaixo está um código de exemplo para atender aos requisitos especificados.
string MyDir = RunExamples.GetDataDir_IGESDrawings(); | |
string sourceFilePath = MyDir + ("figa2.igs"); | |
string outPath = MyDir + ("meshes.pdf"); | |
using (Image igesImage = Image.Load(sourceFilePath)) | |
{ | |
Aspose.CAD.ImageOptions.PdfOptions pdf = new Aspose.CAD.ImageOptions.PdfOptions(); | |
pdf.VectorRasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions(); | |
pdf.VectorRasterizationOptions.PageHeight = 1000; | |
pdf.VectorRasterizationOptions.PageWidth = 1000; | |
igesImage.Save("figa2.pdf", pdf); | |
} |
Suporte para Modelos de Malha
Aspose.CAD para .NET permite que você implemente e conte modelos de malha como arestas, vértices e faces que utilizam representação poligonal. Abaixo está um código de exemplo para atender aos requisitos especificados.
string MyDir = RunExamples.GetDataDir_DWGDrawings(); | |
string sourceFilePath = MyDir+("meshes.dwg"); | |
string outPath = MyDir+("meshes.pdf"); | |
using (CadImage cadImage = (CadImage)Image.Load(sourceFilePath)) | |
{ | |
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions(); | |
rasterizationOptions.PageWidth = 1600; | |
rasterizationOptions.PageHeight = 1600; | |
//rasterizationOptions.TypeOfEntities = TypeOfEntities.Entities3D; | |
rasterizationOptions.Layouts = new string[] { "Model" }; | |
PdfOptions pdfOptions = new PdfOptions | |
{ | |
VectorRasterizationOptions = rasterizationOptions | |
}; | |
{ | |
cadImage.Save(outPath, pdfOptions); | |
} | |
} |
Definir Ponto de Vista Personalizado
Aspose.CAD para .NET permite que você defina um ponto de vista personalizado para o layout do Modelo. Usando VectorRasterizationOptions você pode definir um ponto de vista personalizado. O código de exemplo abaixo mostra como definir um ponto de vista personalizado.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_ConvertingCAD(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
var outPath = Path.Combine(MyDir, "FreePointOfView_out.jpg"); | |
using (CadImage cadImage = (CadImage)Image.Load(sourceFilePath)) | |
{ | |
JpegOptions options = new JpegOptions | |
{ | |
VectorRasterizationOptions = new CadRasterizationOptions | |
{ | |
PageWidth = 1500, PageHeight = 1500 | |
} | |
}; | |
float xAngle = 10; //Angle of rotation along the X axis | |
float yAngle = 30; //Angle of rotation along the Y axis | |
float zAngle = 40; //Angle of rotation along the Z axis | |
((CadRasterizationOptions)(options.VectorRasterizationOptions)).ObserverPoint = new ObserverPoint(xAngle, yAngle, zAngle); | |
cadImage.Save(outPath, options); | |
} |