UNPKG

@cantoo/pdf-lib

Version:

Create and modify PDF files with JavaScript

53 lines (42 loc) 1.16 kB
import PDFDict from './PDFDict'; import PDFStream from './PDFStream'; import PDFContext from '../PDFContext'; import { arrayAsString } from '../../utils'; import { CipherTransform } from '../crypto'; class PDFRawStream extends PDFStream { static of = ( dict: PDFDict, contents: Uint8Array, transform?: CipherTransform, ) => new PDFRawStream(dict, contents, transform); contents: Uint8Array; readonly transform?: CipherTransform; private constructor( dict: PDFDict, contents: Uint8Array, transform?: CipherTransform, ) { super(dict); this.contents = contents; this.transform = transform; } asUint8Array(): Uint8Array { return this.contents.slice(); } clone(context?: PDFContext): PDFRawStream { return PDFRawStream.of(this.dict.clone(context), this.contents.slice()); } getContentsString(): string { return arrayAsString(this.contents); } getContents(): Uint8Array { return this.contents; } getContentsSize(): number { return this.contents.length; } updateContents(contents: Uint8Array): void { this.contents = contents; } } export default PDFRawStream;