我要打印一个Image(作为属性嵌入到对象中),从WebApi中检索。
到目前为止,我可以加载图片并在我的页面上完美显示,如下所示:
<img ng-src="data:image/jpeg;base64,{{t.Image}}"/>
但问题是我不知道如何打印此图像?
我已尝试过以下商品,但我遇到了崩溃的Google Chrome页面。
var img= window.open($scope.t.Image);
img.print();
问题是如何打印图像?
这是我来自WebApi的对象:
public class TestImage
{
public string Name { get; set; }
public byte[] Image { get; set; }
}
以下是我如何调用Get方法:
$scope.getData = function (val) {
return $http.get('http://localhost:2740/GetData', {
params: {
name: val
}
}).then(function (response) {
$scope.t = response.data;
return response.data;
});
};
******** ********修订
$scope.imgName = "myImage";
$scope.print = function () {
var printContents = document.getElementById($scope.imgName);
var popupWin = window.open('', '_blank', 'width=300,height=300');
popupWin.document.open();
popupWin.document.write('<html><head><link rel="stylesheet" type="text/css" href="style.css" /></head><body onload="window.print()">' + printContents + '</html>');
popupWin.document.close();
}
<img id="{{imgName}}" ng-src="data:image/jpeg;base64,{{t.Image}}" />
答案 0 :(得分:2)
抱歉,我误解了你的问题...
试试这个......你需要为图片标签分配和识别。
$scope.printImg = function(imgName) {
var printContents = document.getElementById(imgName);
var popupWin = window.open();
popupWin.document.open()
popupWin.document.write('<html><head><link rel="stylesheet" type="text/css" href="style.css" /></head><body onload="window.print()">' + printContents + '</html>');
popupWin.document.close();
}