Rol: width=1.9 ->gibts sowas?

Hi,

ich habe folgendes Problem:

Ein Perl Script erzeugt HTML Code welcher einige Barcodes enthällt.

Diese Barcodes habe ich in der Verganngenheit einfach durch Streifen von schwarzen und weißen .gif's mit der Breite von width=2 bzw. width=4 erstellt.

Das ergibt dann auf meinem Drucker einen Strichbreite von 0,528 mm für die schmalen Streifen.

Die Firma, die die Barcodes liest, gibt eine Breite von 0,375 - 0,5 mm vor. Meine etwas zu dicken Streifen wurden jedoch in der Verganngeheit Problemlos gelesen.

Offensichtlich haben die aber jetzt weniger tollerante Scanner und können meine Barcodes nicht mehr lesen.

Eine Möglichkeit wäre jetzt, die Barcodes mit Perl-GD als Bilder zu erzeugen, ich streube mich aber z.Z. noch gegen die viele Arbeit.

Gibt es eine Möglichkeit, bilder mit nichtganzzahligen Width-Angaben zu versehen?

Sorry wegen der wahrscheinlich albernen Frage ;-(.

Viele Grüße

Rol

  1. Moin!

    Diese Barcodes habe ich in der Verganngenheit einfach durch Streifen von schwarzen und weißen .gif's mit der Breite von width=2 bzw. width=4 erstellt.

    Das bezieht sich ja aber nur auf die Bildschirmdarstellung. Wie groß die Bilder auf dem Drucker sind, ist damit nicht gesagt.

    Das ergibt dann auf meinem Drucker einen Strichbreite von 0,528 mm für die schmalen Streifen.

    Tja, bei _deinem_ Drucker mag das so sein. _Kann_ auch bei anderen Druckern so sein. Ist aber nicht garantiert.

    Die Firma, die die Barcodes liest, gibt eine Breite von 0,375 - 0,5 mm vor. Meine etwas zu dicken Streifen wurden jedoch in der Verganngeheit Problemlos gelesen.

    Offensichtlich haben die aber jetzt weniger tollerante Scanner und können meine Barcodes nicht mehr lesen.

    Eine Möglichkeit wäre jetzt, die Barcodes mit Perl-GD als Bilder zu erzeugen, ich streube mich aber z.Z. noch gegen die viele Arbeit.

    Verlasse dich einfach nicht auf GIFs. Ich würde einfach passend zurechtgebastelte <DIV>-Blöcke nebeneinanderpositionieren und mit einem Druck-Stylesheet Millimetergenau breit werden lassen. Das kann dann wirklich jeder Drucker und (bis auf den Netscape 4) auch jeder Browser ausdrucken.

    Darüber hinaus kannst du im Druck-Stylesheet einem Bild natürlich auch eine Millimeterbreite geben, wenn dir das hilft.

    Merke: Die Welt besteht außerhalb des Bildschirms nicht aus Pixeln. :)

    - Sven Rautenberg

    1. Hi,

      Das ergibt dann auf meinem Drucker einen Strichbreite von 0,528 mm für die schmalen Streifen.

      Tja, bei _deinem_ Drucker mag das so sein. _Kann_ auch bei anderen Druckern so sein. Ist aber nicht garantiert.

      Das muß auch nur auf meinem (bzw. _einem_) Drucker _so_ funktionieren.

      Verlasse dich einfach nicht auf GIFs. Ich würde einfach passend zurechtgebastelte <DIV>-Blöcke nebeneinanderpositionieren und mit einem Druck-Stylesheet Millimetergenau breit werden lassen. Das kann dann wirklich jeder Drucker und (bis auf den Netscape 4) auch jeder Browser ausdrucken.

      Darüber hinaus kannst du im Druck-Stylesheet einem Bild natürlich auch eine Millimeterbreite geben, wenn dir das hilft.

      Millimetergenau ist zu ungenau, es geht um 0,1 mm.
      Geht dass mit dieser Auflösung?

      Grüße

      Rol

      1. Moin!

        Das muß auch nur auf meinem (bzw. _einem_) Drucker _so_ funktionieren.

        Sag das doch vorher. Angepaßte Insellösungen mit definierten Bedingungen sind viel leichter hinzukriegen, als wenn man alles beachten muß.

        Millimetergenau ist zu ungenau, es geht um 0,1 mm.
        Geht dass mit dieser Auflösung?

        Hast du es etwa noch nicht ausprobiert? Du kannst mit CSS eine beliebige Genauigkeit angeben, also bis zum Nanometer hin. Ist nur dir Frage, ob der Drucker das auch hinkriegt - und der Browser.

        Und übrigens: 0.5 mm ist auch eine Millimeterbreite. Du kannst aber auch gerne Zentimeter, Inch oder Punkt (1/72 Inch = 0,3527777777 mm) als Breitenangabe nehmen, wenn dir das lieber ist.

        - Sven Rautenberg

        1. Hi Sven,

          Das muß auch nur auf meinem (bzw. _einem_) Drucker _so_ funktionieren.

          Sag das doch vorher. Angepaßte Insellösungen mit definierten Bedingungen sind viel leichter hinzukriegen, als wenn man alles beachten muß.

          Ich hatte eigentlich "auf meinem Drucker" geschrieben, hätte mich vielleicht deutlicher ausdrücken sollen...

          Millimetergenau ist zu ungenau, es geht um 0,1 mm.
          Geht dass mit dieser Auflösung?

          Hast du es etwa noch nicht ausprobiert? Du kannst mit CSS eine beliebige Genauigkeit angeben, also bis zum Nanometer hin.

          Ich muß zu meiner Schande gestehen, dass ich CSS (zumindest diesen Teil) in der Vergangenheit etwas Stiefmütterlich behandelt habe. Schäm :-(.

          Ich habe jetzt Toms Lösung verwendet, es funktioniert.

          Trotzdem Danke.

          Viele Grüße

          Rol

          1. Hallo Rol

            Ich habe jetzt Toms Lösung verwendet, es funktioniert.

            Ist ja quasi auch die gleiche Lösung, wie die von Sven.
            Unterschied ist nur der "Träger" des Barcodestrichs.
            Die zu bewegende Datenmenge ist bei <div> jedoch geringer
            als bei gifs, was bei dir, wenn ich richtig gelesen habe,
            aber keine Rolle spielt.

            Tschüß, Auge

  2. schonmal sowas wie <img alt="" src="bild.gif" style="width:5.123123mm;height:6.313123mm;"> probiert?

    1. schonmal sowas wie <img alt="" src="bild.gif" style="width:5.123123mm;height:6.313123mm;"> probiert?

      Danke!