๊ทธ๋ํฝ ์ ธ ์์ด CentOS์์ ์ค์ ํ๋ ์์ ๋๋ค. ๋น์ ํ์๋ฉด ๋ชจ๋ Linux OS์์ ์ค์ ํ ์ ์์ต๋๋ค.
ํน์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์์ต๋๋ค. PHP์ ํ ํ๋ฆฟ์ ์ฌ์ฉํ์ฌ ์์์ ํ ์คํธ๊ฐ ํฌํจ๋ ๋ ์ด๋ธ์ ์ธ์ํด์ผ ํฉ๋๋ค. ํ์ฌ์ฅ์์ ์์ ์ ์ธ ์ธํฐ๋ท ์ฐ๊ฒฐ์ ๊ธฐ๋ํ ์ ์๊ณ ๋๋ถ๋ถ์ ์๋ํ ์์ ์ด ์น์ฌ์ดํธ์ ๊ฒน์น๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ VMware์์ ๊ฐ์ ๋จธ์ ์ ์ฌ์ฉํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.
XPrinter๋ ์์ ํ์์๋ ์ ํฉํ๋ฏ๋ก Windows์์์ ์ค์น๊ฐ ํจ์ฌ ์ฝ์ต๋๋ค. ์ ๋ ๋ผ๋ฒจ ๋๋น๊ฐ ์ต๋ 460mm์ธ XP-108B ๋ชจ๋ธ์ ์ ํํ์ต๋๋ค.
Linux๋ฅผ ์ค์ ํ๊ณ ์ฅ์น๋ฅผ ์ฐ๊ฒฐํ๋ ๊ฒฝ์ฐ๊ฐ ๊ฑฐ์ ์๊ธฐ ๋๋ฌธ์ ๊ธฐ์ฑ ์ค์น ์ค๋ช
์๋ฅผ ์ฐพ์๋ณด์๊ณ ํ๋ฆฐํฐ๋ฅผ ์ฐ๊ฒฐํ๋ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ์ปต์ ์ฌ์ฉํ๋ ๊ฒ์์ ๊นจ๋ฌ์์ต๋๋ค. USB๋ฅผ ํตํด ํ๋ฆฐํฐ๋ฅผ ์ฐ๊ฒฐํ ์ ์์๊ณ , ์ค๋ช
์์ ์กฐ์ธ์ ๋ฐ๋ฅธ ์กฐ์๋ ๋์์ด ๋์ง ์์์ต๋๋ค. ๊ฐ์ ๋จธ์ ์ด ์ฌ๋ฌ ๋ฒ ์ถฉ๋ํ์ต๋๋ค.
- ์ ์กฐ์
์ฒด ์น์ฌ์ดํธ xprintertech.com์์ ๋๋ผ์ด๋ฒ๋ฅผ ๋ค์ด๋ก๋ํ์ธ์. Windows, Mac ๋ฐ Linux์ฉ ํ๋์ ์์นด์ด๋ธ๋ก ์ ๊ณต๋ฉ๋๋ค.
์ ๊ฒฝ์ฐ์๋ ์ผ๋ จ์ ์ฅ์น์ ๋ํ ๋๋ผ์ด๋ฒ๊ฐ ์น์ฌ์ดํธ์ ๊ฒ์๋์ด ์์ต๋๋ค. 4์ธ์น ๋ผ๋ฒจ ํ๋ฆฐํฐ ๋๋ผ์ด๋ฒ. ์๊ณ ๋ณด๋ XP-460B๋ ์ด๋ฏธ ๋จ์ข ๋ ์ ํ์ด์๋๋ฐ, ๋น์ทํ ๋ชจ๋ธ์ธ XP-470B์ ํ์๊ฒฝ๋ก๋ฅผ ํตํด ์ด๋ค ์๋ฆฌ์ฆ์ ์ํ๋์ง ์์๋ดค์ต๋๋ค.
- Windows์ ํ๋ฆฐํฐ๋ฅผ ์ค์นํ๊ณ ๊ณต์ ๋ฅผ ํ์ฑํํฉ๋๋ค.
- Linux์ ๊ฒฝ์ฐ ์์นด์ด๋ธ์๋ 1BARCODE ํ์ผ 4๊ฐ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ์ด๊ฒ์ ์ค์ค๋ก ์์ถ์ ํ๊ณ ๋๋ผ์ด๋ฒ๋ฅผ ์ปต์ ๋ณต์ฌํ๋ tar ์์นด์ด๋ธ๊ฐ ํฌํจ๋ bash ์คํฌ๋ฆฝํธ์ธ "2 in 1" ํ์ผ์
๋๋ค. ์ ๊ฒฝ์ฐ์๋ ์์ถ์ ํ๋ ค๋ฉด bzip2๊ฐ ํ์ํฉ๋๋ค. (80mm ์๋ฆฌ์ฆ์ ๊ฒฝ์ฐ ๋ค๋ฅธ ์์นด์ด๋ฒ๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.)
yum install cups yum install bzip2 chmod 744 ./4BARCODE sh ./4BARCODE service cups start
- ๋ค์์ผ๋ก ์ด์ด์ผ ํ ๊ฒ์
๋ก์ปฌ ํธ์คํธ :631 ๋ธ๋ผ์ฐ์ ์์ ํธ์์ Windows์ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฆฌ๋๋ก ์ค์ ํฉ๋๋ค. /etc/cups/cupsd.conf๋ฅผ ํธ์งํฉ๋๋ค:Listen localhost:631 ะผะตะฝัะตะผ ะฝะฐ Listen *:631 <Location /> Order allow,deny Allow localhost Allow 192.168.1.* </Location> <Location /admin> Order allow,deny Allow localhost Allow 192.168.1.* </Location>
๋ฐฉํ๋ฒฝ(๋๋ iptables)์ ํฌํธ 631์ ์ถ๊ฐํฉ๋๋ค.
firewall-cmd --zone=public --add-port=631/tcp --permanent firewall-cmd --reload
- ์ ๊ฒฝ์ฐ์๋ ๊ฐ์ ๋จธ์ ์ IP๋ฅผ ์ฌ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ์์ ๋งํฌ๋ฅผ ์ฝ๋๋ค.
192.168.1.5 :631/๊ด๋ฆฌ์ํ๋ฆฐํฐ ์ถ๊ฐ(๋ฃจํธ์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํด์ผ ํจ)
- LPD ํ๋กํ ์ฝ๊ณผ ์ผ๋ฐ๋ฅผ ํตํด ๊ตฌ์ฑํ ์ ์๋ ๋ ๊ฐ์ง ์ต์
์ด ์์ต๋๋ค.
- LPD ํ๋กํ ์ฝ์ ํตํด ์ฐ๊ฒฐํ๋ ค๋ฉด Windows์์ ์๋น์ค๋ฅผ ํ์ฑํํ๊ณ (Windows ๊ตฌ์ฑ ์์ ์ผ๊ธฐ ๋๋ ๋๊ธฐ) ์ปดํจํฐ๋ฅผ ๋ค์ ์์ํด์ผ ํฉ๋๋ค.
์ปต ์ค์ ์์ lpd://192.168.1.52/Xprinter_XP-460B๋ฅผ ์ ๋ ฅํฉ๋๋ค. ์ฌ๊ธฐ์ 192.168.1.52๋ ํ๋ฆฐํฐ๊ฐ ์ค์น๋ ์ปดํจํฐ์ IP์ด๊ณ , Xprinter_XP-460B๋ Windows ๊ณต์ ์ค์ ์ ํ๋ฆฐํฐ ์ด๋ฆ์ ๋๋ค.
๋๋ผ์ด๋ฒ ์ ํ 4BARCODE => 4B-3064TA
๋งค๊ฐ๋ณ์์์ ์๋ฌด๊ฒ๋ ์ ํํ๊ฑฐ๋ ์ ์ฅํ์ง ์์ต๋๋ค! ๋ผ๋ฒจ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํด ๋ณด์์ง๋ง ์ด๋ค ์ด์ ๋ก ํ๋ฆฐํฐ๊ฐ ์๋ํ์ง ์์ต๋๋ค. ๋ผ๋ฒจ ํฌ๊ธฐ๋ ์ธ์ ์์ ์์ ์ง์ ํ ์ ์์ต๋๋ค.
ํ ์คํธ ํ์ด์ง๋ฅผ ์ธ์ํด ๋ณด๊ฒ ์ต๋๋ค. ์๋ฃ๋์์ต๋๋ค! - ๋ ๋ฒ์งธ ์ต์ . ์ผ๋ฐ๋ฅผ ์ค์นํ๊ณ ์ปต์ ์์ํ๊ณ ๋ค์ ์์ํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด ์ ์ฐ๊ฒฐ ์ง์ ์ด ์ปต์ ๋ํ๋ฉ๋๋ค. ์ค์ ์์ smb://user์ ๊ฐ์ ์ค์ ์ ๋ ฅํฉ๋๋ค.[์ด๋ฉ์ผ ๋ณดํธ]/Xprinter_XP-460B. ์ฌ์ฉ์๊ฐ Windows ์ฌ์ฉ์์ธ ๊ฒฝ์ฐ ์ฌ์ฉ์๋ ๋น๋ฐ๋ฒํธ๋ฅผ ์ค์ ํด์ผ ํ๋ฉฐ ๋น ๋น๋ฐ๋ฒํธ๋ก๋ ์ธ์ฆ์ด ์๋ํ์ง ์์ต๋๋ค.
- LPD ํ๋กํ ์ฝ์ ํตํด ์ฐ๊ฒฐํ๋ ค๋ฉด Windows์์ ์๋น์ค๋ฅผ ํ์ฑํํ๊ณ (Windows ๊ตฌ์ฑ ์์ ์ผ๊ธฐ ๋๋ ๋๊ธฐ) ์ปดํจํฐ๋ฅผ ๋ค์ ์์ํด์ผ ํฉ๋๋ค.
๋ชจ๋ ๊ฒ์ด ์ ๋๋ก ์๋ํ๊ณ ํ๋ฆฐํฐ๊ฐ ํ ์คํธ ํ์ด์ง๋ฅผ ์ธ์ํ๋ฉด ์ฝ์์ ํตํด ์์ ์ ๋ณด๋ผ ์ ์์ต๋๋ค.
lpr -P Xprinter_XP-460B -o media=Custom.100x102mm test.txt
์ด ์์์๋ ๋ผ๋ฒจ ํฌ๊ธฐ๊ฐ 100x100mm์ด๊ณ ์คํ์ ์ผ๋ก 2mm๊ฐ ์ ํ๋์์ต๋๋ค. ๋ผ๋ฒจ ์ฌ์ด์ ๊ฐ๊ฒฉ์ 3mm์ธ๋ฐ, ๋์ด๋ฅผ 103mm๋ก ์ค์ ํ๋ฉด ํ ์ดํ๊ฐ ์์ง์ฌ์ ๋ผ๋ฒจ์ ๋ผ์ด๋ด๊ธฐ๊ฐ ๋ถํธํฉ๋๋ค. LPD ํ๋กํ ์ฝ์ ๋จ์ ์ ์์ ์ด ์ผ๋ฐ ํ๋ฆฐํฐ๋ก ์ ์ก๋๊ณ ESC/P0S ํ์์ด ์ธ์์ฉ์ผ๋ก ์ ์ก๋์ง ์์ผ๋ฉฐ ์ผ์๊ฐ ๋ผ๋ฒจ์ ๋ณด์ ํ์ง ์๋๋ค๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ฐ ๋ค์ PHP๋ฅผ ํตํด ํ๋ฆฐํฐ๋ก ์์ ํ ์ ์์ต๋๋ค. cup ์์ ์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์ผ๋ฏ๋ก exec()๋ฅผ ํตํด ์ฝ์์ ๋ช ๋ น์ ๋ณด๋ด๋ ๊ฒ์ด ๋ ์ฝ์ต๋๋ค.
ESC/P0S๊ฐ ์๋ํ์ง ์๊ธฐ ๋๋ฌธ์ tFPDF ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ PDF๋ก ํ ํ๋ฆฟ์ ๋ง๋ค๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.
require_once($_SERVER["DOCUMENT_ROOT"] . "/tfpdf/tfpdf.php");
$w = 100;
$h = 100;
$number = 59;
$pdf = new tFPDF('P', 'mm', [$w, $h]);
$pdf->SetTitle('Information');
$pdf->AddFont('Font', 'B', $_SERVER["DOCUMENT_ROOT"] . '/fonts/opensans-bold.ttf', true);
$pdf->SetTextColor(0,0,0);
$pdf->SetDrawColor(0,0,0);
$pdf->AddPage('P');
$pdf->SetDisplayMode('real','default');
$pdf->Image($_SERVER["DOCUMENT_ROOT"]. '/images/logo_site.png',$w - 4 - 28,$h - 13,28.1,9.6,'');
$pdf->SetFontSize(140);
$pdf->SetXY(0,24);
$pdf->Cell($w,$h - 45, $number,0,0,'C',0);
$pdf->SetFontSize(1);
$pdf->SetTextColor(255,255,255);
$pdf->Write(0, $number);
$pdf->Output('example.pdf','I');
exec('php label.php | lpr -P Xprinter_XP-460B -o media=Custom.100x102mm');
์ค๋น๊ฐ ๋. ๋๋ ๊ทธ๊ฒ์ ์ค์ ํ๋ ๋ฐ 2์ฃผ ์ฃผ๋ง์ ๋ณด๋์ต๋๋ค. ์ด๊ฒ์ด ๋๊ตฐ๊ฐ์๊ฒ ์ ์ฉํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
์ถ์ฒ : habr.com