Javascript 如何在printTask中删除/更改打印文档边距?

Javascript 如何在printTask中删除/更改打印文档边距?,javascript,html,printing,winjs,windows-8.1,Javascript,Html,Printing,Winjs,Windows 8.1,我想知道如何才能实现无边界打印 目前,我的输出如下所示: 我想让图像从左上角开始。这可能吗?我已经尝试为我的打印样式框设置负边距,但是图像将被剪切 我知道也许不是所有的打印机都能打印边界区域,但在我的使用案例中,这些区域的图片将是白色的。(山体图像仅用于演示) 我可以通过printTask指定文档边框吗 请参阅我的当前设置: HTML: <div id="pdf-render-output"></div> $('#pdf-render-output').append(

我想知道如何才能实现无边界打印

目前,我的输出如下所示:

我想让图像从左上角开始。这可能吗?我已经尝试为我的打印样式框设置负边距,但是图像将被剪切

我知道也许不是所有的打印机都能打印边界区域,但在我的使用案例中,这些区域的图片将是白色的。(山体图像仅用于演示)

我可以通过printTask指定文档边框吗

请参阅我的当前设置:

HTML:

<div id="pdf-render-output"></div>
$('#pdf-render-output').append("<img src="..." style=\"width: 100%\" />");
JS:

<div id="pdf-render-output"></div>
$('#pdf-render-output').append("<img src="..." style=\"width: 100%\" />");
$('pdf渲染输出')。追加(“”);
我用了所有可能的边距/填充物和其他东西,但图像会被剪切,白色边框会一直“覆盖”在上面

我希望可能有一个printTask选项我错过了浏览msdn

更新: 我尝试使用设置所有边距/填充/边框值!重要的。没有变化。 以下是模拟器的屏幕截图,仅显示打印css样式:


我想这是打印任务本身的问题。是否有与此问题相关的选项?

如果DocumentSource的边距值设置为0,间隙将大大减小。但是,与C#+XAML的PrintTask相比,上边距(可能是页眉/页脚区域)稍微增加了一点

var printTask = printEvent.request.createPrintTask("Print Sample", function (args) {
    var src = MSApp.getHtmlPrintDocumentSource(document);
    src.rightMargin = 0;
    src.leftMargin = 0;
    src.topMargin = 0;
    src.bottomMargin = 0;
    src.shrinkToFit = false;
    args.setSource(src);
}
在我的环境中,当使用这个CSS时,它删除了边距,而不需要src.rightMargin等

@page {
    margin:0cm;
}

如果DocumentSource的边距值设置为0,间隙将大大减小。但是,与C#+XAML的PrintTask相比,上边距(可能是页眉/页脚区域)稍微增加了一点

var printTask = printEvent.request.createPrintTask("Print Sample", function (args) {
    var src = MSApp.getHtmlPrintDocumentSource(document);
    src.rightMargin = 0;
    src.leftMargin = 0;
    src.topMargin = 0;
    src.bottomMargin = 0;
    src.shrinkToFit = false;
    args.setSource(src);
}
在我的环境中,当使用这个CSS时,它删除了边距,而不需要src.rightMargin等

@page {
    margin:0cm;
}

你有任何与此相关的代码吗?所以请把它贴在你指定的空白处,或者把你的照片放在哪里?@AshishMishra请看我更新的问题<代码>变量img=$('');css({'position:absolute;top:0px;left:0px;width:100%;height:100%;background color:red'})$(“#pdf渲染输出”).append(img)请试试这个..谢谢你的回答,但遗憾的是边界还是像以前一样。我认为绝对定位不是这里的关键。这可能是填充/边距的问题吗?(我已经尝试将其设置为0,但没有更改)。或者,如果您考虑普通程序中常见的打印可能性:有时您可以指定边框宽度。也许WinJS也有类似的功能?我建议您,将
body
html
和其他
元素设置为
margin:0!重要信息
与boder width相同,填充使用
!重要信息
,然后重试,可能是因为它是动态分配的。在调试过程中,请查看您的
DOM
,您可以在那里找到原因。您是否有与此相关的代码?所以请把它贴在你指定的空白处,或者把你的照片放在哪里?@AshishMishra请看我更新的问题<代码>变量img=$('');css({'position:absolute;top:0px;left:0px;width:100%;height:100%;background color:red'})$(“#pdf渲染输出”).append(img)请试试这个..谢谢你的回答,但遗憾的是边界还是像以前一样。我认为绝对定位不是这里的关键。这可能是填充/边距的问题吗?(我已经尝试将其设置为0,但没有更改)。或者,如果您考虑普通程序中常见的打印可能性:有时您可以指定边框宽度。也许WinJS也有类似的功能?我建议您,将
body
html
和其他
元素设置为
margin:0!重要信息
与boder width相同,填充使用
!重要信息
,然后尝试它,可能是动态分配的。在调试过程中查看您的
DOM
,您可以在那里找到原因。
@page
成功了!非常感谢你。这应该记录在某个地方。。。(或者我只是错过了吗?)我也有同样的问题,它对我不起作用。它只减少了一点右边缘(不是全部),但顶部边缘是相同的。我没有尝试使用@page css属性,不知道如何将它放在我的文档中,因为我是手动创建文档的。@page也为我做了一些事情。malte是如何说的:它在任何地方都没有文档记录,但如果我像这样创建我的文档片段:var container=document.createElement(“div”);container.innerHTML=“+”这是一些内容“+”;这就是我正在打印的文档,在哪里/如何放置@page{margin:0cm}?
@page
成功了!非常感谢你。这应该记录在某个地方。。。(或者我只是错过了吗?)我也有同样的问题,它对我不起作用。它只减少了一点右边缘(不是全部),但顶部边缘是相同的。我没有尝试使用@page css属性,不知道如何将它放在我的文档中,因为我是手动创建文档的。@page也为我做了一些事情。malte是如何说的:它在任何地方都没有文档记录,但如果我像这样创建我的文档片段:var container=document.createElement(“div”);container.innerHTML=“+”这是一些内容“+”;这就是我正在打印的文档,在哪里/如何放置@page{margin:0cm}?