pdf:transformationexamples
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
pdf:transformationexamples [2015/04/02 17:46] – [no transformation] christian | pdf:transformationexamples [2015/04/02 18:10] – [flip diagonally] christian | ||
---|---|---|---|
Line 22: | Line 22: | ||
page saveAndShowAs: | page saveAndShowAs: | ||
</ | </ | ||
+ | |||
+ | {{demo10_transformationsnone.pdf}} | ||
===== flip vertically ===== | ===== flip vertically ===== | ||
- | "x -> x , y -> -y | + | **x -> x , y -> -y** |
- | In this example the matrix is coded manually. | + | |
- | It can also be coded as ' | + | |
- | and ' | + | |
- | page := Graphics.PDF.Page | + | |
- | newInBounds: | + | |
- | colorspace: | + | |
- | render: [:renderer ¦ | + | |
- | renderer concat: (Matrix scale: 1 @ -1). | + | |
- | renderer moveTo: -100 @ 0; lineTo: 100 @ 0; stroke. | + | |
- | renderer moveTo: 0 @ -100; lineTo: 0 @ 100; stroke. | + | |
- | renderer textObjectDo: | + | |
- | renderer setFont: #Helvetica size: 1. | + | |
- | renderer textMatrix: #(4 0 0 -4 50 50); showString: '(50 50)' | + | |
- | renderer textMatrix: #(2 0 0 -2 -50 50); showString: '(-50 50)' | + | |
- | renderer textMatrix: #(2 0 0 -2 50 -50); showString: '(50 -50)' | + | |
- | renderer textMatrix: #(2 0 0 -2 -50 -50); showString: '(-50 -50)' | + | |
- | page saveAndShowAs: | + | |
+ | In this example the matrix is coded manually. | ||
+ | It can also be coded as <code smalltalk> | ||
+ | and <code smalltalk> | ||
+ | |||
+ | <code smalltalk> | ||
+ | page := Graphics.PDF.Page | ||
+ | newInBounds: | ||
+ | colorspace: DeviceRGB new | ||
+ | render: [:renderer ¦ | ||
+ | renderer concat: (Matrix scale: 1 @ -1). | ||
+ | renderer moveTo: -100 @ 0; lineTo: 100 @ 0; stroke. | ||
+ | renderer moveTo: 0 @ -100; lineTo: 0 @ 100; stroke. | ||
+ | renderer textObjectDo: | ||
+ | renderer setFont: #Helvetica size: 1. | ||
+ | renderer textMatrix: #(4 0 0 -4 50 50); showString: '(50 50)'. | ||
+ | renderer textMatrix: #(2 0 0 -2 -50 50); showString: '(-50 50)'. | ||
+ | renderer textMatrix: #(2 0 0 -2 50 -50); showString: '(50 -50)'. | ||
+ | renderer textMatrix: #(2 0 0 -2 -50 -50); showString: '(-50 -50)' | ||
+ | page saveAndShowAs: | ||
+ | </ | ||
+ | |||
+ | {{demo10a_transformationsflipvertically.pdf}} | ||
===== flip horizontally ===== | ===== flip horizontally ===== | ||
Line 61: | Line 68: | ||
renderer textMatrix: #(-2 0 0 2 -50 -50); showString: '(-50 -50)' | renderer textMatrix: #(-2 0 0 2 -50 -50); showString: '(-50 -50)' | ||
page saveAndShowAs: | page saveAndShowAs: | ||
+ | |||
+ | {{demo10b_transformationsfliphorizontally.pdf}} | ||
===== flip diagonally ===== | ===== flip diagonally ===== | ||
- | "x -> -x , y -> -y" | + | <code smalltalk> |
- | page := Graphics.PDF.Page | + | "x -> -x , y -> -y" |
- | newInBounds: | + | page := Graphics.PDF.Page |
- | colorspace: DeviceRGB new | + | newInBounds: |
- | render: [:renderer ¦ | + | colorspace: DeviceRGB new |
- | renderer concat: (Matrix scale: -1 @ -1). | + | render: [:renderer ¦ |
- | renderer moveTo: -100 @ 0; lineTo: 100 @ 0; stroke. | + | renderer concat: (Matrix scale: -1 @ -1). |
- | renderer moveTo: 0 @ -100; lineTo: 0 @ 100; stroke. | + | renderer moveTo: -100 @ 0; lineTo: 100 @ 0; stroke. |
- | renderer textObjectDo: | + | renderer moveTo: 0 @ -100; lineTo: 0 @ 100; stroke. |
- | renderer setFont: #Helvetica size: 1. | + | renderer textObjectDo: |
- | renderer textMatrix: #(-4 0 0 -4 50 50); showString: '(50 50)' | + | renderer setFont: #Helvetica size: 1. |
- | renderer textMatrix: #(-2 0 0 -2 -50 50); showString: '(-50 50)' | + | renderer textMatrix: #(-4 0 0 -4 50 50); showString: '(50 50)' |
- | renderer textMatrix: #(-2 0 0 -2 50 -50); showString: '(50 -50)' | + | renderer textMatrix: #(-2 0 0 -2 -50 50); showString: '(-50 50)' |
- | renderer textMatrix: #(-2 0 0 -2 -50 -50); showString: '(-50 -50)' | + | renderer textMatrix: #(-2 0 0 -2 50 -50); showString: '(50 -50)' |
- | page saveAndShowAs: | + | renderer textMatrix: #(-2 0 0 -2 -50 -50); showString: '(-50 -50)' |
+ | page saveAndShowAs: | ||
+ | </ | ||
+ | {{demo10c_transformationsflipdiagonal.pdf}} | ||
===== flip vertically and located origin in upper left corner ===== | ===== flip vertically and located origin in upper left corner ===== | ||
- | "This is the more common layout used for reports" | + | <code smalltalk> |
- | page := Graphics.PDF.Page | + | "This is the more common layout used for reports" |
- | newInBounds: | + | page := Graphics.PDF.Page |
- | colorspace: DeviceRGB new | + | newInBounds: |
- | render: [:renderer ¦ | + | colorspace: DeviceRGB new |
- | renderer concat: (Matrix scale: 1 @ -1). | + | render: [:renderer ¦ |
- | renderer textObjectDo: | + | renderer concat: (Matrix scale: 1 @ -1). |
- | renderer setFont: #Helvetica size: 1. | + | renderer textObjectDo: |
- | renderer textMatrix: #(2 0 0 -2 10 10); showString: '(10 10)'. | + | renderer setFont: #Helvetica size: 1. |
- | renderer textMatrix: #(2 0 0 -2 10 20); showString: '(10 20)' | + | renderer textMatrix: #(2 0 0 -2 10 10); showString: '(10 10)'. |
- | renderer textMatrix: #(2 0 0 -2 10 30); showString: '(10 30)' | + | renderer textMatrix: #(2 0 0 -2 10 20); showString: '(10 20)' |
- | renderer textMatrix: #(2 0 0 -2 10 40); showString: '(10 40)' | + | renderer textMatrix: #(2 0 0 -2 10 30); showString: '(10 30)' |
- | renderer textMatrix: #(2 0 0 -2 20 10); showString: '(20 10)'. | + | renderer textMatrix: #(2 0 0 -2 10 40); showString: '(10 40)' |
- | renderer textMatrix: #(2 0 0 -2 20 20); showString: '(20 20)' | + | renderer textMatrix: #(2 0 0 -2 20 10); showString: '(20 10)'. |
- | renderer textMatrix: #(2 0 0 -2 20 30); showString: '(20 30)' | + | renderer textMatrix: #(2 0 0 -2 20 20); showString: '(20 20)' |
- | renderer textMatrix: #(2 0 0 -2 20 40); showString: '(20 40)' | + | renderer textMatrix: #(2 0 0 -2 20 30); showString: '(20 30)' |
- | page saveAndShowAs: | + | renderer textMatrix: #(2 0 0 -2 20 40); showString: '(20 40)' |
+ | page saveAndShowAs: | ||
+ | </ | ||
+ | {{demo10d_transformationsflipverticallytranslateorigin.pdf}} |
/var/www/virtual/code4hl/html/dokuwiki/data/pages/pdf/transformationexamples.txt · Last modified: 2015/04/02 18:12 by christian