David PHAM-VAN

Mark some internal functions as protected

... ... @@ -93,8 +93,8 @@ class PdfAnnot extends PdfObject {
///
/// @param os OutputStream to send the object to
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
params["/Subtype"] = PdfStream.string(subtype);
params["/Rect"] = PdfStream.string(
... ...
... ... @@ -24,8 +24,8 @@ class PdfArrayObject extends PdfObject {
PdfArrayObject(PdfDocument pdfDocument, this.values) : super(pdfDocument);
@override
void writeContent(PdfStream os) {
super.writeContent(os);
void _writeContent(PdfStream os) {
super._writeContent(os);
os.putStringArray(values);
}
... ...
... ... @@ -61,8 +61,8 @@ class PdfBorder extends PdfObject {
/// @param os OutputStream to send the object to
@override
void writeContent(PdfStream os) {
super.writeContent(os);
void _writeContent(PdfStream os) {
super._writeContent(os);
var data = List<PdfStream>();
data.add(PdfStream.string("/S"));
... ...
... ... @@ -38,8 +38,8 @@ class PdfCatalog extends PdfObject {
/// @param os OutputStream to send the object to
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
params["/Pages"] = pdfPageList.ref();
... ...
... ... @@ -130,7 +130,7 @@ class PdfDocument {
/// completion. It is up to the caller to close the stream.
///
/// @param os OutputStream to write the document to
void write(PdfStream os) {
void _write(PdfStream os) {
PdfOutput pos = PdfOutput(os);
// Write each object to the [PdfStream]. We call via the output
... ... @@ -145,7 +145,7 @@ class PdfDocument {
List<int> save() {
PdfStream os = PdfStream();
write(os);
_write(os);
return os.output();
}
}
... ...
... ... @@ -41,8 +41,8 @@ class PdfFont extends PdfObject {
/// @param os OutputStream to send the object to
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
params["/Subtype"] = PdfStream.string(subtype);
params["/Name"] = PdfStream.string(name);
... ...
... ... @@ -26,8 +26,8 @@ class PdfFontDescriptor extends PdfObject {
: super(ttfFont.pdfDocument, "/FontDescriptor");
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
params["/FontName"] = PdfStream.string(ttfFont.baseFont);
params["/FontFile2"] = file.ref();
... ...
... ... @@ -38,8 +38,8 @@ class PdfFormXObject extends PdfXObject {
}
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
// Now the resources
/// This holds any resources for this FormXObject
... ...
... ... @@ -77,7 +77,7 @@ class PdfImage extends PdfXObject {
}
@override
void prepare() {
void _prepare() {
// write the pixels to the stream
// print("Processing image ${img.width}x${img.height} pixels");
... ... @@ -101,7 +101,7 @@ class PdfImage extends PdfXObject {
buf.putBytes(out);
super.prepare();
super._prepare();
}
/// Get the name
... ...
... ... @@ -34,8 +34,8 @@ class PdfInfo extends PdfObject {
/// @param os OutputStream to send the object to
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
if (author != null) params["/Author"] = PdfStream.text(author);
if (creator != null) params["/Creator"] = PdfStream.text(creator);
... ...
... ... @@ -50,16 +50,16 @@ class PdfObject {
/// it's Kids, as they will be written by the calling routine.
///
/// @param os OutputStream to send the object to
void write(PdfStream os) {
prepare();
writeStart(os);
writeContent(os);
writeEnd(os);
void _write(PdfStream os) {
_prepare();
_writeStart(os);
_writeContent(os);
_writeEnd(os);
}
/// Prepare the object to be written to the stream
@mustCallSuper
void prepare() {}
void _prepare() {}
/// The write method should call this before writing anything to the
/// OutputStream. This will send the standard header for each object.
... ... @@ -67,11 +67,11 @@ class PdfObject {
/// Note: There are a few rare cases where this method is not called.
///
/// @param os OutputStream to write to
void writeStart(PdfStream os) {
void _writeStart(PdfStream os) {
os.putString("$objser $objgen obj\n");
}
void writeContent(PdfStream os) {
void _writeContent(PdfStream os) {
if (params.length > 0) {
os.putDictionary(params);
os.putString("\n");
... ... @@ -84,7 +84,7 @@ class PdfObject {
/// Note: There are a few rare cases where this method is not called.
///
/// @param os OutputStream to write to
void writeEnd(PdfStream os) {
void _writeEnd(PdfStream os) {
os.putString("endobj\n");
}
... ...
... ... @@ -38,8 +38,8 @@ class PdfObjectStream extends PdfObject {
List<int> _data;
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
if (pdfDocument.deflate != null) {
_data = pdfDocument.deflate(buf.output());
... ... @@ -57,8 +57,8 @@ class PdfObjectStream extends PdfObject {
}
@override
void writeContent(PdfStream os) {
super.writeContent(os);
void _writeContent(PdfStream os) {
super._writeContent(os);
os.putString("stream\n");
os.putBytes(_data);
... ...
... ... @@ -82,8 +82,8 @@ class PdfOutline extends PdfObject {
/// @param os OutputStream to send the object to
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
// These are for kids only
if (parent != null) {
... ...
... ... @@ -49,7 +49,7 @@ class PdfOutput {
if (ob is PdfInfo) infoID = ob;
offsets.add(PdfXref(ob.objser, os.offset));
ob.write(os);
ob._write(os);
}
/// This closes the Stream, writing the xref table
... ...
... ... @@ -76,8 +76,8 @@ class PdfPage extends PdfObject {
/// @param os OutputStream to send the object to
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
// the /Parent pages object
params["/Parent"] = pdfDocument.pdfPageList.ref();
... ...
... ... @@ -31,8 +31,8 @@ class PdfPageList extends PdfObject {
PdfPage getPage(int page) => pages[page];
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
params["/Kids"] = PdfStream()..putObjectArray(pages);
params["/Count"] = PdfStream.intNum(pages.length);
... ...
... ... @@ -74,8 +74,8 @@ class PdfTtfFont extends PdfFont {
}
@override
void prepare() {
super.prepare();
void _prepare() {
super._prepare();
params["/FirstChar"] = PdfStream.intNum(_charMin);
params["/LastChar"] = PdfStream.intNum(_charMax);
... ...
import 'dart:io';
import 'dart:math';
import 'dart:typed_data';
import 'package:pdf/pdf.dart';
import 'package:test/test.dart';
import 'package:vector_math/vector_math_64.dart';
void main() {
test('Pdf', () {
var pdf = PdfDocument();
var page = PdfPage(pdf, pageFormat: const PdfPageFormat(500.0, 300.0));
page.annotations.add(PdfAnnot.annotation(page, "Hello", PdfRect(100.0, 100.0, 50.0, 50.0)));
var file = File('annot.pdf');
file.writeAsBytesSync(pdf.save());
});
}
... ...