saveFile method
Saves the modified pdfDoc
either with or without a timestamp.
Implementation
Future<File?> saveFile({
bool addTimestap = false,
required File pdfFile,
required PdfDocument pdfDoc,
}) async {
try {
final output = await getTemporaryDirectory();
final String originalName = pdfFile.path.split('/').last.split('.').first;
String savedPath = "";
if (addTimestap) {
final String timestamp =
DateTime.now().millisecondsSinceEpoch.toString();
savedPath = '${output.path}/${originalName}_$timestamp.pdf';
} else {
savedPath = '${output.path}/$originalName.pdf';
}
final file = File(savedPath);
// Use streaming save method
await _saveDocumentWithStreaming(pdfDoc, file);
return file;
} catch (e) {
dev.log('Error saving file: $e');
rethrow;
} finally {
pdfDoc.dispose();
}
}