User Tools

Site Tools


pdf:pdf4smalltalk

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
pdf:pdf4smalltalk [2015/04/01 17:26] – [PDF4Smalltalk] christianpdf:pdf4smalltalk [2016/06/02 12:04] (current) – [Documentation] christian
Line 4: Line 4:
 PDF files can be opened and all PDF objects are available as Smalltalk objects, which can be manipulated in any way you like. Likewise, any Smalltalk PDF object (net) can be written out as conforming PDF file. PDF files can be opened and all PDF objects are available as Smalltalk objects, which can be manipulated in any way you like. Likewise, any Smalltalk PDF object (net) can be written out as conforming PDF file.
  
-This is a system library implementing the PDF specification (ISO standard PDF 32000-1:2008) in VisualWorks Smalltalk. The syntax is covered comprehensively, which means that //any// PDF file can be read and //any// PDF object can be written in a conforming way. Most of the common PDF types are modeled explicitely, while non-modeled types are represented by dictionaries.+This is a system library implementing the PDF specification (ISO standard PDF 32000-1:2008) in Cincom'VisualWorks Smalltalk in version 7.10 and up. The syntax is covered comprehensively, which means that //any// PDF file can be read and //any// PDF object can be written in a conforming way.  
 + 
 +Most of the common PDF types are modeled explicitely as Smalltalk classes, while non-modeled types are represented by dictionaries.
  
 The library code is annotated with the original descriptions and definitions from the specification, so that learning about PDF itself is well supported. The library code is annotated with the original descriptions and definitions from the specification, so that learning about PDF itself is well supported.
Line 10: Line 12:
 There is also a tool to inspect PDFs: the [[PDFExplorer]]. There is also a tool to inspect PDFs: the [[PDFExplorer]].
  
-Users of this library are programmers who need full control over any detail of PDFs.+This library is for programmers who need full control over all details of PDFs.
  
 ===== Get started ===== ===== Get started =====
  
-The slides {{esug2011_slides_pdf_in_smalltalk.pdf|"PDF in Smalltalk"}} (a talk at [[http://www.esug.org/|ESUG]] 2011), gives an overview of what this project is about.+The slides {{esug2011_slides_pdf_in_smalltalk.pdf|"PDF in Smalltalk"}} (a talk at [[http://www.esug.org/|ESUG]] 2011), give an overview of what this project is about.
  
 Load the **PDF Development** bundle from the [[StoreAccess|Cincom Public Store]] into your [[http://www.cincomsmalltalk.com/main/products/visualworks/|VisualWorks]] image. Load the **PDF Development** bundle from the [[StoreAccess|Cincom Public Store]] into your [[http://www.cincomsmalltalk.com/main/products/visualworks/|VisualWorks]] image.
Line 20: Line 22:
 Try the [[examples|demos and examples]]. Try the [[examples|demos and examples]].
  
-There is also a [[http://www.freelists.org/list/pdf4st|mailing list]]. Subscribe to get the latest news and discuss with us.+To get the latest news and to participate in discussions, subscribe to the [[http://www.freelists.org/list/pdf4st|mailing list]].
  
 ===== Documentation ===== ===== Documentation =====
Line 27: Line 29:
 The {{pdf32000_2008.pdf|PDF specification}} is vast and this implementation covers only parts of it. Topics of interest: The {{pdf32000_2008.pdf|PDF specification}} is vast and this implementation covers only parts of it. Topics of interest:
  
-  * [[PaintingAPage]] Shows how to put text on a page.+  * [[PaintingAPage|Hello World]] Shows how to put text on a page.
  
   * [[Colors]] Usage of colorspaces and colors   * [[Colors]] Usage of colorspaces and colors
 +
 +  * [[Images]] Bitmapped images in PDF
 +
 +  * [[Changing]] Changing existing PDFs
  
   * [[Implementation]] Notes the state of the implementation of the features structured along the specification chapters.   * [[Implementation]] Notes the state of the implementation of the features structured along the specification chapters.
Line 36: Line 42:
  
   * [[PackageStructure]] Describes the structure of the bundles and packages in store and explains the meaning of it.   * [[PackageStructure]] Describes the structure of the bundles and packages in store and explains the meaning of it.
 +
 +  * [[Extending]] How to add a new PDF Object to the library from the specification.
  
   * [[Porting]] Comments about issues around porting the library to another Smalltalk dialect.   * [[Porting]] Comments about issues around porting the library to another Smalltalk dialect.
Line 41: Line 49:
   * [[Examples]] Various examples of Smalltalk generated PDF documents.   * [[Examples]] Various examples of Smalltalk generated PDF documents.
  
 +Brief descriptions of the releases are documented in the [[History]] of the project.
  
 ===== References ===== ===== References =====
Line 48: Line 57:
 Bob Nemec is using the library to [[http://smalltalk-bob.blogspot.com/2012/01/pdf-report-and-law-of-demeter.html|build a report generator]]! Bob Nemec is using the library to [[http://smalltalk-bob.blogspot.com/2012/01/pdf-report-and-law-of-demeter.html|build a report generator]]!
  
-===== History ===== 
- 
-==== March 2015 ==== 
- 
-[[https://gitorious.org/|Gitorius]] is closing down. Therefore I decided to use my own webspace to host the PDF4Smalltalk documentation.  
- 
-In the last 3 years, nothing much happened except for the occasional bug fix. But recently, I am more active again.  
- 
-I am working on the ContentStream with, hopefully, leads to higher level objects like texts or graphical elements instead of a stream of graphics operators. 
- 
-Since the project is on my own server now, I hope that I will program and write a bit more... 
- 
-==== May 2012 ==== 
- 
-This project was hosted at [[http://pdf4smalltalk.origo.ethz.ch/|Origo]] until the end of Mai 2012. The wiki was recreated on [[https://gitorious.org/pdf4smalltalk|Gitorius]]. Other contents was preserved as follows: 
- 
-* The **Blog** was recreated on this wiki at [[Blog]]. Until another place is found to host the blog, the old contents is preserved here for reference. 
- 
-* The static **Forum** contents has been reposted on the discussion list and can be seen in the [[http://www.freelists.org/archive/pdf4st|archive]]. 
- 
-* The **issue tracker** was not used much... so I dropped it with the old contents. 
- 
-==== 2011 ==== 
  
-Started at Origo 
/var/www/virtual/code4hl/html/dokuwiki/data/attic/pdf/pdf4smalltalk.1427901980.txt.gz · Last modified: 2015/04/01 17:26 by christian