Zend_Barcode-Objects.xml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 21667 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.barcode.objects" xmlns:xi="http://www.w3.org/2001/XInclude">
  5. <title>Zend_Barcode Objekte</title>
  6. <para>
  7. Barcode Objekte erlauben es Barcodes unabhängig von der Unterstützung eines
  8. Renderers zu
  9. erstellen. Nach der Erstellung kann der Barcode als Array von Zeichen
  10. Anweisungen empfangen
  11. werden die an einen Renderer übergeben werden können.
  12. </para>
  13. <para>
  14. Objekte haben eine große Anzahl an Optionen. Die meisten von Ihnen sind allen
  15. Objekten
  16. gemein. Diese Optionen können auf vier Wegen gesetzt werden:
  17. </para>
  18. <itemizedlist>
  19. <listitem>
  20. <para>
  21. Als Array oder
  22. <classname>Zend_Config</classname>
  23. Objekt welches dem Constructor
  24. übergeben wird.
  25. </para>
  26. </listitem>
  27. <listitem>
  28. <para>
  29. Als Array das der
  30. <methodname>setOptions()</methodname>
  31. Methode übergeben wird.
  32. </para>
  33. </listitem>
  34. <listitem>
  35. <para>
  36. Als
  37. <classname>Zend_Config</classname>
  38. Objekt welches der
  39. <methodname>setConfig()</methodname>
  40. Methode übergeben wird.
  41. </para>
  42. </listitem>
  43. <listitem>
  44. <para>Über individuelle Setter für jeden Konfigurations Typ.</para>
  45. </listitem>
  46. </itemizedlist>
  47. <example id="zend.barcode.objects.configuration">
  48. <title>Unterschiedliche Wege ein Barcode Objekt zu parametrisieren</title>
  49. <programlisting language="php"><![CDATA[
  50. $options = array('text' => 'ZEND-FRAMEWORK', 'barHeight' => 40);
  51. // Fall 1: Constructor
  52. $barcode = new Zend_Barcode_Object_Code39($options);
  53. // Fall 2: setOptions()
  54. $barcode = new Zend_Barcode_Object_Code39();
  55. $barcode->setOptions($options);
  56. // Fall 3: setConfig()
  57. $config = new Zend_Config($options);
  58. $barcode = new Zend_Barcode_Object_Code39();
  59. $barcode->setConfig($config);
  60. // Fall 4: individuelle Setter
  61. $barcode = new Zend_Barcode_Object_Code39();
  62. $barcode->setText('ZEND-FRAMEWORK')
  63. ->setBarHeight(40);
  64. ]]></programlisting>
  65. </example>
  66. <sect2 id="zend.barcode.objects.common.options">
  67. <title>Gemeinsame Optionen</title>
  68. <para>
  69. In der folgenden Liste haben die Werte keine Einheit; wir werden den
  70. Ausdruck "Einheit"
  71. verwenden. Zum Beispiel, ist der Standardwert "dünner Balken" genau "1
  72. Einheit". Die
  73. echte Einheit hängt von der Unterstützung beim Darstellen ab (siehe
  74. <link linkend="zend.barcode.renderers">die Renderer Dokumentation</link>
  75. für mehr
  76. Informationen). Setter werden benannt indem der erste Buchstabe der Option
  77. großgeschrieben und dem Namen "set" vorangestellt wird (z.B.
  78. "barHeight" =>
  79. "setBarHeight"). Alle Optionen haben einen entsprechenden Getter dem "get"
  80. vorangestellt
  81. ist (z.B. "getBarHeight"). Die vorhandenen Optionen sind:
  82. </para>
  83. <table id="zend.barcode.objects.common.options.table">
  84. <title>Gemeinsame Optionen</title>
  85. <tgroup cols="4">
  86. <thead>
  87. <row>
  88. <entry>Option</entry>
  89. <entry>Daten Typ</entry>
  90. <entry>Standardwert</entry>
  91. <entry>Beschreibung</entry>
  92. </row>
  93. </thead>
  94. <tbody>
  95. <row>
  96. <entry>
  97. <emphasis>barcodeNamespace</emphasis>
  98. </entry>
  99. <entry>
  100. <type>String</type>
  101. </entry>
  102. <entry>
  103. <classname>Zend_Barcode_Object</classname>
  104. </entry>
  105. <entry>
  106. Namespace des Renderers; zum Beispiel wenn man den Renderer erweitern
  107. muss
  108. </entry>
  109. </row>
  110. <row>
  111. <entry>
  112. <emphasis>barHeight</emphasis>
  113. </entry>
  114. <entry>
  115. <type>Integer</type>
  116. </entry>
  117. <entry>50</entry>
  118. <entry>Höhe der Balken</entry>
  119. </row>
  120. <row>
  121. <entry>
  122. <emphasis>barThickWidth</emphasis>
  123. </entry>
  124. <entry>
  125. <type>Integer</type>
  126. </entry>
  127. <entry>3</entry>
  128. <entry>Breite des dicken Balken</entry>
  129. </row>
  130. <row>
  131. <entry>
  132. <emphasis>barThinWidth</emphasis>
  133. </entry>
  134. <entry>
  135. <type>Integer</type>
  136. </entry>
  137. <entry>1</entry>
  138. <entry>Breite des dünnen Balkens</entry>
  139. </row>
  140. <row>
  141. <entry>
  142. <emphasis>factor</emphasis>
  143. </entry>
  144. <entry>
  145. <type>Integer</type>
  146. </entry>
  147. <entry>1</entry>
  148. <entry>
  149. Faktor mit dem die Balkenbreiten und Schriftgrößen multipliziert werden
  150. </entry>
  151. </row>
  152. <row>
  153. <entry>
  154. <emphasis>foreColor</emphasis>
  155. </entry>
  156. <entry>
  157. <type>Integer</type>
  158. </entry>
  159. <entry>0 (schwarz)</entry>
  160. <entry>
  161. Farbe des Balken und des Textes. Könnte als Integer oder als
  162. <acronym>HTML</acronym>
  163. Wert übergeben werden (z.B. "#333333")
  164. </entry>
  165. </row>
  166. <row>
  167. <entry>
  168. <emphasis>backgroundColor</emphasis>
  169. </entry>
  170. <entry>
  171. <type>Integer</type>
  172. oder
  173. <type>String</type>
  174. </entry>
  175. <entry>16777125 (white)</entry>
  176. <entry>
  177. Farbe des Hintergrundes. Könnte als Integer oder als
  178. <acronym>HTML</acronym>
  179. Wert übergeben werden (z.B. "#333333")
  180. </entry>
  181. </row>
  182. <row>
  183. <entry>
  184. <emphasis>reverseColor</emphasis>
  185. </entry>
  186. <entry>
  187. <type>Boolean</type>
  188. </entry>
  189. <entry>
  190. <constant>FALSE</constant>
  191. </entry>
  192. <entry>
  193. Erlaubt die Änderung der Farbe des Balken und des Hintergrunds
  194. </entry>
  195. </row>
  196. <row>
  197. <entry>
  198. <emphasis>orientation</emphasis>
  199. </entry>
  200. <entry>
  201. <type>Integer</type>
  202. </entry>
  203. <entry>0</entry>
  204. <entry>Orientierung des Barcodes</entry>
  205. </row>
  206. <row>
  207. <entry>
  208. <emphasis>font</emphasis>
  209. </entry>
  210. <entry>
  211. <type>String</type>
  212. oder
  213. <type>Integer</type>
  214. </entry>
  215. <entry>
  216. <constant>NULL</constant>
  217. </entry>
  218. <entry>
  219. Pfad zu einer
  220. <acronym>TTF</acronym>
  221. Schriftart oder eine Zahl zwischen
  222. 1 und 5 wenn die Bilderstellung mit GD verwendet wird (interne
  223. Schriftarten)
  224. </entry>
  225. </row>
  226. <row>
  227. <entry>
  228. <emphasis>fontSize</emphasis>
  229. </entry>
  230. <entry>
  231. <type>Integer</type>
  232. </entry>
  233. <entry>10</entry>
  234. <entry>
  235. Größe der Schriftart (nicht anwendbar bei nummerischen Schriftarten)
  236. </entry>
  237. </row>
  238. <row>
  239. <entry>
  240. <emphasis>withBorder</emphasis>
  241. </entry>
  242. <entry>
  243. <type>Boolean</type>
  244. </entry>
  245. <entry>
  246. <constant>FALSE</constant>
  247. </entry>
  248. <entry>Zeichnet einen Rahmen um den Barcode und die Randzonen</entry>
  249. </row>
  250. <row>
  251. <entry>
  252. <emphasis>withQuietZones</emphasis>
  253. </entry>
  254. <entry>
  255. <type>Boolean</type>
  256. </entry>
  257. <entry>
  258. <constant>TRUE</constant>
  259. </entry>
  260. <entry>Lässt die Leerzone vor und nach dem Barcode weg</entry>
  261. </row>
  262. <row>
  263. <entry>
  264. <emphasis>drawText</emphasis>
  265. </entry>
  266. <entry>
  267. <type>Boolean</type>
  268. </entry>
  269. <entry>
  270. <constant>TRUE</constant>
  271. </entry>
  272. <entry>Setzt ob der Text unter dem Barcode angezeigt wird</entry>
  273. </row>
  274. <row>
  275. <entry>
  276. <emphasis>stretchText</emphasis>
  277. </entry>
  278. <entry>
  279. <type>Boolean</type>
  280. </entry>
  281. <entry>
  282. <constant>FALSE</constant>
  283. </entry>
  284. <entry>
  285. Spezifiziert ob der Text entlang des kompletten Barcodes gestreckt
  286. werden soll
  287. </entry>
  288. </row>
  289. <row>
  290. <entry>
  291. <emphasis>withChecksum</emphasis>
  292. </entry>
  293. <entry>
  294. <type>Boolean</type>
  295. </entry>
  296. <entry>
  297. <constant>FALSE</constant>
  298. </entry>
  299. <entry>
  300. Zeigt ob die Checksumme dem Barcode automatisch hinzugefügt wird oder
  301. nicht
  302. </entry>
  303. </row>
  304. <row>
  305. <entry>
  306. <emphasis>withChecksumInText</emphasis>
  307. </entry>
  308. <entry>
  309. <type>Boolean</type>
  310. </entry>
  311. <entry>
  312. <constant>FALSE</constant>
  313. </entry>
  314. <entry>
  315. Zeigt ob die Checksumme in der textuellen Repräsentation angezeigt
  316. wird
  317. oder nicht
  318. </entry>
  319. </row>
  320. <row>
  321. <entry>
  322. <emphasis>text</emphasis>
  323. </entry>
  324. <entry>
  325. <type>String</type>
  326. </entry>
  327. <entry>
  328. <constant>NULL</constant>
  329. </entry>
  330. <entry>Der Text der repräsentiert wird, als Barcode</entry>
  331. </row>
  332. </tbody>
  333. </tgroup>
  334. </table>
  335. <sect3 id="zend.barcode.objects.common.options.barcodefont">
  336. <title>Spezieller Fall der statischen setBarcodeFont()</title>
  337. <para>
  338. Man kann eine gemeinsame Schriftart für alle eigenen Objekte setzen
  339. indem die
  340. statische Methode
  341. <methodname>Zend_Barcode_Object::setBarcodeFont()</methodname>
  342. verwendet wird. Dieser Wert wird von individuellen Objekten immer
  343. überschrieben
  344. wenn die
  345. <methodname>setFont()</methodname>
  346. Methode verwendet wird.
  347. </para>
  348. <programlisting language="php"><![CDATA[
  349. // In der eigenen Bootstrap Datei:
  350. Zend_Barcode_Object::setBarcodeFont('my_font.ttf');
  351. // Später im eigenen Code:
  352. Zend_Barcode::render(
  353. 'code39',
  354. 'pdf',
  355. array('text' => 'ZEND-FRAMEWORK')
  356. ); // will use 'my_font.ttf'
  357. // oder:
  358. Zend_Barcode::render(
  359. 'code39',
  360. 'image',
  361. array(
  362. 'text' => 'ZEND-FRAMEWORK',
  363. 'font' => 3
  364. )
  365. ); // will use the 3rd GD internal font
  366. ]]></programlisting>
  367. </sect3>
  368. </sect2>
  369. <sect2 id="zend.barcode.objects.common.getters">
  370. <title>Gemeinsame zusätzliche Getter</title>
  371. <para></para>
  372. <table id="zend.barcode.objects.common.getters.table">
  373. <title>Gemeinsame Getter</title>
  374. <tgroup cols="3">
  375. <thead>
  376. <row>
  377. <entry>Getter</entry>
  378. <entry>Daten Typ</entry>
  379. <entry>Beschreibung</entry>
  380. </row>
  381. </thead>
  382. <tbody>
  383. <row>
  384. <entry>
  385. <methodname>getType()</methodname>
  386. </entry>
  387. <entry>
  388. <type>String</type>
  389. </entry>
  390. <entry>
  391. Gibt den Namen der Barcode Klasse ohne den Namespace zurück (z.B.
  392. gibt
  393. <classname>Zend_Barcode_Object_Code39</classname>
  394. einfach
  395. "code39" zurück)
  396. </entry>
  397. </row>
  398. <row>
  399. <entry>
  400. <methodname>getRawText()</methodname>
  401. </entry>
  402. <entry>
  403. <type>String</type>
  404. </entry>
  405. <entry>
  406. Gibt den originalen Text zurück der beim Objekt angegeben wurde
  407. </entry>
  408. </row>
  409. <row>
  410. <entry>
  411. <methodname>getTextToDisplay()</methodname>
  412. </entry>
  413. <entry>
  414. <type>String</type>
  415. </entry>
  416. <entry>
  417. Gibt den Text zurück welche angezeigt wird, inklusive, wenn
  418. aktiviert,
  419. den Wert der Checksumme
  420. </entry>
  421. </row>
  422. <row>
  423. <entry>
  424. <methodname>getQuietZone()</methodname>
  425. </entry>
  426. <entry>
  427. <type>Integer</type>
  428. </entry>
  429. <entry>
  430. Gibt die Größe des Raumes an der vor und nach dem Barcode benötigt
  431. wird
  432. und keine Zeichnung enthält
  433. </entry>
  434. </row>
  435. <row>
  436. <entry>
  437. <methodname>getInstructions()</methodname>
  438. </entry>
  439. <entry>
  440. <type>Array</type>
  441. </entry>
  442. <entry>Gibt die Zeichenanweisungen als Array zurück.</entry>
  443. </row>
  444. <row>
  445. <entry>
  446. <methodname>getHeight($recalculate = false)</methodname>
  447. </entry>
  448. <entry>
  449. <type>Integer</type>
  450. </entry>
  451. <entry>
  452. Gibt die Höhe des Barcodes berechnet nach einer möglichen Rotation
  453. zurück
  454. </entry>
  455. </row>
  456. <row>
  457. <entry>
  458. <methodname>getWidth($recalculate = false)</methodname>
  459. </entry>
  460. <entry>
  461. <type>Integer</type>
  462. </entry>
  463. <entry>
  464. Gibt den Wert des Barcodes berechnet nach einer möglichen Rotation
  465. zurück
  466. </entry>
  467. </row>
  468. <row>
  469. <entry>
  470. <methodname>getOffsetTop($recalculate = false)</methodname>
  471. </entry>
  472. <entry>
  473. <type>Integer</type>
  474. </entry>
  475. <entry>
  476. Gibt die oberste Position des Barcodes berechnet nach einer möglichen
  477. Rotation zurück
  478. </entry>
  479. </row>
  480. <row>
  481. <entry>
  482. <methodname>getOffsetLeft($recalculate = false)</methodname>
  483. </entry>
  484. <entry>
  485. <type>Integer</type>
  486. </entry>
  487. <entry>
  488. Gibt die linke Position des Barcodes berechnet nach einer möglichen
  489. Rotation zurück
  490. </entry>
  491. </row>
  492. </tbody>
  493. </tgroup>
  494. </table>
  495. </sect2>
  496. <xi:include href="Zend_Barcode-Objects_Details.xml" />
  497. </sect1>