从浏览器打印内联SVG(以毫米为单位)

时间:2017-09-27 12:55:55

标签: javascript jquery asp.net svg printing

我必须直接从浏览器打印我的SVG,但我不知道该怎么做。

SVG元素的位置和大小很重要,这就是数字全部以mm为单位的原因。 它必须在预先打印的纸张上打印,并在预打印的容器中打印。

SVG目前看起来像这样:

<svg xmlns="http://www.w3.org/2000/svg" class="col-md-12 designerCanvas" id="svgLabel" width="240mm" height="90mm" viewbox="0 0 240 90">
    <image class="svg" id="img-160-68" visibility="visible" x="160.202" y="68.0135" width="14.0043" height="14.0043" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/images/Icons/icon02.png" />
    <image class="svg" id="img-175-68" visibility="visible" x="175.791" y="68.0135" width="14.0043" height="14.0043" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/images/Icons/icon05.png" />
    <image class="svg" id="img-191-68" visibility="visible" x="191.381" y="68.0135" width="14.0043" height="14.0043" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/images/Icons/icon07.png" />
    <text class="svg" id="txt-0-5" font-family="Arial" font-size="1.64233" visibility="visible" text-anchor="start" x="0.5285" y="5.5489" height="33.29333142498542" width="79.26983672615574">
        <tspan x="0.5285" dy="1.6423">[EN] Some Title: </tspan>
        <tspan x="0.5285" dy="1.6423">There is some text here.</tspan>
        <tspan x="0.5285" dy="1.6423">Even more text here. </tspan>
        <tspan x="0.5285" dy="1.6423">WOW, a third line.</tspan>
        <tspan x="0.5285" dy="1.6423">You're overdoing it</tspan>
        <tspan x="0.5285" dy="1.6423">Please</tspan>
        <tspan x="0.5285" dy="1.6423">STAHP</tspan>
        <tspan x="0.5285" dy="1.6423">No More!!</tspan>
        <tspan x="0.5285" dy="1.6423">That's it</tspan>
        <tspan x="0.5285" dy="1.6423">I'm outta here....</tspan>
    </text>
</svg>

请注意纸张(= SVG画布)的宽度和高度来自数据库,并且可以有多个值。

元素的x,y,宽度和高度现在没有mm,因为SVG画布的视图框和单位组合可以解决这个问题,但我可以根据需要添加它。

客户只希望我支持IE11 +,不过我自己也想支持最近的Chrome和FF。

我可以将图纸装入一个新的(临时)窗口进行打印,但我不确定它是否会打印出正确的版本。 也许创建PDF和打印是可行的方法,但不知道如何将svg发送给它。

Web应用程序本身是一个ASP.NET MVC(Core),在前端添加了简单的javascript和jQuery。

除了在默认纸张上以像素为单位打印SVG外,无法在网页上找到关于该主题的更多信息,但我非常确定这些元素会以错误的位置/大小打印出来。

有什么想法吗?

0 个答案:

没有答案