VecVi - Dokumentenerstellung und -ausgabe mit VectorDrawing

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Andesdaf
Moderator
Beiträge: 2671
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Re: VecVi - Dokumentenerstellung und -ausgabe mit VectorDraw

Beitrag von Andesdaf »

Nach langen Mühen jetzt v1.10. Ich habe die gesamte Positions- und Umbruchberechnung
neu geschrieben und die Methodik dahinter geändert: beim Anzeigen einer Druckvorschau
werden jetzt nur die Elemente berechnet, die auch angezeigt werden müssen. Damit ist das
Ganze bei größeren Datenmengen nun deutlich performanter als zuvor. Ein paar Logikanpassungen
und kleine Ergänzungen sind auch dabei.

Code: Alles auswählen

;   v.1.10 (2020-07-24)
;    - completely reworked processing and drawing engine
;    - added Process()
;    - added GetBackColor() / SetBackColor()
;    - added reset possibility to SetFillColor(), SetTextColor(),
;      SetLineColor(), SetLineStyle()
;    - renamed *Page*() commands to *Section*() for clarification
;    - renamed GetRealPageCount() to GetPageCount()
;    - renamed GetRealPageStartOffset() to GetPageStartOffset()
;    - renamed *SinglePageOutput() commands to *MultiPageOutput()
;    - fixed bug in GetLineStyle()
;    - fixed various bugs in processing and drawing engine
;    - drawing of bigger documents is now much faster
Die eins weiter oben erwähnte Umsetzung für PurePDF hat nun auch noch einen
Zwilling für pbPDF von Thorsten bekommen, hier die Links:
https://raw.githubusercontent.com/hgzh/ ... PurePDF.pb
https://raw.githubusercontent.com/hgzh/ ... i_pbPDF.pb
Win11 x64 | PB 6.20
Andesdaf
Moderator
Beiträge: 2671
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Re: VecVi - Dokumentenerstellung und -ausgabe mit VectorDrawing

Beitrag von Andesdaf »

Dank PB 6.10 ist ab Version 1.13 jetzt auch unter Windows der Export direkt nach PDF und SVG möglich. Die beiden Umsetzungen für PurePDF und pbPDF entwickle ich dementsprechend nicht mehr weiter.

Code: Alles auswählen

;   v.1.11 (2022-10-11)
;    - fixed bug with pagebreak and x position reset
;   v.1.12 (2023-10-10)
;    - fixed bug causing crash when section is empty
;   v.1.13 (2024-04-02)
;    - added DuplicateSection(), DuplicateBlock()
;    - added OutputPDF()/OutputSVG() support for all OS
;    - changed OutputSVG() to require a page for output
;    - changed BeginSection() and BeginBlock() to return a handle
;      of the created section or block
;    - fixed bugs with OutputPDF() and OutputSVG()
;    - fixed another bug causing crash if section is empty
;    - removed CanvasImage output
Win11 x64 | PB 6.20
Benutzeravatar
dige
Beiträge: 1235
Registriert: 08.09.2004 08:53

Re: VecVi - Dokumentenerstellung und -ausgabe mit VectorDrawing

Beitrag von dige »

Stark! Vielen Dank Andesdaf
"Papa, ich laufe schneller - dann ist es nicht so weit."
Andesdaf
Moderator
Beiträge: 2671
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Re: VecVi - Dokumentenerstellung und -ausgabe mit VectorDrawing

Beitrag von Andesdaf »

Code: Alles auswählen

;   v.1.14 (2024-04-04)
;    - changed the output functions to have a return value
;      indicating output success
;    - fixed bugs with DuplicateBlock() and DuplicateSection()
;   v.1.15 (2024-10-03)
;    - added GetParagraphHeight()
;    - changed ParagraphCell() to return the height of the
;      new paragraph cell
;    - fixed bug with page numbering and empty sections
Win11 x64 | PB 6.20
Andesdaf
Moderator
Beiträge: 2671
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Re: VecVi - Dokumentenerstellung und -ausgabe mit VectorDrawing

Beitrag von Andesdaf »

Neue Version 1.20

Code: Alles auswählen

- added ReplaceHeader(), ReplaceFooter(), AppendHeader(), AppendFooter()
- added variable support with GetVariable(), SetVariable(), RemoveVariable()
- added named position support with GetNamedPos(), SetNamedPos(), UseNamedPos()
- added LoadFile()/SaveFile()
- added pzName parameter to ImageCell()
- added GetImageReferencePath()/SetImageReferencePath()
- changed internal image handling to load the same image only once
Außerdem hatte ich endlich Zeit und Lust, eine kleine Dokumentation zu schreiben.
Win11 x64 | PB 6.20
Antworten