中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么使用draw.io插件在vscode中一體化導出高質量圖片

發布時間:2022-08-08 15:19:46 來源:億速云 閱讀:1212 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“怎么使用draw.io插件在vscode中一體化導出高質量圖片”,內容詳細,步驟清晰,細節處理妥當,希望這篇“怎么使用draw.io插件在vscode中一體化導出高質量圖片”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

vscode一體化導出drawio

需要的工具:vscode, draw.io擴展,draw.io桌面版 、python

提示:這個方法并沒有簡化流程,只是能夠減少打開窗口,在vscode中直接查看原始文件,導出文件,效率并沒有顯著提升。

啰嗦的部分:
drawio流程圖繪制軟件比visio好用。而且vscode有插件。vs插件的優點在于支持mermaid流程圖,缺點非常明顯不支持指定分辨率圖像導出。
網上檢索發現drawio的桌面版可以在命令行操作。在drawio安裝目錄下運行cmd,然后通過draw.io -help 命令可以查看全部命令。
查看命令發現沒有針對性的dpi設置。我就想到給圖片輸入寬度和高度的方式。根據我猜測這個寬度和高度應該對應的就是像素點數量,所以我就按照實際尺寸,以及dpi的定義
寫了一個命令, 發現可用。但是每次都要計算寬度、高度、調用cmd命令窗口,太麻煩。功能強大的python加上插件齊全的vscode能不能全部實現呢?
折騰了幾個小時,終于搞定了。

進入正題:
1、安裝draw.io插件,和桌面版,記住桌面版的路徑
2、繪制好的圖片有一個實際的尺寸,記住實際尺寸的寬和高
3、python轉換 寬度

dpivalue=600#dpi
realwidth=89.4#mm
realheight=81.2#mm
width=round(dpivalue*realwidth/25.4)
height=round(dpivalue*realheight/25.4)

4、 構造命令行,不嫌麻煩可以自己寫完整目錄

inputfilepath=r'F:\BaiduNetdiskWorkspace\00typora\大論文\drawio\算法流程圖.drawio'
outputfilepath=r'F:\BaiduNetdiskWorkspace\00typora\大論文\drawio\test.png'
starttext=r'draw.io -x '
midletext=r" -f png -t --width "+str(width)+r" --height " +str(height)+r" -o "
commandtext1=starttext+inputfilepath+midletext+outputfilepath

5、 改變python文件工作目錄并執行命令

path="D:/draw.io/"#安裝文件夾
os.chdir( path )# 修改當前工作目錄
v2=os.system(commandtext1)

完整的代碼

代碼量并不大,非常簡單

'''
Author: zzx
Date: 2022-07-27 10:12:38
LastEditors: zdl
LastEditTime: 2022-07-30 16:10:22
FilePath: \matlabcodef:\BaiduNetdiskWorkspace\00typora\大論文\drawio\output.py
Description: 

Copyright (c) 2022 by zdl, All Rights Reserved. 
'''
import os
dpivalue=600#dpi
realwidth=89.4#mm
realheight=81.2#mm
width=round(dpivalue*realwidth/25.4)
height=round(dpivalue*realheight/25.4)
inputfilepath=r'F:\BaiduNetdiskWorkspace\00typora\大論文\drawio\算法流程圖.drawio'
outputfilepath=r'F:\BaiduNetdiskWorkspace\00typora\大論文\drawio\test.png'
starttext=r'draw.io -x '
midletext=r" -f png -t --width "+str(width)+r" --height " +str(height)+r" -o "
commandtext1=starttext+inputfilepath+midletext+outputfilepath
path="D:/draw.io/"#安裝文件夾
os.chdir( path )# 修改當前工作目錄
v2=os.system(commandtext1)

# 快速運行F5
# print(v2)

#關于python權限的問題
# https://blog.csdn.net/qq_33731081/article/details/103812749
# 如何在python中運行命令行命令
# https://blog.csdn.net/qq_34769162/article/details/119037908
#報錯為空值的問題
# https://blog.csdn.net/xiaoxiaogh/article/details/88320102

#關于drawio導出命令,靈感來源https://j2r2b.github.io/2019/08/06/drawio-cli.html
'''
Options:
  -V, --version                      output the version number
  -c, --create                       creates a new empty file if no file is
                                     passed
  -k, --check                        does not overwrite existing files
  -x, --export                       export the input file/folder based on the
                                     given options
  -r, --recursive                    for a folder input, recursively convert
                                     all files in sub-folders also
  -o, --output <output file/folder>  specify the output file/folder. If
                                     omitted, the input file name is used for
                                     output with the specified format as
                                     extension
  -f, --format <format>              if output file name extension is
                                     specified, this option is ignored (file
                                     type is determined from output extension,
                                     possible export formats are pdf, png, jpg,
                                     svg, vsdx, and xml) (default: "pdf")
  -q, --quality <quality>            output image quality for JPEG (default:
                                     90)
  -t, --transparent                  set transparent background for PNG
  -e, --embed-diagram                includes a copy of the diagram (for PNG,
                                     SVG and PDF formats only)
  --embed-svg-images                 Embed Images in SVG file (for SVG format
                                     only)
  -b, --border <border>              sets the border width around the diagram
                                     (default: 0)
  -s, --scale <scale>                scales the diagram size
  --width <width>                    fits the generated image/pdf into the
                                     specified width, preserves aspect ratio.
  --height <height>                  fits the generated image/pdf into the
                                     specified height, preserves aspect ratio.
  --crop                             crops PDF to diagram size
  -a, --all-pages                    export all pages (for PDF format only)
  -p, --page-index <pageIndex>       selects a specific page, if not specified
                                     and the format is an image, the first page
                                     is selected
  -g, --page-range <from>..<to>      selects a page range (for PDF format only)
  -u, --uncompressed                 Uncompressed XML output (for XML format
                                     only)
  --enable-plugins                   Enable Plugins
  -h, --help                         display help for command
'''

讀到這里,這篇“怎么使用draw.io插件在vscode中一體化導出高質量圖片”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

克东县| 富川| 休宁县| 淳化县| 乐亭县| 公主岭市| 荣成市| 桂平市| 乐至县| 上林县| 巴中市| 安徽省| 阿尔山市| 罗城| 潮安县| 灵丘县| 吴川市| 望奎县| 玉溪市| 大洼县| 成武县| 富宁县| 安新县| 福鼎市| 江山市| 博爱县| 聊城市| 始兴县| 湘潭县| 浠水县| 莒南县| 江永县| 永丰县| 沙洋县| 郧西县| 柘荣县| 卢龙县| 临泽县| 洞口县| 淮滨县| 长白|