Harte Nuss? Progr.-Cracks gefragt

Dieses Thema im Forum "Software" wurde erstellt von didl, 27. Februar 2005.

  1. didl

    didl New Member

  2. Pahe

    Pahe New Member

    Hallo,

    die Berechnung geschieht einfach mit einem PHP-Skript.

    Basispreis + Arbeitspreis * Größenfaktor= Preis pro Stück

    Mengenrabatt= einfache Prozentrechnung gemäß Rabattstaffel

    Dargestellt wird das Ganze in Tabellen

    Gruß
    Pahe
     
  3. didl

    didl New Member

    Hi,

    erstmal danke für Deine Mühe!
    Worum es mir geht:
    Die Lauflänge des Textes stellst Du ein, dann wird die Höhe
    anhand der eingegebenen Parameter ausgerechnet:

    a) Anzahl UND Art der Buchstaben pro Zeile
    ( z.B. WWW läuft länger als iii )

    b) Schriftart
    (auch beim ändern der Schriftart ändert sich die Höhe)

    c) Anzahl der Zeilen.

    Aus Höhe mal Breite den Preis zu berechnen ist dann kein Problem mehr.

    Aber, wie erechnet das Programm die Höhe.

    Haben noch keinen Lösungsansatz gefunden.

    Gruss, didl
     
  4. Pahe

    Pahe New Member

    Hallo,

    die Höhe=Kegelhöhe der Schrift
    Die liegt durch den gewählten Font und durch die gewählte Punktgröße fest und kann einfach aus einer Datenbank oder einer Datei mit Hilfe des Skripts ausgelesen werden.
    Die Lauflänge ist durch die Fontinformationen auch bekannt und kann ebenfalls für jedes Zeichen ausgelesen und dann addiert werden.
    Für solche Fälle eignet sich ein assoziatives Array wobei über den einzelnen Buchstaben assoziert wird.
    Buchstabe als Parameter - ausgelesen wird die Breite. Ggf ist noch die Kerninginformation wichtig. Wird aber meistens durch genügend Spielraum für die Breitenbemessung vernachlässigt
    Das Ganze ist halt nicht stufenlos.

    Die Rechnerei ist eigentlich das geringste Problem. Wichtig ist die Vorarbeit um die Bemessungsdaten in die Datenbank zu kriegen.

    Gruß
    Pahe
     
  5. didl

    didl New Member

    Den Gedanken hatte ich schon, nur wieder verworfen da bei 80 Zeichen pro Schriftsatz und 30 versch. Schriftsätzen mal eben 2400 Daten abgelegt werden müßten. Dazu kommt das bei gleich eingestellter Schrifthöhe, die tatsächliche Versalhöhe dann auch noch unterschiedlich ist. Ergibt dann zigtausend Daten, welche man dann in der Datenbank ablegen müßte.

    Ich habe Überlegungen angestellt, ob es nicht eine Vermaßung des Textfeldes gibt, die man dann nur noch anhand der eingestellten Lauflänge per Formel hochrechnen kann.
    Ich kann z.B. in FreeHand eine Textbox mit fester Breite aufziehen und anschließend mit Text in versch. Größe, Schriftart und Zeilen füllen
    Wir progr. gerade einen Webshop in Flash, wobei die eigentliche Flashprogrammierung ein Bekannter macht.
    Gruss, didl
     
  6. Pahe

    Pahe New Member

    Hallo,

    Hier hilft dann nur noch, wie ich als Alternative schon beschrieben hatte - bei der Breite genug Spielraum zu lassen dann gibt es für die Laufweite nur den Duchschnittswert als eine Zahl. Das ergibt bei 30 Fonts je 1 Zahl für eine Basis-Kegelhöhe (z.B.10pt Font) und eine Zahl, dem Laufweitenfaktor*) für die Durchschnitts-Zeichen pro mm (aus der Laufweite berechnet)
    Damit reicht ein einfacher 3-Satz, um die Breite und Höhe zu ermitteln:
    Bemessungsgröße ist z.B. 10pt Font->Fontfaktor=10
    Faktor=gewählte FolienHöhe[mm]/Kegelhöhe bei 10pt[mm]
    Fontgröße (in pt) = Fontfaktor * Faktor
    Hier kann man per Rundung auf ganze Zahlen kommen
    Dann -
    dasselbe mit der gewählten Breite
    Länge=Laufweitenfaktor*Anzahl zeichen*FontgrößeZeichen/Fontfaktor

    Hier ist bei der Beschickung der Datenbank entweder die Kegelhöhe der einzelnen Fonts und der Laufweitenfaktor zu berechnen oder aus Tabellen auszulesen.
    Ich weiß nicht wo im Header des Fonts diese Daten (Laufweitenkennzahl und Kegelhöhe stehen) sonst könnte ich auch damit dienen. Vielleicht finde ich es auch noch raus. Kannst aber auch selbst versuchen derartige Informationen herauszubekommen. Wenn zwei suchen geht's schneller.
    Mit diesen Informationen ist jedenfalls das Ganze relativ einfach.

    Gruß
    Pahe
     
  7. didl

    didl New Member

    Hi Pahe,

    finde ich cool, daß sich mal jemand mit so einem komplexen Thema auseinandersetzt.
    Wie schon gesagt die Seite wird in Flash programmiert.
    Habe gestern mal im Flashforum gestöbert und auch was gefunden (leider nur für die Dosenwelt).
    http://www.flashforum.de/forum/showthread.php?t=122850
    Aber mein Kollege, der die Flashprogr. macht, meint das Prob. lösen zu können. Ich habe von Flash weniger als 0-Plan.

    Trotzdem Danke, Gruss Didl
     
  8. Pahe

    Pahe New Member

    Hallo,

    Achtung! Diese Berechnung in Flash auf Basis der Ausdehnung am Bildschirm lösen zu wollen wird scheitern. Die Bildschirmdarstellung ist nur für Reproduktion am Bildschirm brauchbar und hat mit einem Produkt nichts zu tun. Hier kann diese Berechnung am Bildschirm kein Maßstab sein denn der Maßstab muß aus den Definitionen für das Ziel genommen werden.
    Wenn man z.B. als Ausgabe die Daten an einen Folienschneider übermittelt ist man mit solcher Berechnung unter Umständen "Meilen" daneben.
    Will man dagegen die Ausgabe in Pixel ermitteln um eine Bildschirmausgabe daraus zu generieren, kann dann schon aus Mustern abgeleitet werden, allerdings ist unter Umständen die Bildschirmauflösung beim Besucher der Seite erheblich anders, können auch dabei Fehler resultieren.
    Ob jetzt die Berechnung in Flash oder PHP vorgenommen wird, ist eigentlich unerheblich. Entscheidend sind die zugrundegelegten Daten bzw. ihre Genauigkeit.

    Gruß
    Pahe
     
  9. didl

    didl New Member

    Hallo Pahe,

    Die Daten sollen nicht für die Produktion übernommen werden.

    In der Praxis ist es so: Der Kunde hat z.B. eine Fläche von 300cm Breite und 70 cm Höhe, möchte in dieser Fläche z.B.
    den Schriftzug "Auto Alf" stehen haben. Bei der Lauflänge ist mit keiner Schrift eine VH von 70 zu erreichen. Oder der andere Fall, Fläche 70cm breit, der Schriftzug
    3w.autoreperaturundalleswasdazugehoert.de
    soll in 10cm hohen Lettern darin stehen.
    Soll heißen, die wenigsten Kunden haben ein Gefühl für das Verhältniss aus Lauflänge und Versalhöhe.
    Der Kunde soll auf der HP eine CIRCA-Höhe bei der von ihm eingestellten Lauflänge bekommen.
    Nach der Bestellung erhält er eine Korrektur-Mail mit PDF und exacten Maßen.
    Gruss, Didl
     
  10. Pahe

    Pahe New Member

    Hallo,

    dafür müßte es gut einsetzbar sein. Für Visualisierung ist der Bildschirm, zumal die heute erhältlichen mit der Auflösung bestens geeignet.
    Damit ist bei der Berechnung des Preises auch letzendlich nur die Anzahl der Zeichen von Bedeutung und die ca. Fläche der Folie.

    Zu deinen Beispielen bezüglich unsinniger Seitenverhältnisse und daraus unsinniger Proportionen, obwohl Vektorschriften auch dahingehend skaliert werden könnten, würde ich auch unsinnige Abkürzungen als Problemfall einstufen und den Benutzer per Mail melden oder auf der Seite einen entsprechenden Hinweis anbringen.
    Manchmal werden von Laien schon Sachen gewünscht, da kann man sich nur wundern. Deshalb ist eine Visualisierung schon ein sehr probates Mittel um wenigstens den den größten Unsinn zu vermeiden, indem man den Besucher das Produkt sozusagen im Spiegel betrachten läßt.

    Gruß
    Pahe
     
  11. didl

    didl New Member

    Du hast 'ne mail...
     

Diese Seite empfehlen