AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

Ein Thema von renekr · begonnen am 26. Sep 2006 · letzter Beitrag vom 6. Okt 2006
Antwort Antwort
renekr

Registriert seit: 27. Feb 2005
Ort: Karlsbad
534 Beiträge
 
Delphi 2007 Enterprise
 
#1

Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 26. Sep 2006, 23:52
Hallo,

Hoffe mir kann jemand schnell einen guten Tipp geben?!

Ich habe über eine Barcode Komponenten Barcodes erstellt als BMP Files ( 10000 stück ).
Größe 40 mm auf 8 mm

Soweit sogut.

Nun ist mein Problem das ich bei dem Barcode nur den Code habe und nicht die Klarschrift weils vom Platz und von der Komponente nicht anderst ging( Hauptsächlich vom Platz )

Nun will ich zu den BMP auf die Rechte Seite den Text als Klarschrift dazupinseln!
Dafür muss ich aber das BMP nach rechts erweitern,also nicht stretchen!!

Geht das?

Ich kann es auch früher machen wo die BMP noch nicht existiert und alles in ein Image laden oder so.
Also es muss nicht zwingend über das BMP File sein.
Ich will nur am Schluss ein File,das ev. max. 50*8mm ist und der Code max 40 und die 10mm auf der Rechten seite sollte dann die Klarschrift sein.

Erstellt habe ich den Barcode mit:
SourceForge

Danke
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 27. Sep 2006, 00:21
Du kannst ja ein neues BMP erzeugen mit der gewünschten Größe und dann das bestehende in das neue kopieren.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Sunlight7
Sunlight7

Registriert seit: 17. Sep 2006
Ort: Sonnensystem, Zentral
1.522 Beiträge
 
Delphi 5 Standard
 
#3

Re: Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 27. Sep 2006, 00:22
Mach ein neues Bitmap in der gleichen Höhe, der neuen Breite, mal das alte darauf und speichere es in eine neue Datei, damit das Orignal keinen Schaden nimmt, falls was schief läuft.

Edit: Roter Kasten, sag mal funktionierst Du mit langsamen Modems nicht?
Windows: Ja - Microsoft: Nein -> www.ReactOS.org
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 27. Sep 2006, 07:27
Du kannst das bestehende Bitmap einfach erweitern indem du "Bitmap.Width" bzw. "Bitmap.Height" bzw. "Bitmap.SetSize" setzt/aufrufst.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
renekr

Registriert seit: 27. Feb 2005
Ort: Karlsbad
534 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 27. Sep 2006, 09:32
Hi,Vielen Dank für die Tips.
Hat ev. jemand ein bisschen Beispiel Code?

Wäre sehr dankbar,weil mir fehlt die Zeit um viel zu testen und mit Canvas habe ich fast noch nix gemacht.

Also es gibt ja einige Möglichkeiten:

Ich erzeuge einen Barcode mit code :
Delphi-Quellcode:
StBarCode1.Code:=edit1.text;
StBarCode1.BarCodeType:=bcCode128
StBarCode1.SaveToFile('C:\BC\1\'+StBarCode1.code+'.bmp');
Ich kann das Bild nun in eine Var tun und bearbeiten und wenn alles fertig ist speichern!

Danke
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 27. Sep 2006, 10:11
dann erstellst du einfach ein TBitmap und rufst LoadFromFile auf. Setzt die Größe und gibst mit Canvas.Textout den gewünschten Text auf der Canvas aus. Danach speicherst du das Bild wieder (es wäre natürlich sinnvoller den Barcode nicht in eine Datei zu speichern sondern in einen Stream und das Bitmap von da wieder zu laden)
Delphi-Quellcode:
var
  lBitmap : TBitmap;
  lTextWidth: Integer;
begin
  lBitmap := TBitmap.Create;
  lBitmap.LoadFromFile('C:\BC\1\'+StBarCode1.code+'.bmp');
  lTextWidth := lBitmap.Canvas.TextWidth('Dein Text');
  lBitmap.Width := lBitmap.Width + lTextWidth;
  lBitmap.Canvas.TextOut(lBitmap.Width - lTextWidth, 0, 'Dein Text');
  lBitmap.SaveToFile('C:\BC\1\'+StBarCode1.code+'.bmp');
  lBitmap.Free;
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
renekr

Registriert seit: 27. Feb 2005
Ort: Karlsbad
534 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 27. Sep 2006, 10:33
Hi,
man vielen Dank.
Ich habe es mittlerwiele mit Paintbox und a bisserl umständlicher gemacht.

Anbei das Resultat

danke
Angehängte Grafiken
Dateityp: bmp ka1000001_904.bmp (24,2 KB, 25x aufgerufen)
Dateityp: bmp ka0000001neuneu_120.bmp (22,0 KB, 20x aufgerufen)
  Mit Zitat antworten Zitat
renekr

Registriert seit: 27. Feb 2005
Ort: Karlsbad
534 Beiträge
 
Delphi 2007 Enterprise
 
#8

Re: Bitmap und Canvas Zeichnen Dringend Hilfe !!!!!

  Alt 6. Okt 2006, 18:37
Hi,
ich bräuchte nochmals euren Rat:
Ich habe das Thema das ich die Bilder als Schwarz Weiß und mit mehr DPI erstellen muss.
Der Druck ist mit leichten Pixeln behaftet.

Besteht da die Chance es zu machen?

danke.
  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 13:21 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