PHP中的打印机函数无法打印汉字(UTF-8)

PHP中的打印机函数无法打印汉字(UTF-8),php,printing,utf-8,Php,Printing,Utf 8,我使用打印机功能在包含中文和英文单词的文本文件.txt中打印出一些数据。两者都能在网页中正确显示。打印时,英文单词看起来不错,但中文单词没有显示正确的输出。有没有克服这个问题的建议?下面是我的代码。请帮帮我 <?php $print = file_get_contents("print.txt"); $printer = "XP-80"; //printer name echo $print; if($ph = printer_open($printer)) { printer

我使用打印机功能在包含中文和英文单词的文本文件.txt中打印出一些数据。两者都能在网页中正确显示。打印时,英文单词看起来不错,但中文单词没有显示正确的输出。有没有克服这个问题的建议?下面是我的代码。请帮帮我

<?php
$print = file_get_contents("print.txt");
$printer = "XP-80"; //printer name
echo $print;
if($ph = printer_open($printer)) 
{  
   printer_set_option($ph, PRINTER_MODE, "RAW"); 
   printer_write($ph, $print); 
   printer_close($ph); 
} 

?>

我可以想到一些可能是问题的原因:

您选择的字体与UTF-8不兼容。 在for printer_set_选项中还有一个关于bug的注释。它是2009年的,所以不确定它是否仍然有效。 评论后编辑:

请从下面的示例中尝试此示例


我使用以下代码来解决此问题:

$textprinting = "your text";
utf8_decode($textprinting);

您确定您的打印机支持UTF-8中文字符吗?仅仅因为你们的文本显示在屏幕上,并不意味着它一定会正确地出现在其他地方。打印机可以支持汉字。如果我使用window.print,中文字符就可以了,但是如果我在PHP中使用Printer函数,它不起作用。我应该在utf8中输入哪个列?这个函数的属性是Printer\u create\u字体字符串$face,int$height,int$width,int$font\u weight,bool$italic,bool$underline,bool$删除,参考手册中所述的int$方向。您可以尝试更改$face属性的字体,以找到与UTF-8兼容的字体。
$textprinting = "your text";
utf8_decode($textprinting);