php 从SVG文件中获取SVG代码并上传

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 从SVG文件中获取SVG代码并上传相关的知识,希望对你有一定的参考价值。

/**
 * Get an uploaded SVG's code
 * 
 * @param  string $path The path to the uploaded SVG file
 * @return XML          The modified SVG code
 */
function get_svg($path) {
	$svg = file_get_contents(home_url() . $path);

	$dom = new DOMDocument();
	$dom->preserveWhiteSpace = false;
	$dom->loadXML($svg);

	if ($style = $dom->getElementsByTagName('style')->item(0)) {
		$style->parentNode->removeChild($style);
		$svg =  $dom->saveXML();
	}

	if ($title = $dom->getElementsByTagName('title')->item(0)) {
		$title->parentNode->removeChild($title);
		$svg =  $dom->saveXML();
	}

	if ($desc = $dom->getElementsByTagName('desc')->item(0)) {
		$desc->parentNode->removeChild($desc);
		$svg =  $dom->saveXML();
	}

	echo $svg;
}

以上是关于php 从SVG文件中获取SVG代码并上传的主要内容,如果未能解决你的问题,请参考以下文章

为啥设计好的图标svg文件上传到iconfont后,显示正常,但是再下载到本地打开代码就显示不全了呢?

使用svg和canvas实现图片的剪切

将带有掩码和符号的 SVG 转换为纯 SVG 文件?

如何在 SwiftUI 中使用 .svg 图片

文件上传xss-svg

php 添加SVG-Support以进行文件上传,这样您就可以上传SVG徽标(在Generate Press中),使其也适用于视网膜显示。