https://github.com/baslr/node-pdf-write-page
just write text in different color, font, and size to a existing pdf and save the result
https://github.com/baslr/node-pdf-write-page
Last synced: over 1 year ago
JSON representation
just write text in different color, font, and size to a existing pdf and save the result
- Host: GitHub
- URL: https://github.com/baslr/node-pdf-write-page
- Owner: baslr
- Created: 2015-05-05T13:27:34.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2015-11-20T13:46:14.000Z (over 10 years ago)
- Last Synced: 2025-02-23T07:46:18.098Z (over 1 year ago)
- Language: CoffeeScript
- Size: 226 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
just write text in different color, font, and size to a existing pdf and save the result
### API
Example:
```coffeescript
pdf = require 'pdf-write-page'
pdf {in:'test_unmodified.pdf', out:'test_modified.pdf', pageNumber:0}
.write 10, 0, 'A'
.write 10, 14, 'B'
.cfg {size:60}
.write 10, 28, 'C'
.restoreCfg()
.write 100, 100, 'D'
.end()
```
`end` also saves to `out` path.
page offset is bottom, left (x = 0, y = 0)
#### .write()
writes some text
.write(x, y, text)
#### .image()
add an image (jpg, pdf, tiff) to the pdf
copied from
Optionally there's a 4th parameter which is an options object. The object may have the following properties, to modify the default image placement behaviour:
* `index` - for multi-page image formats (tiff, PDF), `index` determines the page to show. Default is the first image in the collection.
* `transformation` - transformation method. Can be either a array or an object. If it is a array, then transformation will be a 6 numbers matrix, allowing you to scale, rotate, translate or whatnot. If it is an object, than it is meant for defining an image fitting behaviour. You will define bounding with/height, and the module will scale the image in accordance. the object may have the following attributes:
* `width` - required, width of bounding box
* `height` - required, height of bounding box
* `proportional` - boolean, should the fit method maintain the image proportions?
* `fit` - either `always` or `overflow`. If `always` Fit may always happen scaling up or down. If `overflow` fit will scale only if the image dimensions overflow the box.
example:
```coffeescript
.image(x, y, path, opts)
```
#### .page()
set the current page that is modified
Pagecount starts as 0
exmaple:
```coffeescript
.page(1) # update page 2
```
#### .cfg()
options:
```coffeescript
fontPath : ''
size : 14
colorspace : 'gray'
color : 0x00
```