在系统对话框中看不到我的CUPS打印机

时间:2015-05-25 12:29:18

标签: printing chromium cups epson yocto

我无法在系统对话框中看到杯子打印机,但我能够在铬打印界面中看到我的杯子打印机。当我选择打印机然后点击打印按钮时,没有任何反应。杯子服务器中没有error_log。我也可以通过终端到达打印机并使用lpr命令打印每种文件格式。我的CUPS版本是1.4.6并使用Epson TM-T20热敏票据打印机。 Chromium版本为37.0.2062.94并安装了libpdf。我认为系统无法到达我的打印机。也在yocto os上运行。所有我解决的问题是3行Chrome日志:

[19001:19001:0511/231605:VERBOSE1:print_dialog_gtk2.cc(292)] Using custom paper size
[45:46:0511/231606:VERBOSE1:ipc_sync_channel.cc(385)] Canceling pending sends
[19001:19023:0511/231606:WARNING:raw_channel_posix.cc(214)] recvmsg: Connection reset by peer

提前致谢!

1 个答案:

答案 0 :(得分:0)

实际上问题是gtk +接口。首先,我安装了cups-filters包之后,我将ghostscript和ghostscipt-cups作为RDEPENDS(运行依赖)添加到epson打印机和chrome bitbake配方中。最后,在系统对话框中没有看到打印机的真正问题,所以我发现因为gtk +接口。您必须使用private class PostTask extends AsyncTask<String, String, String> { @Override protected String doInBackground(String... data) { // Create a new HttpClient and Post Header HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://<ip address>:3000"); try { //add data List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1); nameValuePairs.add(new BasicNameValuePair("data", data[0])); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); //execute http post HttpResponse response = httpclient.execute(httppost); } catch (ClientProtocolException e) { } catch (IOException e) { } } } 覆盖gtk bbappend(或bb)中的cups标志,还要向cups let heroes = ["abaddon","ember","gondar",etc].map { Hero(name: $0) } 添加依赖项。这是我的解决方案,我希望这对你的问题有用。