Discussion:
kody kreskowe
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Wojciech Pawlowski
2012-05-25 20:19:58 UTC
Permalink
Witam,

Próbuję zabrać się za generowanie w dokumencie kodu kreskowego, na tą chwilę
znalazłem:


\documentclass{article}
\usepackage{pst-barcode}
\begin{document}
\begin{pspicture}(3,1.2in)
\psbarcode[scalex=0.8,scaley=0.8]{9781860742712}{includetext guardwhitespace}{ean13}
\end{pspicture}

\end{document}

jednak nie chce mi złożyć:
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian)
entering extended mode
[Loading MPS to PDF converter (version 2006.09.02).]
)
! Undefined control sequence.
<recently read> \***@lor@***@ps
! Undefined control sequence.
\***@usec@lor ...string \color@ #1#2\endcsname \@@
\fi \space
l.5 ...742712}{includetext guardwhitespace}{ean13}

i tak dalej, przykłady biorę z opisu pakietu.

Jakieś sugestie?

Czy są inne pakiety zajmujące się kodami?

Dziękuję z góry

Wojtek
Michal Jankowski
2012-05-25 22:01:41 UTC
Permalink
psricks nie jest do pdftexa. Przetwarzaj przez .dvi

MJ
Michal Jankowski
2012-05-25 22:02:16 UTC
Permalink
pstricks nie jest do pdftexa. Przetwarzaj przez .dvi

MJ
Wojtek Myszka
2012-05-26 06:29:09 UTC
Permalink
Post by Wojciech Pawlowski
\usepackage{pst-barcode}
To jest najsłynniejszy pakiet do robienia kodów kreskowych, a jego kod jest wykorzystywany bardzo szeroko w innych, zupełnie nie-TeXowych środowiskach... Nie warto nic innego szukac
Post by Wojciech Pawlowski
\begin{document}.
This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian)
Jak napisał Michał (gdzie ty, kurczę, się podziewałeś!?) jest to pakiet LaTeXowy a nie pdfLaTeXowy i wymaga przetwarzania ścieżką przez dvi. Można jednak zastosować pakiet auto-pst-pdf i odrobinę czarów (http://tug.org/PSTricks/main.cgi?file=pdf/pdfoutput#autopstpdf ) na zrozumienie, których warto poświęcić chwile czasu, jeżeli tylko korzysta się dosyć intensywnie z różnych około-LaTeXowych rozwiązań. Najlepiej działa w środowisku Linux/Unix, wymaga instalowania dodatkowych, egzotycznych programów w środowisku Windows...

Wojtek
Jarosław Sokołowski
2012-05-26 10:04:57 UTC
Permalink
Post by Wojtek Myszka
Jak napisał Michał (gdzie ty, kurczę, się podziewałeś!?) jest to pakiet
LaTeXowy a nie pdfLaTeXowy i wymaga przetwarzania ścieżką przez dvi.
Skąd się bierze taka niekompatybilność? Co takiego potrafi TeX (robiąc
DVI) czego nie potrafi pdfTeX (robiąc PDF). Przyznam, że jestam trochę
zaskoczony.
Post by Wojtek Myszka
Można jednak zastosować pakiet auto-pst-pdf i odrobinę czarów
(http://tug.org/PSTricks/main.cgi?file=pdf/pdfoutput#autopstpdf ) na
zrozumienie, których warto poświęcić chwile czasu, jeżeli tylko korzysta
się dosyć intensywnie z różnych około-LaTeXowych rozwiązań. Najlepiej
działa w środowisku Linux/Unix, wymaga instalowania dodatkowych,
egzotycznych programów w środowisku Windows...
Ze dwadzieścia lat temu poradiłem sobie takim programem (robi kod 325):

\newdimen\barht \barht1in
\newdimen\barwd \barwd1in \divide\barwd75
\def\bc#1{\def\3{\vrule width3\barwd}\def\M{\hskip3\barwd}%
\def\1{\vrule width \barwd}\def\m{\hskip \barwd}%
\ifx0#1\1\m\3\M\1\m\fi
\ifx1#1\3\m\1\m\3\m\fi
\ifx2#1\1\M\1\m\3\m\fi
\ifx3#1\3\M\1\m\1\m\fi
\ifx4#1\1\m\3\m\3\m\fi
\ifx5#1\3\m\3\m\1\m\fi
\ifx6#1\1\M\3\m\1\m\fi
\ifx7#1\1\m\1\M\3\m\fi
\ifx8#1\3\m\1\M\1\m\fi
\ifx9#1\1\M\1\M\1\m\fi
\ifx+#1\1\m\1\m\fi
\ifx-#1\3\m\1\m\fi
}
\def\dodolist{\ifx\next\endlist \let\next\relax
\else \bc{\next}\let\next\dolist \fi\next}
\def\dolist{\afterassignment\dodolist\let\next= }
\def\barcode#1{\hbox{\vrule width0pt height\barht\dolist#1\endlist}}

\barcode{+1234567890-}

Jarek
--
Pytają znajomi | Mówię im oglednie
co ja zrobię wreszcie | że z moją kobitą
i gdzie się podziewam | hodujemy pszczoły
gdy mnie nie ma w mieście | pod ruską granicą
Wojtek Myszka
2012-06-12 14:10:54 UTC
Permalink
Post by Jarosław Sokołowski
Skąd się bierze taka niekompatybilność? Co takiego potrafi TeX (robiąc
DVI) czego nie potrafi pdfTeX (robiąc PDF). Przyznam, że jestam trochę
zaskoczony.
Rzadko to zaglądam... Wstyd ;-)
Jest to spowodowane tym, ża Pan Tom Burton zaprogramował wszystko w PostScripcie. Plik pst-barcode.sty składa się z kilku linijek i ładuje pst-barcode.tex, a ten to już niewiele robi. Całą logika zawarta jest w pst-barcode.pro (600k czystego PostScriptu). Więcej na http://code.google.com/p/postscriptbarcode/

Wojtek
Jarosław Sokołowski
2012-06-13 18:49:15 UTC
Permalink
Post by Wojtek Myszka
Post by Jarosław Sokołowski
Skąd się bierze taka niekompatybilność? Co takiego potrafi TeX (robiąc
DVI) czego nie potrafi pdfTeX (robiąc PDF). Przyznam, że jestam trochę
zaskoczony.
Rzadko to zaglądam... Wstyd ;-)
Jest to spowodowane tym, ża Pan Tom Burton zaprogramował wszystko
w PostScripcie. Plik pst-barcode.sty składa się z kilku linijek
i ładuje pst-barcode.tex, a ten to już niewiele robi. Całą logika
zawarta jest w pst-barcode.pro (600k czystego PostScriptu).
Więcej na http://code.google.com/p/postscriptbarcode/
Nie widzę niczego złego w pisaniu kodu w postsripcie, wręcz przeciwnie.
Ale zastanawiać się można dlaczego nie powstał godny polecenia pakiet
do kodów kreskowych napisany wprost w TeXu. Język ten wyśmienicie nadaje
się do opisywania prostokątów, a tu niczego więcj nie potrzeba. Czas
na to był -- był okres, w którym postsripty był uciążliwym dodatkiem
do TeXa, nie zawsze dostępnym, a nie niezauważalną rzeczą, jak dzisiaj.

Pytanie o niekompatybilność nurtuje mnie dalej. Czy było aż tak wielkim
problemem przejęcie "tradycji" dvips przez pdfTeXa? Przypomnę, że sam
dvips przejął sposób obsługi "\special" wcześniej zaimpelmentowany przez
E. Mattesa w emTeXu, a służących do rysowania linii na niepostscriptowych
urządzeniach. Mattesowe linie z kolei zastępowały pierwotne makra LaTeXowe
kombinujące jak koń pod górę przy zestawianiu ukośnych kresek z wcześniej
przygotowanych fontów bitmapowych. To dobra tradycja.
--
Jarek
Wojciech Pawlowski
2012-05-26 08:33:30 UTC
Permalink
Dziękuję za podpowiedzi zadziałało. Takie proste rozwiązanie jak powrót to
pierwotnego składania, heh.

Teraz pozostaje poczytać o pakiecie i zobaczyć jak to zainstalować na windows

Pozdrawiam

Wojtek
Kontynuuj czytanie narkive:
Loading...