AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Vektor Format anzeigen/drucken
Thema durchsuchen
Ansicht
Themen-Optionen

Vektor Format anzeigen/drucken

Ein Thema von Gruber_Hans_12345 · begonnen am 5. Nov 2007 · letzter Beitrag vom 24. Nov 2007
Antwort Antwort
Seite 9 von 10   « Erste     789 10      
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#81

Re: Vektor Format anzeigen/drucken

  Alt 20. Nov 2007, 21:19
Hallo,

Zitat von Gruber_Hans_12345:
ja, es liegt an dem teil, meine frage ist, aber warum?

ich kann linien zeichnen, texte ausgeben, alles ohne probleme funktioniert mit dem koordinatensystem perfekt, aber sobald ein path dabei ist, sind alle linien dahinter kaput, texte funktionieren wieder
wenn ich dann systematisch vor jeder ausgabe im GDI+ den teil mit dem logischen Font reinschreibe, dann passen fast alle pfade (ein einziger wird nicht an der richtigen stelle gezeichnet) - aber das sagt eigetnlich ja aus, das es kein problem mit dem koordinatensystem ist, sondern ein nebeneffekt - würde ich sagen ...
Da bin ich etwas ratlos. Sämtliche Objekte werden ja per Pfad gezeichnet und die Zeichenroutine ist immer die selbe. Folglich gibt es zwischen Linien, Rechtecken und Pfaden programmatisch keinen Unterschied.

Zitat von Gruber_Hans_12345:
und das problem mit dem kerning (also dem , true und ,false) hat nix damit zu tun, dann auch auf dem bildschirm, ohne den ganzen mapmode und co gibt es das selbe problem, nur nicht ganz so gravierend, da passt es nur um den faktor 1.8 nicht
Ich habe gerade das gepostete Dokument in meinem Viewer angesehen, und ich muss sagen, der Text stimmt bei mir genau. Poste doch mal den Quelltext Deines Programms.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#82

Re: Vektor Format anzeigen/drucken

  Alt 20. Nov 2007, 21:35
ja das mit den pfaden ist schon komisch, werde bei gelgenheit noch mal schauen, ob mir noch zusätzlich was auffällt ...

ich habe es schon probiert, die linien auch direkt zu zeichnen, aber das hilft nix (und die pfade direkt zu zeichnen sieht um einiges schwieriger aus) - werde es mir morgen mal mit polygonen und co testen

was ich auch komisch finde ist es das das logische font wieder das ganze repariert

Zitat von xaromz:
Ich habe gerade das gepostete Dokument in meinem Viewer angesehen, und ich muss sagen, der Text stimmt bei mir genau. Poste doch mal den Quelltext Deines Programms.

Gruß
xaromz
wenn du direkt beim laden das ganze in pfade wandelst, dann funkt es
aber wenn die texte erst beim zeichnen ausgegeben werden (so wie im beitrag #67) dann gibt es probleme (und nur dann wird ja auch die funktion AddToGraphics aufgerufen)
beim addToPath passt alles so wie es ist.
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#83

Re: Vektor Format anzeigen/drucken

  Alt 20. Nov 2007, 22:14
Hallo,

Zitat von Gruber_Hans_12345:
wenn du direkt beim laden das ganze in pfade wandelst, dann funkt es
aber wenn die texte erst beim zeichnen ausgegeben werden (so wie im beitrag #67) dann gibt es probleme (und nur dann wird ja auch die funktion AddToGraphics aufgerufen)
beim addToPath passt alles so wie es ist.
Auffallend richtig . Ich habe aber das Problem gefunden (wieder mal verschiedene Einheiten, diesmal Point vs. Pixel). Es gibt also schon wieder eine neue Version, diesmal inklusive Compilerschalter, den ich aber positiv formuliert habe (also USE_TEXT).

Langsam glaube ich fast, ich hätte die Komponente nie schreiben sollen. Wie viel Arbeit es macht, die zu pflegen und Fehler zu beheben... ein wahrer Alptraum . Und die nächste Aufgabe wartet schon: Text an Pfaden ausrichten. Das kommt aber erst nächste Woche.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#84

Re: Vektor Format anzeigen/drucken

  Alt 21. Nov 2007, 08:28
also das mit dem kaputtmachen des canvas nach einem path passiert auch nach einem rectangle .... und hat nur was mit GDI+ zu tun ...

habe mal folgendes ausprobiert :

Delphi-Quellcode:
procedure PaintLine(graphics : TGPGraphics);
var
    font : TGPFont;
    solidBrush : TGPSolidBrush;
    pen : TGPPen;
    LF : TLogFontW;
begin
    Font := TGPFont.Create('Arial', 8);
    solidBrush := TGPSolidBrush.Create(MakeColor(255, 0, 0, 255));
    pen := TGPPen.Create(MakeColor(255,0,0));

    graphics.DrawLine(pen, 4, 30, 204, 30);

    Graphics.FillRectangle(solidBrush, MakeRect(10, 10, 30, 30));
    graphics.DrawLine(pen, 4, 40, 204, 40);

    Font.GetLogFontW(Graphics, LF);
    graphics.DrawLine(pen, 4, 50, 204, 50);

    Graphics.FillRectangle(solidBrush, MakeRect(110, 110, 40, 30));
    graphics.DrawLine(pen, 4, 60, 204, 60);

    Font.GetLogFontW(Graphics, LF);
    graphics.DrawLine(pen, 4, 70, 204, 70);

    Font.Free;
    pen.Free;
    solidBrush.Free;
end;
komischerweise macht das erste rectangle irgendwas, das die linien nicht mehr korrekt gezeichnet werden, das erste GetLogFont repariert das wieder, nach dem zweiten Rectangle passt aber alles (Das zweite GetLogFont braucht man nicht mehr ...)
Angehängte Dateien
Dateityp: pdf test_198.pdf (1,7 KB, 9x aufgerufen)
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#85

Re: Vektor Format anzeigen/drucken

  Alt 21. Nov 2007, 09:32
Darf ich hier mal eine kleine vielleicht unwichtige Zwischenfrage im Expertentalk stellen!?

In den Svg-Dateien ist doch eigentlich eine Grösse der anzuzeigenden Grafik vordefiniert. Oder? Wäre es nicht sinnvoll der SVG-Image eine Autosize-Property mitzugeben, welche realisiert, dass die SVG-Image bei True die vordefinierte Grösse annimmt!?
Danke
Tom
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#86

Re: Vektor Format anzeigen/drucken

  Alt 21. Nov 2007, 18:43
Hallo,

Zitat von Gruber_Hans_12345:
also das mit dem kaputtmachen des canvas nach einem path passiert auch nach einem rectangle .... und hat nur was mit GDI+ zu tun ...
Das ist merkwürdig. Ist wohl tatsächlich ein Problem GDI <> GDI+. Da bin ich ja dann aus dem Schneider . Lösung hab' ich aber leider keine .

Zitat von torud:
In den Svg-Dateien ist doch eigentlich eine Grösse der anzuzeigenden Grafik vordefiniert. Oder? Wäre es nicht sinnvoll der SVG-Image eine Autosize-Property mitzugeben, welche realisiert, dass die SVG-Image bei True die vordefinierte Grösse annimmt!?
Das ist schon ohne weiteres möglich: Wenn Stretch auf False steht, dann wird das Bild in Originalgröße gezeichnet.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#87

Re: Vektor Format anzeigen/drucken

  Alt 21. Nov 2007, 19:13
Zitat von xaromz:
Zitat von torud:
In den Svg-Dateien ist doch eigentlich eine Grösse der anzuzeigenden Grafik vordefiniert. Oder? Wäre es nicht sinnvoll der SVG-Image eine Autosize-Property mitzugeben, welche realisiert, dass die SVG-Image bei True die vordefinierte Grösse annimmt!?
Das ist schon ohne weiteres möglich: Wenn Stretch auf False steht, dann wird das Bild in Originalgröße gezeichnet.
Gruß
xaromz
Hm, aber wenn ich mir die TImage als Vorfahren ansehe, wäre es doch sinnvoll, wenn Autosize sich darum kümmern würde und Stretch Verwendung finden würde, wie im TImage, also das Bild an die Control-Grösse anzupassen und im Falle von Proportional = False das Bild im Ganzen zu strecken...Oder!??
Danke
Tom
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#88

Re: Vektor Format anzeigen/drucken

  Alt 21. Nov 2007, 21:02
Hallo,
Zitat von torud:
Hm, aber wenn ich mir die TImage als Vorfahren ansehe, wäre es doch sinnvoll, wenn Autosize sich darum kümmern würde und Stretch Verwendung finden würde, wie im TImage, also das Bild an die Control-Grösse anzupassen und im Falle von Proportional = False das Bild im Ganzen zu strecken...Oder!??
Erst mal: der Vorfahr von TSVGImage ist nicht TImage. Wenn Du das Verhalten von TImage haben willst, kannst Du einfach ein TImage nehmen. Die Klasse TSVGGraphic kann als Nachfahre von TGraphic in einem TImage angezeigt werden.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
torud

Registriert seit: 26. Jul 2002
Ort: Sachsen
1.198 Beiträge
 
Delphi XE5 Professional
 
#89

Re: Vektor Format anzeigen/drucken

  Alt 23. Nov 2007, 15:51
Mir war schon klar, dass das SVG-Image kein direkter Vorfahre des TImage ist, ABER ich wollte einfach zur besseren Verdeutlichung einen Vergleich der Funktionalitäten beider aufzeigen. Leider hast Du das wohl in den "falschen" Hals bekommen.

Ich möchte erstmal klarstellen, dass ich Deine Komponente einfach nur genial finde!!! Ich war schon seit einiger Zeit auf der Suche nach einer solchen Funktionalität.

Nun aber zurück zu meinem Anliegen. Warum ich nach dem Autosize in der SVGImage gefragt hatte, war eigentlich dem Hintergrund geschuldet, weil ich den Umweg über das TImage einfach sparen wollte und ich immer noch der Meinung bin, dass es so einfach sinnvoller ist, da man mit Autosize, Stretch und Proportional besser "spielen" und einstellen kann, als nur mit Stretch und Proportional. Die Zusammenhänge muss ich Dir ganz gewiss nicht aufzeigen.

Du musst es auch nicht umsetzen. Ich wollte nur wissen, ob das noch kommt, respektive, ob das nicht sinnvoll bzw. möglich wäre...Mehr nicht...
Danke
Tom
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#90

Re: Vektor Format anzeigen/drucken

  Alt 23. Nov 2007, 20:12
Hallo,
Zitat von torud:
Mir war schon klar, dass das SVG-Image kein direkter Vorfahre des TImage ist, ABER ich wollte einfach zur besseren Verdeutlichung einen Vergleich der Funktionalitäten beider aufzeigen. Leider hast Du das wohl in den "falschen" Hals bekommen.
da hab' ich Dich wohl tatsächlich mißverstanden.

Zitat von torud:
Ich möchte erstmal klarstellen, dass ich Deine Komponente einfach nur genial finde!!! Ich war schon seit einiger Zeit auf der Suche nach einer solchen Funktionalität.
Freut mich.

Zitat von torud:
Nun aber zurück zu meinem Anliegen. Warum ich nach dem Autosize in der SVGImage gefragt hatte, war eigentlich dem Hintergrund geschuldet, weil ich den Umweg über das TImage einfach sparen wollte und ich immer noch der Meinung bin, dass es so einfach sinnvoller ist, da man mit Autosize, Stretch und Proportional besser "spielen" und einstellen kann, als nur mit Stretch und Proportional. Die Zusammenhänge muss ich Dir ganz gewiss nicht aufzeigen.

Du musst es auch nicht umsetzen. Ich wollte nur wissen, ob das noch kommt, respektive, ob das nicht sinnvoll bzw. möglich wäre...Mehr nicht...
Eine "AutoSize"-Eigenschaft hat TSVGImage tatsächlich nicht. Das lässt sich aber natürlich leicht nachrüsten... so, wie ich das gerade gemacht habe .
Die neue Version gibt's auf meiner Webseite.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 9 von 10   « Erste     789 10      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz