如何直接在Samsung Mobile Print上打印HTML内容

时间:2013-12-05 14:40:38

标签: android android-intent printing

问题与“如何直接在Samsung Mobile Print上打印HTML页面”有关 Android: How to print an HTML page directly on Samsung Mobile Print,当在该帖子中发帖时,它会被删除,所以把它放在这里。谢谢!

不同的部分是,如果我要打印的内容不是网页,而是内部以编程方式生成的html数据的某些内容,并且图像网址指向内部资源,三星打印应用程序是否可以打印内容与图片(Google Cloud Print的问题是GCP无法访问图片网址)?

尝试的Intent就像下面一样,看它是否可以打印本地html文件(得到错误的'type not supported):

Intent intent = new Intent("com.sec.print.mobileprint.action.PRINT");
Uri uri = Uri.fromFile(file);
intent.putExtra("com.sec.print.mobileprint.extra.CONTENT", uri );
intent.putExtra("com.sec.print.mobileprint.extra.CONTENT_TYPE", "DOCUMENT");
//Uri uri = Uri.parse("http://www.samsung.com");
//intent.putExtra("com.sec.print.mobileprint.extra.CONTENT_TYPE", "WEBPAGE");
intent.putExtra("com.sec.print.mobileprint.extra.OPTION_TYPE", "DOCUMENT_PRINT");
intent.putExtra("com.sec.print.mobileprint.extra.JOB_NAME", "Untitled");
startActivity(intent);

1 个答案:

答案 0 :(得分:2)

您应该使用here提供的官方手册/ API,根据您的需要修改问题代码。

关于文件打印的手册(上面链接)示例说明了什么:

Intent intent = new Intent("com.sec.print.mobileprint.action.PRINT");   
String rootSDCard= Environment.getExternalStorageDirectory().getAbsolutePath();
Uri uri= Uri.parse(rootSDCard+ "/Test_document.pdf");
intent.putExtra("com.sec.print.mobileprint.extra.CONTENT", uri );
intent.putExtra("com.sec.print.mobileprint.extra.CONTENT_TYPE", "DOCUMENT");
intent.putExtra("com.sec.print.mobileprint.extra.OPTION_TYPE", "DOCUMENT_PRINT");
intent.putExtra("com.sec.print.mobileprint.extra.JOB_NAME", "Untitled");
startActivity(intent); // Starts Mobile Print
//startActivityForResult(intent , 99) // Use this if you want to get result that user
//pressed Print or just returned back from Mobile Print.

对于CONTENT_TYPE标志,它指出以下内容:enter image description here