Converting an XPS file to a DXF image in Java is a simple two-step process. The first step is to use the Aspose.PDF for Java API to export the XPS file to a JPEG image. This API is part of the Aspose.Total for Java package, which provides a comprehensive suite of tools for working with documents, images, and other file formats.
Once the XPS file has been converted to a JPEG image, the second step is to use the Aspose.Imaging for Java API to render the JPEG image to a DXF file. This API provides a range of image processing capabilities, including the ability to convert between different image formats.
By using the Aspose.PDF for Java and Aspose.Imaging for Java APIs, you can quickly and easily convert an XPS file to a DXF image in Java. Both APIs are part of the Aspose.Total for Java package, which provides a comprehensive set of tools for working with documents, images, and other file formats.
Export XPS to DXF via Java
Conversion Requirements
You can easily use Aspose.Total for Java directly from a Maven based project and include libraries in your pom.xml.
Alternatively, you can get a ZIP file from downloads .
// supports PDF, CGM, EPUB, TeX, PCL, PS, XPS, MD, MHTML, XSLFO, HTML file formats | |
// load PDF with an instance of Document | |
Document document = new Document("input.pdf"); | |
// create an object of JpegDevice | |
JpegDevice renderer = new JpegDevice(); | |
// convert first of a particular PDF page to JPEG format | |
renderer.process(document.getPages().get_Item(1), "output.jpeg"); | |
// load JPEG file | |
Image image = Image.Load("output.jpeg"); | |
// supports Dicom, Jpeg2000, Apng, Psd, Dxf, Wmf, Emz, Wmz, Tga, Svgz file formats | |
// save JPEG to PSD file format | |
image.save("output.psd", new PsdOptions()); |
Convert XPS to DXF in a Single File via Java
The API also allows you to export XPS file to DXF to a single file. In order to convert all pages, you can first render your XPS document to one TIFF file and after that, you can export the TIFF file to DXF. You can open the input file using Document class and create Resolution, TiffSettings, & TIFF device objects. You can get a single TIFF image using process method of TiffDevice class. Finally, you can load TIFF file using Image class and save it to DXF format using save method.
// supports PDF, CGM, EPUB, TeX, PCL, PS, XPS, MD, MHTML, XSLFO, HTML file formats | |
// load PDF with an instance of Document | |
Document pdfDocument = new Document("input.pdf"); | |
// Create Resolution object | |
Resolution resolution = new Resolution(300); | |
// Create TiffSettings object | |
TiffSettings tiffSettings = new TiffSettings(); | |
tiffSettings.setCompression(CompressionType.None); | |
tiffSettings.setDepth(ColorDepth.Default); | |
tiffSettings.setShape(ShapeType.Landscape); | |
// Create TIFF device | |
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings); | |
// Convert a particular page and save the image to stream | |
tiffDevice.process(pdfDocument, 1, 1, "output.tif"); | |
// load TIFF file | |
Image image = Image.Load("output.tif"); | |
// supports Dicom, Jpeg2000, Apng, Psd, Dxf, Wmf, Emz, Wmz, Tga, Svgz file formats | |
// save TIFF to PSD file format | |
image.save("output.psd", new PsdOptions()); |
Convert XPS to DXF With Watermark via Java
Using the API, you can also export XPS file to DXF with watermark in your DXF document. In order to add a watermark to you can first convert XPS to JPEG and add a watermark in it. In order to add watermark, load an image file using the Image class, create an object of the Graphics class and initialize it with Image object, create a new Matrix object and set translation and transformation to the desired angle and add watermark using Graphics.drawString method. After adding the watermark in your image, you can save the JPEG as DXF format.
// supports PDF, CGM, EPUB, TeX, PCL, PS, XPS, MD, MHTML, XSLFO, HTML file formats | |
// load PDF with an instance of Document | |
Document document = new Document("input.pdf"); | |
// create an object of JpegDevice | |
JpegDevice renderer = new JpegDevice(); | |
// convert first of a particular PDF page to JPEG format | |
renderer.process(document.getPages().get_Item(1), "output.jpeg"); | |
// load JPEG | |
Image image = Image.load("output.jpeg"); | |
// create and initialize an instance of Graphics class | |
Graphics graphics= new Graphics(image); | |
// create an instance of Font | |
Font font = new Font("Times New Roman", 16, FontStyle.Bold); | |
// create an instance of SolidBrush and set its properties | |
SolidBrush brush = new SolidBrush(); | |
brush.setColor(Color.getBlack()); | |
brush.setOpacity(100); | |
Size sz = graphics.getImage().getSize(); | |
// create an object of Matrix class for transformation | |
Matrix matrix = new Matrix(); | |
// first a translation then a rotation | |
matrix.translate(sz.getWidth() / 2, sz.getHeight() / 2); | |
matrix.rotate(-45.0f); | |
// set the Transformation through Matrix | |
graphics.setTransform(matrix); | |
// draw a string using the SolidBrush and Font objects at specific point | |
graphics.drawString("Watermark by Aspose.Imaging for Java", font, brush, 0, 0); | |
// supports Dicom, Jpeg2000, Apng, Psd, Dxf, Wmf, Emz, Wmz, Tga, Svgz file formats | |
// save JPEG to PSD file format | |
image.save("output.psd", new PsdOptions()); |
Convert & Rotate XPS to DXF File via Java
Using the API, you can also rotate the output DXF image as per your needs. The Image.rotateFlip method can be used to rotate the image by 90/180/270-degrees and flip the image horizontally or vertically. The library provides simple methods to perform complex operations while encapsulating all ugly details. You can specify the type of rotation and flip to apply to the image. In order to rotate and flip the image, you can load the converted JPEG image using the Image class and call the Image.rotateFlip method while specifying the appropriate RotateFlipType .
// supports PDF, CGM, EPUB, TeX, PCL, PS, XPS, MD, MHTML, XSLFO, HTML file formats | |
// load PDF with an instance of Document | |
Document document = new Document("input.pdf"); | |
// create an object of JpegDevice | |
JpegDevice renderer = new JpegDevice(); | |
// convert first of a particular PDF page to JPEG format | |
renderer.process(document.getPages().get_Item(1), "output.jpeg"); | |
// load JPEG file | |
Image image = Image.Load("output.jpeg"); | |
// roate image | |
image.RotateFlip(RotateFlipType.Rotate270FlipNone); | |
// supports Dicom, Jpeg2000, Apng, Psd, Dxf, Wmf, Emz, Wmz, Tga, Svgz file formats | |
// save JPEG to PSD file format | |
image.save("output.psd", new PsdOptions()); |
Explore XPS Conversion Options with Java
What is XPS File Format?
XPS, short for XML Paper Specification, is a file format created by Microsoft to represent fixed-layout documents. XPS files contain the content and print settings of a document, making them suitable for preserving the layout and appearance of a document across different devices and platforms.
The XPS format is based on XML (eXtensible Markup Language), a widely used markup language for structured data representation. XPS files encapsulate document content, such as text, images, vector graphics, and annotations, in a structured XML format. This enables easy interpretation and rendering of the document’s visual elements.
XPS files are conceptually similar to PDF (Portable Document Format) files in that they both aim to provide a reliable way to present and share documents while preserving their formatting and layout. However, PDF files have gained broader support across different software applications and hardware devices, making them more widely accepted and compatible.
To view and work with XPS files, Microsoft provides an XPS Viewer as part of the Windows operating system. Various third-party applications and tools also offer support for opening, creating, and converting XPS files. However, compared to PDF, the range of software and hardware supporting the XPS format may be more limited.
What is DXF File Format?
The Autodesk Drawing Exchange Format (DXF) is a widely used file format developed by Autodesk for facilitating data interoperability between Autodesk software and other programs. DXF serves as a structured file format that stores drawing information as a collection of vector entities. These entities encompass various geometric shapes, such as points, lines, arcs, circles, polygons, and text. Additionally, DXF files also have the capability to support raster images.
First introduced in December 1982 as part of AutoCAD 1.0, DXF has undergone several revisions and extensions over the years. The latest revision is DXF R2018, which was introduced alongside AutoCAD 2018.
DXF files are stored as ASCII text files, allowing them to be viewed and edited in any text editor. However, dedicated programs designed for working with DXF files, such as AutoCAD, offer more comprehensive features for viewing and editing. When opened in a text editor, a DXF file is typically divided into three sections: the header, the drawing body, and the trailer. The header contains general information about the drawing, including its title, author, and creation date. The drawing body comprises the actual vector entities that constitute the drawing, while the trailer provides concluding information, such as the total number of entities in the file.
DXF files are conventionally saved with the .dxf file extension, and their versatility and widespread adoption have made them a standard for exchanging and sharing drawing data across various CAD and design applications.