DaVinci 3 Grafikbibliothek
Aufgabengebiet
DaVinci wird von Entwicklern von Anwendungssoftware für
Microsoft Windows (16/32-Bit) eingesetzt. Die Bibliothek umfaßt:
- Konverter zum Exportieren
und
Importieren von Grafiken in Fremdformaten (TIFF,DXF,JPEG,PNG,EPS
u.a.)
- Transformationsfunktionen ( Dithern,
Farbtiefe ändern, Metafiles in DIB umwandeln...)
- Filterfunktionen (Rotieren, Scharfzeichnen, Weichzeichnen,
Grauwertwandlung...)
- TWAIN-Scannerunterstützung mit dynamischem Binden
- API-Helferfunktionen zur einfacheren Benutzung des Windows API
- Erkennen von Strichcodes
(EAN8,EAN13,EAN2,EAN5,3-aus-9,2-aus-5 interleaved) in Bitmaps
Besondere Stärken
- Schnelle Grafikkonverter.
- Unterstützt sowohl Bitmap- als auch Vektorgrafiken.
- Besonders schnelle Floyd-Steinberg Ditherfunktionen in Assembler
realisiert.
- Geringer Speicherbedarf
Import/Exportkonverter: < 340 KByte alle Formate
Alle anderen Funktionen incl BMP Import/Export : < 150 KByte.
- Einfache Installation: Nur drei DLL-Dateien oder eine OCX-Datei,
keine
INI- oder Registrierungseinträge notwendig.
- Besonders leistungsfähige Implementierung des
DXF-Dateiformats.
- Datenimport auf Wunsch direkt ins 32-Bit DIB-Format mit hoher
Geschwindigkeit.
- Deutscher Hersteller.
- Unterstützt Multipage-TIFF Dateien.
- Unterstützt CMYK TIFF und JPEG-Dateien incl. Druck von
CMYK-Daten auf Postscript-Druckern.
- Unterstützt RGBA TIFF Dateien incl.
Alpha-Überblendfunktion.
- Unterstützt Grafiken mit 16
Bit pro Farbwert (48 Bit je Pixel) in Datenformaten TIFF und PNG.
- Sehr schnelle Routinen zum pixelweisen
bearbeiten von Bitmaps.
- Gamma-Korrekturfunktion
bei der Anzeige von Bitmaps.
Grafikkonverter zum Importieren und Exportieren von Fremdformaten
Importformate:
- Windows .BMP, .DIB
2, 16, 256 Farben, TrueColor, RLE, incl. Windows 95/NT 4.0 Formate mit
BITMAPV4HEADER
- OS/2 Bitmaps (Nicht getestet)
2, 16, 256 Farben, TrueColor
- TIFF 5.0
2, 16, 256 Farben, TrueColor, Mit LZW/Fax G3/G4
Kompression/Dekompression, Tiled Images, CMYK und RGBA-Support..., 16
Bits je Farbwert, MultiPage
- GIF
2, 16, 256 Farben
(Unisys-Lizenz für LZW-Verfahren erforderlich)
- PCX
2, 16, 256 Farben, TrueColor
- JPG (JPEG)
TrueColor, auf Wunsch automatisches Dithern auf 256 Farben,
CMYK-Unterstützung
- PNG
Portable Network Graphics
- Windows WMF (Metafile)
- EMF Enhanced Metafile
- EPS Encapsulated Postscript
- AutoCAD DXF
Autocad Drawing Exchange Format
- FLT-Filterunterstützung
Die Nutzung der Import-Filter von Microsoft Word 2.0/6.0/97 und anderen
(HPGL, DXF, CDR, SHG ...) für Ihr Programm ist möglich,
sofern
diese auf dem Anwendungsrechner bereits installiert sind.
Exportformate:
- Windows .BMP, .DIB
2, 16, 256 Farben, TrueColor
- TIFF 5.0
2, 16, 256 Farben, TrueColor, LZW/Fax G3/G4, CMYK-Erstellen, Multipage
-
JPG (JPEG)
256 Farben, TrueColor
- GIF
2, 16, 256 Farben
(Unisys-Lizenz für LZW-Verfahren erforderlich)
- PCX
2, 16, 256 Farben, TrueColor
- PNG
Portable Network Graphics
- Windows WMF
Als Ergebnis des Import-Vorgangs erhält Ihre Applikation, je nach
Wunsch, ein Handle HGLOBAL für einen globalen Speicherblock im
CF_DIB-Datenformat oder ein Handle HMETAFILE für einen Windows
Metafile bzw. HENHMETAFILE für Enhanced MetaFile. Entsprechende
Routinen zur weiteren Verarbeitung dieser Handles stehen zur
Verfügung.
DaVinci führt auf Wunsch selbst alle nötigen
Anwenderdialoge aus (Dateinamen ... Datei existiert bereits ...
Fehlermeldungen ...). Wenn ein Programm nur Metafiles oder nur Bitmaps
handhaben kann, wird die Konvertierung ins / vom jeweils anderen Format
auf Wunsch automatisch durchgeführt.
Die Ablaufsteuerung ist ausgesprochen einfach. Nur zwei Routinen (ipImportInd
und ipExportInd) genügen, um sämtliche üblichen
Arbeiten auszuführen. Während der Wartezeit wird ein
Fortschrittsanzeige-Balken angezeigt.
Der gesamte Programmcode ist in C programmiert. Headerfiles für
C++ und Borland Pascal und Delphi sind vorbereitet.
Projektsteuerungsdateien liegen im Format von Borland C++ 3.1, Borland
C++ 4.x, Delphi 1/2 und Borland Pascal vor. Für Delphi ist eine
VCL-Komponente enthalten. Eine Active X-Komponente ist ebenfalls
enthalten.
Transformationsfunktionen
- Dithern von DIBs mit 4, 8, 16, 24 oder 32 Bit Farbtiefe auf 1
Bit
Farbtiefe (Floyd-Steinberg-Verfahren in sehr schneller Implementierung).
- Dithern von DIBs mit 8, 16, 24 oder 32 Bit Farbtiefe auf 4 Bit
Farbtiefe (Floyd-Steinberg-Verfahren in sehr schneller Implementierung).
- Dithern von DIBs mit 16,32 oder 24 Bit Farbtiefe auf 8 Bit
Farbtiefe (Floyd-Steinberg-Verfahren in sehr schneller Implementierung).
- Schnelles Konvertieren von DIBs beliebiger Farbtiefe in DIBs mit
32-Bit Farbtiefe.
- Drehen von DIBs um beliebige Winkel, in 1/10 Grad Schritten.
- Drehen von Metafiles und Enhanced MetaFiles um 90,-90 und
180°.
- Stauchen/Dehnen ohne Verwendung des Windows GDI.
- SplineLine-Funktion zieht Kurven anhand von Stützpunkten.
- Gamma-Korrektur.
Filterfunktionen
- Allgemeine Filterung mit Matrixmultiplikation (für Effekte
wie Weichzeichnen, Scharfzeichne, Helligkeit, Kontrast uvm.).
- Allgemeine DIB-Transformationsunterstützung
überführt eine Quell-Dib in eine Ziel-DIB mit Beeinflussung
von Farbtiefe, Koordinatentransformation und Farbtransformation durch
Callback-Funktionen.
- ScaleToGray-Funktion erreicht hervorragende
Darstellungsqualität beim Verkleinern von Grafiken durch
Erhöhen der Farbtiefe (z.B. Monochrom in Grauwerte).
- Scharf/Weichzeichnen.
- Umwandlung in schwarz-weiß.
TWAIN-Scannerunterstützung
- TWAIN Scanner-Unterstützung erlaubt das Ansprechen von
TWAIN-kompatiblen Flachbettscanner, digitalen Kameras etc. aus dem
Anwendungsprogramm.
- Die TWAIN-Unterstützung wird ohne Ihr Zutun dynamisch
gebunden. Ihr Programm läuft automatisch, auch wenn kein
TWAIN-kompatibler Scanner installiert ist.
Windows-API-Helferfunktionen
- Bitmap aus DIB *) erstellen.
- Farbpalette aus DIB *) erstellen.
- DIB Ausgabe wie BitBlt / StretchBitBlt.
- Speichern/Laden von DIB *) in/aus Dateien.
- Laden von DIB *) aus Ressourcen, um Grafiken mit 256 Farben zu
unterstützen.
- DIB aus Bitmap und Farbpalette erstellen.
CMYK-Unterstützung
- Import von CMYK-Daten aus TIFF, JPEG und BMP, Export als TIFF
oder BMP.
- Umwandlung von CMYK-Bitmaps in RGB-Bitmaps.
- Transformationsfunktionen (Scharfzeichnen, Drehen,
Gamma-Korrektur usw.).
- Drucken von CMYK-Daten auf PostScript-Druckern ohne
Qualitätsverlust.
- Pixelweise Bearbeitung von CMYK-Bitmaps mit CMYK oder RGB-Daten.
- Kopierfunktion zwischen RGB und CMYK-Bitmaps (StretchBlt).
- Imagine-Fensterklasse abstrahiert die Anwendung von den
Detailproblemen.
DaVinci Beispielprogramme im Quellcode
| Umgebung |
Beschreibung |
| WINAPI |
Windows API und C Beispielprogramm |
| VB4 |
Visual Basic 4 Beispielprogramm basierend auf OCX |
| VB5 |
Visual Basic 5 und 6 Beispielprogramm basierend auf OCX |
| DELPHI |
Borland Delphi Beispielprogramm Delphi 1.x und 2.0 Projekt |
| MFC |
Microsoft Foundation Classes Beispielprogramm |
| OWL |
Borland OWL 2.x C++ Klassenbibliothek Beispielprogramm |
| GIFOPT |
WindowsAPI und C Beispielprogramm Konsolmodus |
WINAPI kann Dateien der von DaVinci unterstützten
Grafikformate lesen und speichern, zusätzlich auch drucken und die
internte Handhabung trennt detailliert nach Bitmapformaten und
Metafile-Formaten, was für Metafile-Formate zu erheblichem
Qualitätsgewinn führt. Zusätzliche Funktionen enthalten
Spiegeln, Drehen, Stauchen, Vergrößern, Anzeige von
Metafiles
weiß auf Schwarz, Benutzung der Zwischenablage, Drag&Drop
uvm.
MFC kann dagegen nur Bitmap-Datenformate importieren und
exportieren, Metafile-Dateien werden in Bitmaps konvertiert.
DAVDEMO kann eine Grafik in einem der von DaVinci
unterstützten Formate lesen, anzeigen und in einem der
unterstützten Formate wieder exportieren. Die programminterne
Handhabung erfolgt dabei immer als Device-Dependend-Bitmap.
Farbpaletten
(256 Farben) und scrollen werden unterstützt.
GIFOPT liest eine Grafik in einem der von DaVinci
unterstützen Grafikformate, optimiert ihre Darstellung und
schreibt
eine GIF-Datei mit minimierter Dateigröße.
Beachten Sie auch die Unit GETDIB.PAS und das Beispiel GETTEST.PAS.
Sie zeigen wie DIB-Daten im Pascal-Anwendungsprogramm angesprochen
werden.
DavDemo ist ein Beispielprogramm für die Verwendung von DaVinci
in Applikationen. Das Programm steht sowohl in C++ als auch in Delphi
und Borland Pascal, jeweils in OWL-Codierung zur Verfügung. (OWL
1.x und OWL 2.x bzw. VCL). DavDemo kann eine Grafik in einem der von
DaVinci unterstützten Format lesen, anzeigen und in einem der
unterstützten Formate wieder exportieren. Die programminterne
Handhabung erfolgt dabei als Device-Dependend-Bitmap. Farbpaletten (256
Farben) und Rollbalken werden unterstützt.
Die Fachpresse zu DaVinci
| PC-Magazin 11/97 S. 45 |
Grafikwertstatt für wenig Geld
[...] Besonders erwähnenswert ist, dass die Bibliothek
neben Pixelgrafiken auch die Verarbeitung von Vektorformaten
unterstützt.[...]
|
Demonstrationsfassungen
Siehe auch

Letzte News
- BarVision
Fehlerkorrektur PZN-Prüfsumme
(16. April 2008)
- DaVinci 4
neue Alphaversion
(12. November 2004)