diff --git a/print_pdf/print_pdf.pages.inc b/print_pdf/print_pdf.pages.inc
index d7e511c21fb871c8aa306992b39a5ed66be75db3..94e83b09a0b3629c8fb50fbd8ec145eb493d7775 100644
--- a/print_pdf/print_pdf.pages.inc
+++ b/print_pdf/print_pdf.pages.inc
@@ -32,11 +32,18 @@ function print_pdf_controller() {
     $path_arr = explode('/', $alias);
     $node = node_load($path_arr[1]);
   }
-  elseif (ctype_digit($args[0])) {
-    // normal nid
-    $node = node_load($args[0]);
-  }
-
+	elseif($item = menu_get_item($path)){
+		if($item['page_callback'] == 'book_export'){
+			// get the node from book export arguments
+			$node = node_load($item['page_arguments'][1]);
+
+
+		}elseif (ctype_digit($args[0])) {
+    	// normal nid
+	    $node = node_load($args[0]);
+	  }
+	}
+	
   $pdf_filename = variable_get('print_pdf_filename', PRINT_PDF_FILENAME_DEFAULT);
   if (function_exists('token_replace') && !empty($pdf_filename) && !empty($node)) {
     $pdf_filename = token_replace($pdf_filename, 'node', $node) .'.pdf';
