CUPS Linux:帮助打印这些媒体类型:MS Excel,MS Word和HTML

Alv*_*rob 6 linux cups ms-office media-type

我需要在Linux CUPS服务器中打印MS Excel,MS Word和HTML文件.当我尝试打印这些媒体类型后发生,这是我发现到现在:

  • 对于MS Excel和MS Word文件:

    当我尝试打印这样的文件时,错误输出是:

    alvaro@alvaro-VM:~$ lp -d test_printer -o document-format=application/msword ptest.doc
    lp: Unsupported format 'application/msword'!
    
    Run Code Online (Sandbox Code Playgroud)

    或者,同样的:

    alvaro@alvaro-VM:~$ lp -d test_printer  ptest.doc
    lp: Unsupported format 'application/msword'!
    
    Run Code Online (Sandbox Code Playgroud)

    我发现搜索周围的是,据说可以使用CUPS过滤器,在这种情况下,我发现的一个称为" officetop "(sourceforge /下载链接),taht可以打印MS OFFICE文件.我对这个"officetop"过滤器的问题是,我不知道如何安装它或对其进行配置或任何它需要使其工作,我找不到任何教程或指南.所以我很感激任何帮助.您是否建议使用此过滤器来执行此任务?我愿意接受任何其他解决方案.

  • 对于HTML文件:

    作为我做的第一个测试:

    alvaro@alvaro-VM:~$ lp -d test_printer  -o document-format=text/html index.html 
    the requested id is test_printer-105 (1 archivo(s))
    
    Run Code Online (Sandbox Code Playgroud)

    而且,结果相同:

    alvaro@alvaro-VM:~$ lp -d test_printer  index.html 
    the requested id is test_printer-106 (1 archivo(s))
    
    Run Code Online (Sandbox Code Playgroud)

    index.html的:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">        
    <html><body><h1>It works!</h1>
    <p>This is a html print test.</p>
    </body></html>
    
    Run Code Online (Sandbox Code Playgroud)

    结果:在打印的工作表上,您只能看到de html代码而不是格式化文本.

    编辑:如果我从网页浏览器打印一个网页,如铬,它打印得很好,但如果我下载网页浏览器选项"保存网页为",然后发出*lp -d test_printer index.html*occours相同我之前提到过,只是打印了html代码.

    请帮忙.我想要的是获得它可行的格式化文本.也可以打印HTML + CSS?

非常感谢你们.

问候.

PD:抱歉我的英语.

Dan*_*nny 2

请记住,Linux 从/etc/mailcap获取有关哪些应用程序打开哪些类型文件的说明。此外,打印的任何类型的文件都需要由能够执行此操作的应用程序“渲染”或“编译”,因此引用/etc/mailcap。电子邮件应用程序无法“呈现”Excel 文件,并且 Photoshop 无法打开 HTML 文件:)

从表面上看,您的/etc/mailcap中没有用于处理 Excel、Word 或 HTML 文件的应用程序的条目,这就是为什么打印原始内容而不是“渲染”页面(如果您从 Linux 打印)。

您是从 Linux 还是 Windows 进行打印?如果您从 Windows 打印(通过 Linux 机器上的 cups 服务器)并且打印正常,那么您就知道问题不是打印机,而是Linux 上的/etc/mailcap。