① java 進行svg 轉換成png老報這個 java.lang.NoSuchMethodError: org.apache.batik.dom.AbstractDocument.
應該是缺jar文件。比較一下測試環境和項目環境的ClassPath。
② win10怎麼批量svg轉png
使用python批量轉換SVG文件為PNG或pdf文件
命令行方式
# Convert to pdf, standard output
cairosvg test.svg
# Convert to png, standard output
cairosvg test.svg -f png
# Convert to ps, write to test.ps
cairosvg test.svg -o test.ps
# Convert an SVG string to pdf, standard output
echo "<svg height='30' width='30'>\
<text y='10'>123</text>\
</svg>" | cairosvg -
2.2 python腳本
#! encoding:UTF-8
import cairosvg
import os
def exportsvg(fromDir, targetDir, exportType):
print "開始執行轉換命令..."
num = 0
for a,f,c in os.walk(fromDir):#使用walk遍歷源目錄
for fileName in c:
path = os.path.join(a,fileName)#獲得文件路徑
if os.path.isfile(path) and fileName[-3:] == "svg":#判斷文件是否為svg類型
num += 1
fileHandle = open(path)
svg = fileHandle.read()
fileHandle.close()
exportPath = os.path.join(targetDir, fileName[:-3] + exportType)#生成目標文件路徑
exportFileHandle = open(exportPath,'w')
if exportType == "png":
try:
cairosvg.svg2png(bytestring=svg, write_to=exportPath)#轉換為png文件
except:
print "error in convert svg file : %s to png."%(path)
elif exportType == "pdf":
try:
cairosvg.svg2pdf(bytestring=svg, write_to=exportPath)#轉換為pdf文件
except:
print "error in convert svg file: %s to pdf."%(path)
exportFileHandle.close()
print "Success Export ", exportType, " -> " , exportPath
print "已導出 ", num, "個文件"#統計轉換文件數量
#---------------------------------------
svgDir = '/home/ubuntu/tools/icons'#svg文件夾路徑
exportDir = '/home/ubuntu/tools/icons1'#目的文件夾路徑
exportFormat = 'png'#pdf#轉換類型
if not os.path.exists(exportDir):
os.mkdir(exportDir)
exportsvg(svgDir, exportDir, exportFormat)#轉換主函數
#---------------------------------------
③ 如何將SVG格式的矢量圖片轉換成png格式的圖片
最簡單的就是截圖了··
還可以用adobe
illustrator等矢量圖編輯軟體來轉換··
④ svg格式的圖片怎麼轉換成PNG的
准備工具:電腦,SVG圖片,WPS圖片軟體
1.在桌面中找到需要修改的圖片,使用WPS圖片打開該圖片進入圖片主頁面中。
⑤ java batik svg轉png報錯,球大神!!!在線等
這個是由於你的svg文件里有一個自定義的節點<point>xxx</<point>,而batik不認它。。
我是用一個比較粗暴的辦法,先把svg字元串里的這些自定義節點刪掉:
/**
*簡易的剔除未定義節點的方法
*
*@paramsvg原始svg
*@paramnodeName需要剔除的節點
*@return
*/
publicstaticStringcutNode(Stringsvg,StringnodeName){
intb,e=0;
intlen=nodeName.length()+3;
StringstrB="<"+nodeName+">";
StringstrE="</"+nodeName+">";
StringBuildersb=newStringBuilder();
do{
b=svg.indexOf(strB,e);
if(b<0){
break;
}
sb.append(svg.substring(e,b));
e=svg.indexOf(strE,b)+len;
}while(true);
sb.append(svg.substring(e));
returnsb.toString();
}
svg = cutNode(svg, "point");
⑥ 如何將 svg 轉換成 png 格式
ACME TraceArt v3.8
工程制圖轉換軟體,可以把線性的圖片轉換成矢量格式。支持
BMP,TIFF,TGA,JPE,矢量格式有DXF, WMF,HP-GL, SVG。同時
還支持批量轉換。
Code:9QWI2EDPACTPGJB79X823CLV