Чертежи DXF

Изнасяне на чертежи DXF към PDF

Aspose.CAD предоставя възможността да зарежда същностите на чертежите AutoCAD DXF и да ги визуализира като цял чертеж във формат PDF. Подходът за конвертиране от DXF в PDF работи по следния начин:

  1. Зареждане на файл с чертеж DXF чрез фабричния метод Image.load.
  2. Създаване на обект от класа CadRasterizationOptions и задаване на свойствата PageHeight и PageWidth.
  3. Създаване на обект от класа PdfOptions и задаване на свойството VectorRasterizationOptions.
  4. Извикване на Image.Save, като се предава обект от PdfOptions като втори параметър.

Примерът на код по-долу показва как да конвертирате файл, използвайки настройките по подразбиране.

// For complete examples and data files, please go to https://github.com/aspose-cad/Aspose.CAD-for-Java
// The path to the resource directory.
String dataDir = Utils.getDataDir(ExportDXFDrawingToPDF.class) + "DXFDrawings/";
String srcFile = dataDir + "conic_pyramid.dxf";
Image image = Image.load(srcFile);
// Create an instance of CadRasterizationOptions and set its various properties
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setBackgroundColor(Color.getWhite());
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
// Create an instance of PdfOptions
PdfOptions pdfOptions = new PdfOptions();
// Set the VectorRasterizationOptions property
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
// Export the DXF to PDF
image.save(dataDir + "conic_pyramid_out_.pdf", pdfOptions);

Поддържани формати

В момента поддържаме изцяло форматите на файловете AutoCAD DXF 2010. Не можем да гарантираме, че предходните версии на DXF са 100% валидни. Планираме да включим още формати и функции в бъдещите версии на Aspose.CAD.

Поддържани елементи

В момента поддържаме всички широко използвани 2D елементи и техните основни стойности по подразбиране, както следва:

  1. Подравнено измерение
  2. Ъглово измерение
  3. Дъга
  4. Атрибут
  5. Блокова референция
  6. Кръг
  7. Диаметърно измерване
  8. Елипса
  9. Запълване
  10. Линия
  11. Много редов текст
  12. Ординатно измерване
  13. Точка
  14. Полилиния
  15. Радиално измерение
  16. Лъч
  17. Въртящо измерение
  18. Таблица
  19. Текст
  20. Хоризонтална линия

Управление на паметта

Свойството ExactReallocateOnly може да се използва за контрол на преалокацията на паметта. Преалокацията е най-вероятно да се случи за предварително заделени кешове. Тя може да се случи, когато системата установи, че заделеното пространство няма да е достатъчно.

  • Ако ExactReallocateOnly е зададено на стойността по подразбиране, False, пространството се преалокира към същото средство.
  • Когато е зададено на True, преалокацията не може да надвишава максималното зададено пространство. В този случай заделеният в паметта кеш (който изисква преалокация) се освобождава и се заделя пространство на диска.

Изнасяне на конкретен слой от чертежи DXF към PDF

Този подход работи по следния начин:

  1. Отваряне на файл с чертеж DXF чрез фабричния метод Image.load.
  2. Създаване на екземпляр на CadRasterizationOptions и задаване на свойствата PageWidth и PageHeight.
  3. Добавяне на слоеве към екземпляра на CadRasterizationOptions.
  4. Създаване на екземпляр на PdfOptions и задаване на неговото свойство VectorRasterizationOptions.
  5. Изнасяне на чертежа към PDF чрез метода Image.save.

Примерът на код по-долу показва как да конвертирате конкретен слой от DXF в PDF.

// For complete examples and data files, please go to https://github.com/aspose-cad/Aspose.CAD-for-Java
// The path to the resource directory.
String dataDir = Utils.getDataDir(ExportSpecificLayerOfDXFDrawingToPDF.class) + "DXFDrawings/";
String srcFile = dataDir + "conic_pyramid.dxf";
Image image = Image.load(srcFile);
// Create an instance of CadRasterizationOptions and set its various properties
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
// Add desired layers
rasterizationOptions.getLayers().add("0");
// Create an instance of PdfOptions
PdfOptions pdfOptions = new PdfOptions();
// Set the VectorRasterizationOptions property
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
// Export the DXF to PDF
image.save(dataDir + "conic_pyramid_layer_out_.pdf", pdfOptions);

Изнасяне на конкретен слой от чертежи DXF към изображение

Този подход работи по следния начин:

  1. Отваряне на файл с чертеж DXF чрез фабричния метод Image.load.
  2. Създаване на екземпляр на CadRasterizationOptions и задаване на свойствата PageWidth и PageHeight.
  3. Добавяне на слоеве към екземпляра на CadRasterizationOptions.
  4. Създаване на екземпляр на JpegOptions и задаване на неговото свойство VectorRasterizationOptions.
  5. Изнасяне на чертежа към изображение чрез метода Image.save.

Примерът на код по-долу показва как да конвертирате конкретен слой от DXF в изображение.

// The path to the resource directory.
String dataDir = Utils.getDataDir(ExportSpecificDXFLayoutToPDF.class) + "DXFDrawings\\";
String srcFile = dataDir + "for_layers_test.dwf";
DwfImage image =(DwfImage)Image.load(srcFile);
List<String> layersNames=image.getLayers().getLayersNames();
DwfWhipLayer layer = image.getLayers().getLayerByName("0");
for (DwfWhipLayer lr : image.getLayers())
{
//...
}
// Create an instance of CadRasterizationOptions and set its various properties
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
String[] stringArray = Arrays.copyOf(layersNames.toArray(), layersNames.toArray().length, String[].class);
List<String> stringList = Arrays.asList(stringArray);
// Add desired layers
rasterizationOptions.setLayers(stringList);
JpegOptions jpegOptions = new JpegOptions();
jpegOptions.setVectorRasterizationOptions(rasterizationOptions);
String output = dataDir+"for_layers_test.jpg";
// Export the DXF to Image
image.save(output, jpegOptions);

Визуализиране на файлове PDF като част от чертежи DXF

Този подход работи по следния начин:

  1. Зареждане на файл с чертеж DXF чрез фабричния метод Image.load.
  2. Създаване на обект от класа CadRasterizationOptions и зареждане на файлове PDF.
  3. Задаване на свойствата PageHeight и PageWidth.
  4. Извикване на Image.save и запазване на файла.

Примерът на код по-долу показва как да визуализирате файлове PDF като част от чертежи DXF.

String srcFile = dataDir + "conic_pyramid.dxf";
Image image = Image.load(srcFile);
// Create an instance of CadRasterizationOptions and set its various properties
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setBackgroundColor(Color.getWhite());
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
// Create an instance of PdfOptions
PdfOptions pdfOptions = new PdfOptions();
// Set the VectorRasterizationOptions property
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
// Export the DXF to PDF
image.save(dataDir + "conic_pyramid_out_.pdf", pdfOptions);

Изнасяне на DXF в WMF

Този подход работи по следния начин:

  1. Зареждане на файл с чертеж DXF чрез фабричния метод Image.load.
  2. Създаване на обект от класа CadRasterizationOptions и зареждане на файлове PDF.
  3. Задаване на свойствата PageHeight и PageWidth.
  4. Извикване на Image.save и запазване на файла.

Примерът на код по-долу показва как да изнесете DXF в WMF.

String srcFile = dataDir + "conic_pyramid.dxf";
Image image = Image.load(srcFile);
IfcImage cadImage = (IfcImage)Image.load((dataDir +"example.ifc"));
try
{
{
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(100);
rasterizationOptions.setPageHeight(100);
WmfOptions wmfOptions = new WmfOptions();
cadImage.save(dataDir+" example.ifc.wmf", wmfOptions);
}
}
finally
{
cadImage.dispose();
}
// Export the DXF to PDF
image.save(dataDir + "conic_pyramid_out_.pdf");
}

Поддръжка за Запазване на файлове DXF

Aspose.CAD предоставя възможността да зарежда файлове AutoCAD DXF и да прави промени в тях и да ги запазва отново като файл DXF. Примерният код по-долу показва как да се постигнат конкретните изисквания

String dataDir = Utils.getDataDir(SaveDXFFiles.class) + "CADConversion/";
String srcFile = dataDir + "conic_pyramid.dxf";
CadImage cadImage = (CadImage)Image.load(srcFile);
cadImage.save(dataDir+"conic.dxf");

Експорт на вграден подложен DGN за формат DXF

Aspose.CAD предоставя възможността за зареждане на файлове AutoCAD DXF и експортиране на вграден DGN подложен за формата DXF.

Примерът на код по-долу показва как да се постигнат конкретните изисквания.

String dataDir = Utils.getDataDir(ExportEmbeddedDGN.class) + "ExportingDGN/";
String fileName = dataDir + "BlockRefDgn.dwg";
com.aspose.cad.Image objImage = com.aspose.cad.Image.load(fileName);
{
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setLayouts(new String[] {"Model"});
PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
objImage.save(dataDir + "BlockRefDgn.pdf", pdfOptions);
}

Изнасяне на конкретно DXF Layout към PDF

Този подход работи по следния начин:

  1. Отваряне на файл с чертеж DXF чрез фабричния метод Image.load.
  2. Създаване на екземпляр на CadRasterizationOptions и задаване на свойствата PageWidth и PageHeight.
  3. Задаване на желаните имена на слоевете чрез свойството CadRasterizationOptions.Layouts.
  4. Създаване на екземпляр на PdfOptions и задаване на неговото свойство VectorRasterizationOptions.
  5. Изнасяне на чертежа към PDF чрез метода Image.save.

Примерът на код по-долу показва как да конвертирате конкретен layout от DXF в PDF.

// For complete examples and data files, please go to https://github.com/aspose-cad/Aspose.CAD-for-Java
// The path to the resource directory.
String dataDir = Utils.getDataDir(ExportSpecificDXFLayoutToPDF.class) + "DXFDrawings/";
String srcFile = dataDir + "conic_pyramid.dxf";
Image image = Image.load(srcFile);
// Create an instance of CadRasterizationOptions and set its various properties
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
// Specify desired layout name
rasterizationOptions.setLayouts(new String[] {"Model"});
// Create an instance of PdfOptions
PdfOptions pdfOptions = new PdfOptions();
// Set the VectorRasterizationOptions property
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
// Export the DXF to PDF
image.save(dataDir + "conic_pyramid_layout_out_.pdf", pdfOptions);