Gambar DXF
Mengekspor Gambar DXF ke PDF
Aspose.CAD menyediakan fitur untuk memuat entitas gambar DXF AutoCAD dan merendernya sebagai gambar keseluruhan ke format PDF. Pendekatan konversi DXF ke PDF bekerja sebagai berikut:
- Muat file gambar DXF menggunakan metode pabrik Image.Load.
- Buat objek dari kelas CadRasterizationOptions dan atur properti PageHeight & PageWidth.
- Buat objek dari kelas PdfOptions dan atur properti VectorRasterizationOptions.
- Panggil Image.Save sambil mengoper objek PdfOptions sebagai parameter kedua.
Contoh kode di bawah menunjukkan cara mengonversi file menggunakan pengaturan default.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (Aspose.CAD.Image image = Aspose.CAD.Image.Load(sourceFilePath)) | |
{ | |
// Create an instance of CadRasterizationOptions and set its various properties | |
Aspose.CAD.ImageOptions.CadRasterizationOptions rasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions(); | |
rasterizationOptions.BackgroundColor = Aspose.CAD.Color.White; | |
rasterizationOptions.PageWidth = 1600; | |
rasterizationOptions.PageHeight = 1600; | |
// Create an instance of PdfOptions | |
Aspose.CAD.ImageOptions.PdfOptions pdfOptions = new Aspose.CAD.ImageOptions.PdfOptions(); | |
// Set the VectorRasterizationOptions property | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
MyDir = MyDir + "conic_pyramid_out.pdf"; | |
//Export the DXF to PDF | |
image.Save(MyDir, pdfOptions); | |
} |
Format yang Didukung
Saat ini kami sepenuhnya mendukung format file DXF AutoCAD 2010. Versi DXF sebelumnya tidak dijamin 100% valid. Kami berencana untuk menyertakan lebih banyak format dan fitur di versi Aspose.CAD mendatang.
Entitas yang Didukung
Saat ini kami mendukung semua entitas 2D yang umum dan parameter default dasar mereka sebagai berikut:
- Dimensi Sejajar
- Dimensi Sudut
- Busur
- Atribut
- Referensi Blok
- Lingkaran
- Dimensi Diameter
- Elips
- Hachur
- Garis
- Teks Multiline
- Dimensi Ordinat
- Titik
- Polyline
- Dimensi Radial
- Sinar
- Dimensi Putar
- Tabel
- Teks
- Xline
Manajemen Memori
Properti ExactReallocateOnly dari kelas Cache dapat digunakan untuk mengontrol realokasi memori. Realokasi paling mungkin terjadi untuk cache yang sudah dialokasikan sebelumnya. Hal ini dapat terjadi ketika sistem menyadari bahwa ruang yang dialokasikan tidak cukup.
- Jika ExactReallocateOnly diatur ke nilai default, False, ruang akan dialokasikan kembali ke media yang sama.
- Ketika diatur ke True, realokasi tidak dapat melebihi ruang maksimum yang ditentukan. Dalam hal ini, cache dalam memori yang sudah ada (yang memerlukan realokasi) dibebaskan dan ruang tambahan dialokasikan di disk.
Mengekspor Lapisan Spesifik dari Gambar DXF ke PDF
Pendekatan ini bekerja sebagai berikut:
- Buka file gambar DXF menggunakan metode pabrik Image.Load.
- Buat sebuah instance dari CadRasterizationOptions dan tentukan properti PageWidth & PageHeight.
- Tambahkan lapisan ke objek CadRasterizationOptions.
- Buat sebuah instance dari PdfOptions & atur properti VectorRasterizationOptions -nya.
- Panggil metode Image.Save dan oper objek PdfOptions sebagai parameter kedua.
Contoh kode di bawah menunjukkan cara mengonversi lapisan tertentu dari DXF ke PDF.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (Aspose.CAD.Image image = Aspose.CAD.Image.Load(sourceFilePath)) | |
{ | |
// Create an instance of CadRasterizationOptions and set its various properties | |
Aspose.CAD.ImageOptions.CadRasterizationOptions rasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions(); | |
rasterizationOptions.PageWidth = 1600; | |
rasterizationOptions.PageHeight = 1600; | |
// Add desired layers | |
rasterizationOptions.Layers = new string[] { "LayerA" }; | |
// Create an instance of PdfOptions | |
Aspose.CAD.ImageOptions.PdfOptions pdfOptions = new Aspose.CAD.ImageOptions.PdfOptions(); | |
// Set the VectorRasterizationOptions property | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
MyDir = MyDir + "conic_pyramid_layer_out.pdf"; | |
//Export the DXF to PDF | |
image.Save(MyDir, pdfOptions); | |
} |
Menerapkan File PDF sebagai Bagian dari Gambar DXF
Pendekatan ini bekerja sebagai berikut:
- Muat file gambar DXF menggunakan metode Image.Load pabrik.
- Buat objek dari kelas CadRasterizationOptions dan muat file PDF.
- Atur properti PageHeight & PageWidth.
- Panggil Image.Save dan simpan file.
Contoh kode di bawah menunjukkan cara menerapkan file PDF sebagai bagian dari gambar DXF.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (Aspose.CAD.Image image = Aspose.CAD.Image.Load(sourceFilePath)) | |
{ | |
// Create an instance of CadRasterizationOptions and set its various properties | |
Aspose.CAD.ImageOptions.CadRasterizationOptions rasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions(); | |
rasterizationOptions.PageWidth = 1600; | |
rasterizationOptions.PageHeight = 1600; | |
// Specify desired layout name | |
rasterizationOptions.Layouts = new string[] { "Model" }; | |
// Create an instance of PdfOptions | |
Aspose.CAD.ImageOptions.PdfOptions pdfOptions = new Aspose.CAD.ImageOptions.PdfOptions(); | |
// Set the VectorRasterizationOptions property | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
MyDir = MyDir + "conic_pyramid_layout_out.pdf"; | |
//Export the DXF to PDF | |
image.Save(MyDir, pdfOptions); | |
} |
Mengekspor DGN Underlay yang Terdapat di dalam untuk format DXF
Aspose.CAD menyediakan fitur untuk memuat file DXF AutoCAD dan mengekspor DGN underlay yang terdapat di dalamnya untuk format DXF.
Contoh kode di bawah menunjukkan cara mencapai persyaratan yang ditentukan.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (CadImage cadImage = (CadImage)Image.Load(sourceFilePath)) | |
{ | |
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions(); | |
rasterizationOptions.Layouts = new[] { "Model" }; | |
PdfOptions pdfOptions = new PdfOptions(); | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
cadImage.Save(MyDir + "conic_pyramid.pdf", pdfOptions); | |
} |
Dukungan untuk Menyimpan File DXF
Aspose.CAD menyediakan fitur untuk memuat file DXF AutoCAD dan melakukan perubahan di dalamnya serta menyimpannya kembali sebagai file DXF.
Contoh kode di bawah menunjukkan cara mencapai persyaratan yang ditentukan.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (CadImage cadImage = (CadImage)Image.Load(sourceFilePath)) | |
{ | |
// any entities updates | |
cadImage.Save(MyDir+"conic.dxf"); | |
} | |
Mengekspor DXF ke WMF
Pendekatan ini bekerja sebagai berikut:
- Muat file gambar DXF menggunakan metode Image.Load pabrik.
- Buat objek dari kelas CadRasterizationOptions dan muat file PDF.
- Atur properti PageHeight & PageWidth.
- Panggil Image.Save dan simpan file.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (var image = Image.Load("NRB-GRID-BLOCK-MD-PROVALVDK-241000-162000-45400.dgn")) | |
{ | |
var vectorOptions = new CadRasterizationOptions(); | |
vectorOptions.AutomaticLayoutsScaling = true; | |
vectorOptions.BackgroundColor = Color.Black; | |
vectorOptions.PageWidth = 500; | |
vectorOptions.PageHeight = 500; | |
WmfOptions wmfOptions = new WmfOptions() | |
{ | |
VectorRasterizationOptions = vectorOptions | |
}; | |
image.Save("NRB-GRID-BLOCK-MD-PROVALVDK-241000-162000-45400.dgn.wmf", wmfOptions); | |
} |
Mengekspor Layout DXF Spesifik ke PDF
Pendekatan ini bekerja sebagai berikut:
- Buka file gambar DXF menggunakan metode Image.Load pabrik.
- Buat sebuah instance dari CadRasterizationOptions dan tentukan properti PageWidth & PageHeight.
- Tentukan nama layout yang diinginkan menggunakan properti CadRasterizationOptions.Layouts.
- Buat sebuah instance dari PdfOptions & atur properti VectorRasterizationOptions -nya.
- Ekspor gambar ke PDF dengan memanggil metode Image.Save sambil mengoper objek PdfOptions sebagai parameter kedua.
Contoh kode di bawah menunjukkan cara mengonversi layout spesifik DXF ke PDF.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "conic_pyramid.dxf"; | |
using (Aspose.CAD.Image image = Aspose.CAD.Image.Load(sourceFilePath)) | |
{ | |
// Create an instance of CadRasterizationOptions and set its various properties | |
Aspose.CAD.ImageOptions.CadRasterizationOptions rasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions(); | |
rasterizationOptions.PageWidth = 1600; | |
rasterizationOptions.PageHeight = 1600; | |
// Specify desired layout name | |
rasterizationOptions.Layouts = new string[] { "Model" }; | |
// Create an instance of PdfOptions | |
Aspose.CAD.ImageOptions.PdfOptions pdfOptions = new Aspose.CAD.ImageOptions.PdfOptions(); | |
// Set the VectorRasterizationOptions property | |
pdfOptions.VectorRasterizationOptions = rasterizationOptions; | |
MyDir = MyDir + "conic_pyramid_layout_out.pdf"; | |
//Export the DXF to PDF | |
image.Save(MyDir, pdfOptions); | |
} |
Dukungan Clipping Blok
Aspose.CAD menyediakan fitur Clipping Blok. Pendekatan Clipping Blok bekerja sebagai berikut:
- Muat file gambar DXF menggunakan metode Image.Load pabrik.
- Buat objek dari kelas CadRasterizationOptions dan muat file PDF.
- Atur properti yang diinginkan dari CadRasterizationOptions.
- Panggil Image.Save sambil mengoper objek PdfOptions sebagai parameter kedua dan simpan filenya.
Contoh kode di bawah menunjukkan bagaimana Clipping Blok bekerja.
// For complete examples and data files, please go to https://github.com/aspose-cad/Aspose.CAD-for-.NET | |
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string inputFile = MyDir + "SLS-CW-CD-CE001-R01_blockClip.dxf"; | |
string outputFile = MyDir + "SLS-CW-CD-CE001-R01_blockClip.pdf"; | |
using (CadImage cadImage = (CadImage)Image.Load(inputFile)) | |
{ | |
var rasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions | |
{ | |
BackgroundColor = Aspose.CAD.Color.White, | |
DrawType = Aspose.CAD.FileFormats.Cad.CadDrawTypeMode.UseObjectColor, | |
PageWidth = 1200, | |
PageHeight = 1600, | |
Margins = new Margins | |
{ | |
Top = 5, | |
Right = 30, | |
Bottom = 5, | |
Left = 30 | |
}, | |
Layouts = new string[] { "Model" } | |
}; | |
PdfOptions pdfOptions = new Aspose.CAD.ImageOptions.PdfOptions | |
{ | |
VectorRasterizationOptions = rasterizationOptions | |
}; | |
cadImage.Save(outputFile, pdfOptions); |
Mengekspor Gambar ke DXF
Dengan menggunakan Aspose.CAD, Anda dapat mengekspor gambar ke format DXF. Dengan pendekatan ini, Anda dapat melakukan tindakan berikut:
- Atur font baru
- Sembunyikan entitas
- Perbarui teks
Potongan kode berikut menunjukkan cara melakukan tindakan yang disebutkan di atas.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
foreach (var file in new DirectoryInfo(MyDir).EnumerateFiles("*.dxf")) | |
{ | |
// **************************** | |
// Set new font per document | |
// **************************** | |
using (var cadImage = (CadImage)Image.Load(file.FullName)) | |
{ | |
// Iterate over the items of CadStyleTableObject | |
foreach (CadStyleTableObject style in cadImage.Styles) | |
{ | |
// Set font name | |
style.PrimaryFontName = "Broadway"; | |
} | |
cadImage.Save(file.FullName + "_font.dxf"); | |
} | |
// **************************** | |
// Hide all "straight" lines | |
// **************************** | |
using (var cadImage = (CadImage)Image.Load(file.FullName)) | |
{ | |
foreach (var entity in cadImage.Entities) | |
{ | |
// Make lines invisible | |
if (entity.TypeName == CadEntityTypeName.LINE) | |
{ | |
entity.Visible = 0; | |
} | |
} | |
cadImage.Save(file.FullName + "_lines.dxf"); | |
} | |
// **************************** | |
// Manipulations with text | |
// **************************** | |
using (var cadImage = (CadImage)Image.Load(file.FullName)) | |
{ | |
foreach (var entity in cadImage.Entities) | |
{ | |
if (entity.TypeName == CadEntityTypeName.TEXT) | |
{ | |
((CadText)entity).DefaultValue = "New text here!!! :)"; | |
break; | |
} | |
} | |
cadImage.Save(file.FullName + "_text.dxf"); | |
} | |
} | |
Mengekspor Lapisan Spesifik dari Gambar DXF ke Gambar
Pendekatan ini bekerja sebagai berikut:
- Buka file gambar DXF menggunakan metode Image.Load pabrik.
- Buat sebuah instance dari CadRasterizationOptions dan tentukan properti PageWidth dan PageHeight.
- Tambahkan lapisan ke objek CadRasterizationOptions.
- Buat sebuah instance dari JpegOptions dan atur properti VectorRasterizationOptions.
- Ekspor gambar ke PDF menggunakan metode Image.Save.
Contoh kode di bawah menunjukkan cara mengonversi lapisan spesifik DXF ke Gambar.
// The path to the documents directory. | |
string MyDir = RunExamples.GetDataDir_DXFDrawings(); | |
string sourceFilePath = MyDir + "for_layers_test.dwf"; | |
using (var image = (Aspose.CAD.FileFormats.Cad.CadImage)Aspose.CAD.Image.Load(sourceFilePath)) | |
{ | |
// Create an instance of CadRasterizationOptions | |
var rasterizationOptions = new Aspose.CAD.ImageOptions.CadRasterizationOptions(); | |
// Set image width & height | |
rasterizationOptions.PageWidth = 500; | |
rasterizationOptions.PageHeight = 500; | |
// Set the drawing to render at the center of image | |
// rasterizationOptions.CenterDrawing = true; | |
// Get the layers in an instance of CadLayersDictionary | |
var layersList = image.Layers; | |
// Iterate over the layers | |
foreach (var layerName in layersList.GetLayersNames()) | |
{ | |
// Display layer name for tracking | |
Console.WriteLine("Start with " + layerName); | |
// Add the layer name to the CadRasterizationOptions's layer list | |
rasterizationOptions.Layers = new string[] { "LayerA" }; | |
// Create an instance of JpegOptions (or any ImageOptions for raster formats) | |
var options = new Aspose.CAD.ImageOptions.JpegOptions(); | |
// Set VectorRasterizationOptions property to the instance of CadRasterizationOptions | |
options.VectorRasterizationOptions = rasterizationOptions; | |
//Export each layer to Jpeg format | |
image.Save(layerName + "_out.jpg", options); | |
} | |
} |