Конвертировать SVG в PDF на Java
В этой статье вы найдете информацию о том, как преобразовать SVG в PDF и как использовать PdfSaveOptions и параметры MemoryStreamProvider.
SVG в PDF одной строкой кода
Статические методы класса Converter в основном используются как самый простой способ преобразования SVG в различные форматы. Вы можете преобразовать SVG в PDF в своем Java-приложении буквально с помощью одной строки кода!
1 // Invoke the convertSVG() method for SVG to PDF conversion
2 com.aspose.html.converters.Converter.convertSVG(Path.combine(getDataDir(), "shapes.svg"), new PdfSaveOptions(), Path.combine(getOutputDir(), "convert-with-single-line.pdf"));
Конвертировать SVG в PDF на Java
Если в вашем сценарии требуется рендеринг документа SVG, например, в формат файла PDF, следующий пример демонстрирует, насколько это просто:
- Загрузите файл SVG с помощью класса SVGDocument. Вы можете загрузить SVG из файла, кода SVG, потока или URL-адреса. В следующем примере мы создаем содержимое SVG с нуля.
- Создайте новый объект PdfSaveOptions. Используйте пустой конструктор PdfSaveOptions() для преобразования с параметрами сохранения по умолчанию.
- Используйте один из методов
сonvertSVG()
класса Converter, чтобы сохранить SVG в виде файла PDF. В примере мы используем метод convertHTML(content, baseUri, options, savePath)`, который принимает четыре параметра: строку с кодом SVG для преобразования, базовую папку для входного файла SVG, экземпляр класса PdfSaveOptions и путь к выходному файлу, где будет сохранен преобразованный файл.
Просмотрите следующий фрагмент кода Java, в котором показан процесс преобразования SVG в PDF с пошаговыми инструкциями:
1 // Prepare SVG code
2 String code = StringExtensions.concat("<svg xmlns='http://www.w3.org/2000/svg'>",
3 "<circle cx ='100' cy ='100' r ='50' fill='none' stroke='red' stroke-width='5' />",
4 "</svg>");
5
6 // Prepare a path for converted file saving
7 String savePath = Path.combine(getOutputDir(), "circle.pdf");
8
9 // Initialize PdfSaveOptions class
10 PdfSaveOptions options = new PdfSaveOptions();
11
12 // Convert SVG to PDF
13 com.aspose.html.converters.Converter.convertSVG(code, ".", options, savePath);
Параметры сохранения
Aspose.HTML для Java позволяет конвертировать SVG в PDF, используя стандартные или пользовательские параметры сохранения. PdfSaveOptions позволяет настроить процесс рендеринга. Вы можете указать размер страницы, поля, права доступа к файлу, тип мультимедиа CSS и т. д.
Metod | Description |
---|---|
setJpegQuality(value) | Specifies the quality of JPEG compression for images. The default value is 95. |
getCss() | Gets a CssOptions object which is used for configuration of CSS properties processing. |
setBackgroundColor(value) | Sets the color that will fill the background of every page. By default, this property is Transparent . |
setPageSetup(value) | This method sets a page setup object and uses it for configuration output page-set. |
setHorizontalResolution(value) | Sets horizontal resolution for internal images, in pixels per inch. By default this property is 300 dpi. |
setVerticalResolution(value) | Sets vertical resolution for output images in pixels per inch. The default value is 300 dpi. |
setEncryption | This method gets or sets encryption details. If it is not set, then no encryption will be performed. |
Вы можете скачать полные примеры и файлы данных по адресу GitHub.
Конвертировать SVG в PDF с использованием PdfSaveOptions
С помощью Aspose.HTML для Java вы можете программно конвертировать файлы с полным контролем над широким диапазоном параметров конвертации. Чтобы преобразовать SVG в PDF с указанием PdfSaveOptions, вы должны выполнить несколько шагов:
- Загрузите файл SVG с помощью одного из конструкторов SVGDocument() класса SVGDocument.
- Создайте новый объект
PdfSaveOptions и укажите необходимые свойства. Конструктор
PdfSaveOptions()
инициализирует экземпляр класса PdfSaveOptions, который передается методуconverSVG()
:- Используйте метод
setJpegQuality()
, чтобы указать качество сжатия JPEG. - Используйте метод
setBackgroundColor()
, чтобы установить цвет, заполняющий фон. - Используйте методы
setHorizontalResolution()
иsetVerticalResolution()
, чтобы установить разрешение по горизонтали и вертикали для выходных файлов PDF. - Используйте метод
setPageSetup()
, чтобы указать размер страницы и поля для выходного документа.
- Используйте метод
- Вызвать метод
сonvertSVG(document, options, savePath)
класса Converter.
1 // Prepare a path to a source SVG file
2 String documentPath = Path.combine(getDataDir(), "aspose.svg");
3
4 // Prepare a path for converted file saving
5 String savePath = Path.combine(getOutputDir(), "aspose-options.pdf");
6
7 // Initialize an SVG document from the file
8 SVGDocument document = new SVGDocument(documentPath);
9 try { }
10 finally { if (document != null) document.dispose(); }
11
12 // Initialize PdfSaveOptions. Set up the page-size, margins, resolutions, JpegQuality, and change the background color
13 PdfSaveOptions options = new PdfSaveOptions();
14 options.setHorizontalResolution(new Resolution(200, UnitType.AUTO));
15 options.setVerticalResolution(new Resolution(200, UnitType.AUTO));
16 com.aspose.html.drawing.Color.getGreen().CloneTo(options.getBackgroundColor());
17 options.setJpegQuality(100);
18 options.getPageSetup().setAnyPage(new Page(new com.aspose.html.drawing.Size(500, 500), new Margin(30, 10, 10, 10)));
19
20 // Convert SVG to PDF
21 com.aspose.html.converters.Converter.convertSVG(document, options, savePath);
Чтобы узнать больше о PdfSaveOptions, вы можете обратиться к статье Fine-Tuning Converters.
Aspose.HTML предлагает бесплатный онлайн конвертер SVG в PDF, который конвертирует SVG в PDF с высоким качеством, легко и быстро . Просто загрузите, конвертируйте ваши файлы и получите результат за несколько секунд!