मैं अपनी रसीद के लिए उचित संरेखण प्राप्त करना चाहता हूं, वर्तमान में मैं चित्र की तरह संरेखण प्राप्त कर सकता हूं वर्तमान में हो रही है इस तरह की रसीद

उचित संरेखण प्राप्त करने के लिए मैंने दो तरीकों की कोशिश की, एक पंक्ति में मैंने बाएं संरेखण और दाएं संरेखण दोनों का उल्लेख करने की कोशिश की, जो काम नहीं करता, क्योंकि ईपीएसन एक ही लाइन पर दोनों संरेखण की अनुमति नहीं देता है, फिर मैंने नकद और राशि के बीच रिक्त स्थान जोड़ने की कोशिश की , लेकिन कभी-कभी लंबे विवरण के कारण, राशि आगे दाईं ओर जा सकती है, इसलिए यह स्थिर नहीं है, तो क्या कोई मुझे उचित संरेखण प्राप्त करने का सही तरीका बता सकता है

self.receiptText += alignLeft + tndrDesc + "\n";
self.receiptText += alignRight + formatTdrAmt + "\n";

लेकिन उपरोक्त कोड राशि के ऊपर एक पंक्ति में विवरण देता है, लेकिन अगर मैं \ n का उपयोग नहीं करता हूं तो यह उसी पंक्ति में आ जाएगा, बिना दाईं ओर संरेखित किए

1
tulu matinee 31 मार्च 2020, 20:01

1 उत्तर

सबसे बढ़िया उत्तर

एप्लिकेशन द्वारा ही प्रिंट अनुरोध की वर्ण स्ट्रिंग को संपादित करना बेहतर है, न कि प्रिंटर का कार्य।

उदाहरण के लिए, मान लीजिए कि आप 32 कॉलम प्रिंट करना चाहते हैं।

यदि प्रत्येक वर्ण SBCS (सिंगल बाइट कैरेक्टर सेट) श्रेणी के भीतर है, तो आप उस वर्ण स्ट्रिंग को मुद्रित करने का अनुरोध करके समान अंकों के साथ एक प्रिंट परिणाम प्राप्त कर सकते हैं।


अतिरिक्त स्रोत को ध्यान में रखते हुए।

इस मामले में, alignLeft और alignRight की आवश्यकता नहीं है।

और अचानक self.receiptText में जोड़ने के बजाय, कार्यशील चर का उपयोग करें।

प्रक्रिया इस प्रकार होगी।

printlineWork = tndrDesc + '                                  '; // 34 columns space character
printlineWork = printlineWork.substring(0, 34);
printlineWork += ('        ' + formatTdrAmt).slice(-8) + '\n'; // 8 columns space character
self.receiptText += printlineWork;

अंकों की स्थिति को इच्छानुसार समायोजित करें।

1
kunif 1 अप्रैल 2020, 08:49