如何查看打印结果RTL

时间:2018-11-05 15:54:12

标签: javascript css printing textarea text-align

当我在textarea中打印文本时,它显示LTR,而我的文本是RTL,所以我该如何解决此问题,以便文本显示出来,就像它是向左还是向右或居中,并且在复制文本区域时,我还有另一个问题右移,但有时我在中心有某些单词,它们在文本编辑器区域右移

<html ">
<head>
<title></title>
<!-- script print button -->
 <script type="text/javascript">
      function printTextArea() {
	   
        childWindow = window.open('','childWindow','location=yes, menubar=yes, toolbar=yes');
        childWindow.document.open();
        childWindow.document.write('<html><head></head><body>');
        childWindow.document.write(document.getElementById('targetTextArea').value.replace(/\n/gi,'<br>'));
        childWindow.document.write('</body></html>');
        childWindow.print();
        childWindow.document.close();
        childWindow.close();
      }
    </script>
<style type="text/css">
textarea {
direction: rtl; 
 background-color: white;
 font-size: 1em;
 font-weight: bold;
 font-family: Verdana, Arial, Helvetica, sans-serif;
 border: 1px solid black;
}
</style>
</head>

<body>
  <p>
    <TEXTAREA name="thetext" rows="20" cols="80"id="targetTextArea" ></TEXTAREA>
   </p>
   <!-- print button -->
  <center> <input type="button" onclick="printTextArea()" value="طباعة"/></center>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

只需给孩子的身体一个方向属性,其值为rtl,所以只需更改此行:

childWindow.document.write('<html><head></head><body>');

对此:

childWindow.document.write('<html><head></head><body dir="rtl">');