AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Vektor Format anzeigen/drucken

Vektor Format anzeigen/drucken

Ein Thema von Gruber_Hans_12345 · begonnen am 5. Nov 2007 · letzter Beitrag vom 24. Nov 2007
Antwort Antwort
Seite 2 von 10     12 34     Letzte » 
xaromz

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

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 15:32
Hallo,

das Drucken ist ein Problem, weil der Drucker nicht auf Pixel eingestellt ist. Hier musst Du den Umweg über GDI+ gehen:
Delphi-Quellcode:
var
  Bounds: TGPRectF;
  Graphics: TGPGraphics;
begin
  Printer.BeginDoc;
  Bounds.X := 0;
  Bounds.Y := 0;
  Bounds.Width := Printer.PageWidth;
  Bounds.Height := Printer.PageHeight;

  Graphics := TGPGraphics.Create(Printer.Canvas.Handle);
  try
    Graphics.SetPageUnit(UnitPixel); // <-- Das hier schaltet die Einheit um
    Graphics.SetSmoothingMode(SmoothingModeAntiAlias);
    SVG.PaintTo(Graphics, Bounds, nil, 0);
  finally
    Graphics.Free;
  end;
  Printer.EndDoc;
end;
Die zusätzlichen Rects sind Update-Regions und werden normalerweise nicht benötigt. Die sind nur für das optimierte Zeichnen in Windows vorhanden.

Zitat von Gruber_Hans_12345:
hmmm, gibt es bei Texte irgendetwas zu beachten?

habe mit Inkscape mal ein SVG erzeugt, die Linien bekomme ich rein, aber die Texte nicht?

werde es dann mal mit CorelDraw probieren

[edit]mit Coreldraw kommend ie Texte auch mal gut an (ob die 100% passen, werde ich erst sehen, wenn ich das drucken mal im griff habe)
Wenn Du da Probleme hast (ich verwende immer Illustrator ab Version CS2), dann lad' einfach 'mal ein Bild hoch und ich guck drüber.

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
 
#12

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 16:09
danke für die hilfe, also die seite kann ich ausdrucken, allerdings muß ich die ganze seite etwas verschieben, da der drucker ränder hat, und ich das bild an position -4, -4 drucken muß zb

Die erste seite druckt nun das SVG richtig aus (allerdings noch verschoben)
meine zweite seite wäre ein versuch, das ganze zuerst in ein MetaFile zu schreiben und dieses dann etwas versetzt an den drucker zu schicken, allerdings kommt da nur eine leere seite raus

Delphi-Quellcode:
        temp.BeginDoc;
        grPrinter := TGPGraphics.Create(temp.Canvas.Handle);
        try
            grPrinter.SetPageUnit(UnitMillimeter);
            grPrinter.SetSmoothingMode(SmoothingModeAntiAlias);
            SVGImage1.SVG.PaintTo(grPrinter, Bounds, nil, 0);
        finally
            grPrinter.Free;
        end;
        temp.EndDoc;


        Graphics := TGPMetaFile.Create;
        SVGImage1.SVG.PaintTo(Graphics, Bounds, nil, 0);

        temp.BeginDoc;
        grPrinter := TGPGraphics.Create(temp.Canvas.Handle);
        grPrinter.SetPageUnit(UnitMillimeter);
        grPrinter.SetSmoothingMode(SmoothingModeAntiAlias);
        grPrinter.DrawImage(Graphics, -4, -4);
        grPrinter.Free;
        temp.EndDoc;

        Graphics.Free;
zu den texten, habe ein problem : und zwar stimmt die positionierung nicht, er schreibt texte teilweise übereinander bzw zu weit zusammen

wenn du dir mal das beispiel anguckst (beim text : Firmenbuchgericht bzw den Teil mit dem flughafen)
Angehängte Dateien
Dateityp: zip grafik1_207.zip (13,7 KB, 26x aufgerufen)
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#13

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 16:11
Bild kann nicht angezeigt werden
Markus Kinzler
  Mit Zitat antworten Zitat
Gruber_Hans_12345

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

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 16:14
Zitat von mkinzler:
Bild kann nicht angezeigt werden
ja, ich weiss, ist eine .svg datei (hab sie als .zip hinzugefügt ...)
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#15

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 16:30
Wenn du die Datei in einem Texteditor anzeigen lässt, siehst du auch warum: die y-Position ist fast identisch:
Code:
 <text x="5.8918" y="9.6632" class="fil1 fnt0">Firma GmbH</text>
  <text x="18.0433" y="9.6632" class="fil1 fnt1"> · Ein Unternehmen der Holding</text>
  <text x="5.8918" y="12.4894" class="fil1 fnt1">Strasse, Ort und eventuell Land, </text>
  <text x="61.15" y="12.4894" class="fil1 fnt1"> Tel.: haben keine, eMail: [email]office@woauchimmer.com[/email], http://www.wieauchimmer.com</text>
  <text x="5.8918" y="15.2856" class="fil1 fnt1">Geschäftsführung: möchtegerne, Sitz: neine stehe Erfüllungsort und Gerichtsstand: wo auch immer</text>
  <text x="94.7042" y="15.2856" class="fil1 fnt1">, Firmenbuchgericht: haben keines</text>
  <text x="35.4986" y="12.4894" class="fil1 fnt2">Flughafen TESTFlughafen,</text>
Markus Kinzler
  Mit Zitat antworten Zitat
Gruber_Hans_12345

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

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 16:41
Zitat von mkinzler:
Wenn du die Datei in einem Texteditor anzeigen lässt, siehst du auch warum: die y-Position ist fast identisch:
Code:
 <text x="5.8918" y="9.6632" class="fil1 fnt0">Firma GmbH</text>
  <text x="18.0433" y="9.6632" class="fil1 fnt1"> · Ein Unternehmen der Holding</text>
  <text x="5.8918" y="12.4894" class="fil1 fnt1">Strasse, Ort und eventuell Land, </text>
  <text x="61.15" y="12.4894" class="fil1 fnt1"> Tel.: haben keine, eMail: [email]office@woauchimmer.com[/email], http://www.wieauchimmer.com</text>
  <text x="5.8918" y="15.2856" class="fil1 fnt1">Geschäftsführung: möchtegerne, Sitz: neine stehe Erfüllungsort und Gerichtsstand: wo auch immer</text>
  <text x="94.7042" y="15.2856" class="fil1 fnt1">, Firmenbuchgericht: haben keines</text>
  <text x="35.4986" y="12.4894" class="fil1 fnt2">Flughafen TESTFlughafen,</text>
ja, die texte sind auch in der selben zeile, daher gleich y-positionen
an y-positinen passt auch alles, nur in x gibts die probleme, das sich die texte überschreiben z.B.: die zwei texte überschreiben sich (das , Firmenbuchgericht sollte nach dem wo auch immer stehen, aber der "," fängt schon beim 2ten m von immer an)

Code:
  <text x="5.8918" y="15.2856" class="fil1 fnt1">Geschäftsführung: möchtegerne, Sitz: neine stehe Erfüllungsort und Gerichtsstand: wo auch immer</text>
  <text x="94.7042" y="15.2856" class="fil1 fnt1">, Firmenbuchgericht: haben keines</text>

wenn man die svg mit inkscape oder corel aufmacht, dann passt alles, wie es ist

ich vermute, das hier die ausgabe des textes nicht 100% orignalgetreu ist, daher überschreiben sich die texte
Angehängte Dateien
Dateityp: zip test_141.zip (334,6 KB, 10x aufgerufen)
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
 
#17

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 16:51
Hallo,

ich habe Dein Bild mal in Opera geöffnet. Da sieht das so aus wie auf dem angehängten Screenshot.
In Illustrator überschneiden sich die Texte auch etwas, allerdings beklagt er sich auch über eine fehlende Schrift (Arial Narrow).

Nachdem ich mir Dein Bild im Quellcode angesehen habe, muss ich folgendes anmerken:
Du verwendest da einen eingebetteten Font (nämlich Arial Narrow). Das unterstützt meine Komponente bisher nicht.
Du verwendest CSS-Stylesheets. Auch das kann meine Komponente bisher nicht.

Gruß
xaromz
Miniaturansicht angehängter Grafiken
ansicht_opera_106.png  
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
 
#18

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 17:03
hallo

also bei mir ist es egal, ob ich die schriftart einbette oder nicht (da diese schriftart auf meinem rechner installiert ist, sieht der ausdruck immer gleich aus)
das mit dem css? funktioniert nicht?

bei mir zeigt er aber die schriftarten genau so an, wie die in dem css definiert wurden (Also die sachen fett, die fett sind und so weiter)
aber auch, wenn ich das ganze ohne css speichere, also die font attribute direkt in jeden text reinspeichern lasse, dann sieht das ganze so aus wie vorher

habe mal :
*) ohne CSS, direkt in die Texte als Attribute
*) Schriftart nicht eingebettet
*) Schriftart in Arial gewandelt

das resultat ist das gleiche wie vorher, er überschreibt sich texte
Angehängte Dateien
Dateityp: zip grafik1_143.zip (1,3 KB, 3x aufgerufen)
Gruss Hans

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

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

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 17:06
so, hier mal den vergleich, beides auf meinem rechner einmal mit IE7 und einmal mit der SVG Library
Miniaturansicht angehängter Grafiken
svg_lib_989.png   ie7_168.png  
Gruss Hans

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

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

Re: Vektor Format anzeigen/drucken

  Alt 5. Nov 2007, 17:30
also, das problem ist, das der text mit der SVG Lib länger wird, als er original sein sollte ....

habe mal einen screenshoot mit kontrolllinien ausgegeben ...



[edit]habe auch mal eine SVG mit Adobe Illustrater CS 2 erzeugt, aber selbes Resultat
Miniaturansicht angehängter Grafiken
svg_lib2_538.png   corel_126.png  
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 07:23 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